事件 ID 和 pygame.time.set_timer
event IDs and pygame.time.set_timer
我正在尝试用 pygame 制作一个简单的基本程序。我试图让它做的一件事是在 6 秒内在屏幕上的某个随机位置创建一个随机大小的矩形。
我对所有这些都很陌生,而且我对 python 2.7 也很陌生(我在 class 学习 3.5)
到目前为止我有:
mob2_spawn = 0
def create_mob():
mob2 = pygame.Rect(random.randint(0,800), random.randint(0,600), random.randint(20,60), random.randint(30,50))
pygame.draw.rect(window_surface, mob_color, mob2)
pygame.display.update()
mob2_spawn = 1
if mob_spawn == 0:
pygame.time.set_timer(25,6000)
mob2_spawn = 1
如何将事件 ID 附加到某物?我知道 pygame.time.set_timer 中的第一个变量是事件 ID,应该是 25 到 32 之间的整数。本质上,计时器应该 运行 每 X 毫秒与该事件 ID 关联的函数正确
您需要检查事件,例如按下按钮。首先,您需要 pygame 检查是否按下了任何按钮:
keystate = pygame.key.get_pressed()
然后你需要把这个放在你的代码中,这样你的计时器就有一个事件:
pygame.time.set_timer(keystate[pygame.K_SPACE], (25, 6000))
这至少是我认为应该发生的事情,顺便说一句,我正在使用带有 space 按钮的示例。
希望对你有用!
我正在尝试用 pygame 制作一个简单的基本程序。我试图让它做的一件事是在 6 秒内在屏幕上的某个随机位置创建一个随机大小的矩形。 我对所有这些都很陌生,而且我对 python 2.7 也很陌生(我在 class 学习 3.5)
到目前为止我有:
mob2_spawn = 0
def create_mob():
mob2 = pygame.Rect(random.randint(0,800), random.randint(0,600), random.randint(20,60), random.randint(30,50))
pygame.draw.rect(window_surface, mob_color, mob2)
pygame.display.update()
mob2_spawn = 1
if mob_spawn == 0:
pygame.time.set_timer(25,6000)
mob2_spawn = 1
如何将事件 ID 附加到某物?我知道 pygame.time.set_timer 中的第一个变量是事件 ID,应该是 25 到 32 之间的整数。本质上,计时器应该 运行 每 X 毫秒与该事件 ID 关联的函数正确
您需要检查事件,例如按下按钮。首先,您需要 pygame 检查是否按下了任何按钮:
keystate = pygame.key.get_pressed()
然后你需要把这个放在你的代码中,这样你的计时器就有一个事件:
pygame.time.set_timer(keystate[pygame.K_SPACE], (25, 6000))
这至少是我认为应该发生的事情,顺便说一句,我正在使用带有 space 按钮的示例。 希望对你有用!