pygame – Führen Sie in Python ein zweites Mal verschiedene Vorgänge als Reaktion auf dasselbe Ereignis aus
阿神
阿神 2017-05-18 10:58:36
0
2
613

In einer Schleife reagiert die Tastatur auf das Drücken einer Taste, führt dann zwei Vorgänge aus und reagiert dann erneut auf das Drücken derselben Taste auf der Tastatur, führt jedoch nur den zweiten Vorgang aus.

for event in pygame.event.get():
    if event.type == pygame.KEYDOWN:
        if event.key == pygame.K_ESCAPE:
            sys.exit()
        elif event.key == pygame.K_RIGHT:
            tank.update1()
            tank.moving_right = True

Zum Beispiel wird in der elif-Anweisung ab dem zweiten Mal nur tank.moving_right = True ausgeführt und tank.update1() wird nicht mehr ausgeführt
Was ist zu tun

阿神
阿神

闭关修行中......

Antworte allen(2)
漂亮男人

tank里面加开关标志

elif event.key == pygame.K_RIGHT:
            tank.update1()
            tank.moving_right = True
        tank.update1()
        tank.moving_right = True
        这里封装一下,然后在tank里加成员变量
仅有的幸福

添加个标志变量

flag = True
for event in ....:
    ...
    if flag:
        tank.update1()
        flag = False
    tank.moving_right = True
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage