Python 为什么运动在这个游戏中不起作用?

Python 为什么运动在这个游戏中不起作用?,python,pygame,game-physics,Python,Pygame,Game Physics,好的,游戏基本上是加载的,有我想要的背景和我想要移动的图层,但是当我使用按键时角色不移动。 有什么想法吗,伙计们?? :)您需要使用while构造来确保游戏一直运行到退出为止 此外,您还需要确保位置x和y根据击键(movex&movey`)而变化 更正代码(未测试) PS-我怀疑你需要在每次点击前刷新屏幕。阅读免费电子书(PDF) import pygame, sys, time from pygame import * pygame.init() window = pygame.displ

好的,游戏基本上是加载的,有我想要的背景和我想要移动的图层,但是当我使用按键时角色不移动。 有什么想法吗,伙计们??
:)

您需要使用
while
构造来确保游戏一直运行到退出为止

此外,您还需要确保位置
x
y
根据击键(
movex
&movey`)而变化

更正代码(未测试)

PS-我怀疑你需要在每次点击前刷新屏幕。

阅读免费电子书(PDF)
import pygame, sys, time
from pygame import *


pygame.init()
window = pygame.display.set_mode((800,600) , 0,24)
pygame.display.set_caption("Shooting Squad")
fillcolour=(255,255,255)
backG=('shooting.jpg')
player=('player.jpg')

x,y=0,0
movex,movey=0,0

for event in pygame.event.get():
    if event.type==QUIT:
        pygame.quit()
        sys.exit()
    if event.type==KEYDOWN:
        if event.key==K_LEFT:
            movex+=-1
        elif event.key==K_RIGHT:
            movex+=1
        elif event.key==K_UP:
            movey+=-1
        elif event.key==K_DOWN:
            movey+=1
x=movex
y=movey

backG=pygame.image.load('shooting.jpg')
player=pygame.image.load('player.jpg')

window.blit(backG,(0,0))
window.blit(player,(x,y)) 
pygame.display.update()
import pygame, sys, time
from pygame import *


pygame.init()
window = pygame.display.set_mode((800,600) , 0,24)
pygame.display.set_caption("Shooting Squad")
fillcolour=(255,255,255)
backG=('shooting.jpg')
player=('player.jpg')

x,y=0,0
movex,movey=0,0

backG=pygame.image.load('shooting.jpg')
player=pygame.image.load('player.jpg')

while True: # Run the game forever (until quit event)
    for event in pygame.event.get():
        if event.type==QUIT:
            pygame.quit()
            sys.exit()
        if event.type==KEYDOWN:
            if event.key==K_LEFT:
                movex+=-1
            elif event.key==K_RIGHT:
                movex+=1
            elif event.key==K_UP:
                movey+=-1
            elif event.key==K_DOWN:
                movey+=1
    x += movex # Change the position according to the movement
    y += movey

    window.blit(backG,(0,0))
    window.blit(player,(x,y))
    pygame.display.update()