微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Pygame 随机击键

如何解决Pygame 随机击键

我正在尝试创建一个游戏,其中随机选择键并显示在屏幕上,玩家必须点击它们。如何实现对按下所需键的检查?

unic1=random.randint(0,9)
unic2=random.randint(0,9)
for event in pygame.event.get():
    if event.type == pygame.QUIT:  
        running = False
    elif event.type == pygame.KEYDOWN:
        if event.key == "pygame.K_"+ str(unic1):
            x2+=10
            unic1=random.randint(0,9)
        elif event.key != "pygame.K_" + str(unic1):
            x2-=10
            unic1=random.randint(0,9)

解决方法

pygame.key.name(event.key)

将返回键名(a、b、c、1、2、3)等。您可以使用它来测试是否按下了正确的键:

if pygame.key.name(event.key) == str(unic1):
  # the key was pressed
,

小键盘上有从 .list-header { position: sticky; top: 80px; } pygame.K_KP0 的鳕鱼。

创建密钥列表:

pygame.K_KP9

使用 random.choice 选择随机密钥:

key_list = [pygame.K_KP0,pygame.K_KP1,pygame.K_KP2,pygame.K_KP3,pygame.K_KP4
            pygame.K_KP5,pygame.K_KP6,pygame.K_KP7,pygame.K_KP8,pygame.K_KP9]

键盘事件 random_key = random.choice(key_list) KEYDOWN(参见 pygame.event 模块)创建一个带有附加属性的 pygame.event.Event 对象。按下的键可以从 KEYUP 属性(例如 keyK_RETURN )获得,K_a 属性包含一个带有附加修饰符的位集(例如 {{1} })。 mod 属性提供键盘输入的 Unicode 表示。

KMOD_LSHIFT

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。