"""
在屏幕上显示一个计时器
"""
import arcade
SCREEN_WIDTH = 800
SCREEN_HEIGHT = 600
SCREEN_TITLE = "计时器示例"
class MyGame(arcade.Window):
"""
主要应用程序类
"""
def __init__(self):
super().__init__(SCREEN_WIDTH, SCREEN_HEIGHT, SCREEN_TITLE)
self.total_time = 0.0
def setup(self):
"""
对应用程序进行设置,如设置背景颜色
"""
arcade.set_background_color(arcade.color.WHITE)
self.total_time = 0.0
def on_draw(self):
""" 使用这个函数在屏幕上重画所有对象. """
# 开始渲染
arcade.start_render()
# 计算分钟
minutes = int(self.total_time) // 60
# 通过求余计算秒数
seconds = int(self.total_time) % 60
# 合成输出字符串
output = f"Time: {minutes:02d}:{seconds:02d}"
# 画到屏幕上去
arcade.draw_text(output, 300, 300, arcade.color.BLACK, 30)
def update(self, delta_time):
"""
所有的游戏逻辑在这里编写,如角色的移动,方向的改变,碰撞检测,本例只是统计游戏时间。
"""
self.total_time += delta_time
def main():
window = MyGame()
window.setup()
arcade.run()
if __name__ == "__main__":
main()