为了账号安全,请及时绑定邮箱和手机立即绑定

在 PyCharm 上,我的左键和右键没有响应

在 PyCharm 上,我的左键和右键没有响应

德玛西亚99 2022-10-18 19:45:36
#enable pygame modeimport pygamepygame.init()#create screenscreen = pygame.display.set_mode((900,600))#Title + Logopygame.display.set_caption("Space Invader")icon = pygame.image.load("chicken.png")pygame.display.set_icon(icon)#Player iconplayer_icon = pygame.image.load("spaceship.png")playerX = 400playerY = 500def player(x, y):    screen.blit(player_icon, (x, y))#game looprunning = Truewhile running:    # backround colour  RGB    screen.fill((0, 0, 0))    for event in pygame.event.get():        if event.type == pygame.QUIT:            running = False            #If key pressed check wether its right or left            if event.type == pygame.KEYDOWN:                if event.key == pygame.K_LEFT:                    print("key left pressed")                if event.key == pygame.K_RIGHT:                    print("key right pressed")            if event.type == pygame.KEYUP:                if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:                    print("key stroke has benn released")    #Player change in coordinates    playerX += 0    playerY += 0    player(playerX, playerY)    pygame.display.update()在这次隔离期间,我一直在学习使用 python 进行 pygame 和游戏编程。我一直在通过观看 youtube 上的教程来做到这一点。请不要降级我上次这是我的第一个问题并获得了 2 次降级时,我已经更加努力地使我的问题变得更好。感谢您的时间。
查看完整描述

1 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

这是缩进的问题。在您的代码中,pygame.KEYDOWN仅在 event.type == pygame.QUIT. “移动”pygame.KEYDOWN事件处理:


running = True

while running:


    # backround colour  RGB

    screen.fill((0, 0, 0))


    for event in pygame.event.get():

        if event.type == pygame.QUIT:

            running = False


        # <--| INDENTATION


        #If key pressed check wether its right or left

        if event.type == pygame.KEYDOWN:

            if event.key == pygame.K_LEFT:

                print("key left pressed")

            if event.key == pygame.K_RIGHT:

                print("key right pressed")

        if event.type == pygame.KEYUP:

            if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:

                print("key stroke has benn released")


查看完整回答
反对 回复 2022-10-18
  • 1 回答
  • 0 关注
  • 120 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号