pygame - python中响应同一事件第二次的时候执行不同操作

查看:142
本文介绍了pygame - python中响应同一事件第二次的时候执行不同操作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

在循环中响应了键盘一个键按下,然后执行两个操作,然后再次响应键盘的同一个键的按下,但是只执行第二个操作,应该怎么处理?

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

比如elif语句中,从第二次开始,只执行tank.moving_right = True 而不再执行tank.update1()
应该怎么处理

解决方案

tank里面加开关标志

elif event.key == pygame.K_RIGHT:
            tank.update1()
            tank.moving_right = True

        tank.update1()
        tank.moving_right = True
        这里封装一下,然后在tank里加成员变量

这篇关于pygame - python中响应同一事件第二次的时候执行不同操作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆