如果你在看到我之前就问过问题,我正在制作一个tron自行车游戏,但无论如何,我现在把它作为一个双人游戏。我现在的问题是,如果一个人按下一个键,另一个方格停止移动。我知道问题发生的原因,我只是不知道如何修复它。 以下是我的一些代码:
while True:
timer.tick(60)
ticks = pygame.time.get_ticks()
for event in pygame.event.get():
if event.type == QUIT:
sys.exit()
keys = pygame.key.get_pressed()
if keys[K_w]:
if key == 'down':
key = 'down'
else:
key = 'up'
if keys[K_d]:
if key == 'left':
key = 'left'
else:
key = 'right'
if keys[K_s]:
if key == 'up':
key = 'up'
else:
key = 'down'
if keys[K_a]:
if key == 'right':
key = 'right'
else:
key = 'left'
if keys[K_LEFT]:
if key == 'right1':
key = 'right1'
else:
key = 'left1'
if keys[K_RIGHT]:
if key == 'left1':
key = 'left1'
else:
key = 'right1'
if keys[K_UP]:
if key == 'down1':
key = 'down1'
else:
key = 'up1'
if keys[K_DOWN]:
if key == 'up1':
key = 'up1'
else:
key = 'down1'
if keys[K_ESCAPE]:
sys.exit()
if key == 'up':
y -= 5
if key == 'down':
y += 5
if key == 'left':
x -= 5
if key == 'right':
x += 5
if key == 'up1':
y1 -= 5
if key == 'down1':
y1 += 5
if key == 'left1':
x1 -= 5
if key == 'right1':
x1 += 5
if x >= 1180:
x = 1180
if x <= 0:
x = 0
if y >= 780:
y = 780
if y <= 0:
y = 0
if x1 >= 1180:
x1 = 1180
if x1 <= 0:
x1 = 0
if y1 >= 780:
y1 = 780
if y1 <= 0:
y1 = 0
green = GreenSquare()
blue = BlueSquare()
screen.blit(backbuffer,(0,0))
print_text(font,0,800,"Round " + str(round))
pygame.display.update()