下午好。我是编码和使用Python的认真初学者,因为我找不到解决方案或不了解解决方案。
我正在尝试构建蛇游戏,尽管我可以朝任何方向进行矩形移动,但如果没有密钥输入,但我无法使其前进。
while True:
keyString = win.checkKey()
if keyString == "Left":
snake.move(-1,0)
elif keyString == "Right":
snake.move(1,0)
elif keyString == "Up":
snake.move(0,-1)
elif keyString == "Down":
snake.move(0,1)
elif keyString == "Escape":
win.close()
如果我在while True:
下方编写snake.move(x,y)
,它将继续前进,但不会改变方向。
任何帮助和任何技巧都将不胜感激。
非常感谢
您需要在按键后更改方向,并使用方向继续保持循环:
directions = {'up': (0, -1), 'down': (0, 1), 'left': (-1, 0), 'right': (1, 0)}
direction = direction['up'] # set a direction
while True:
snake.move(*direction) # move the snake at each loop, so it keeps moving
keyString = win.checkKey()
if keyString == "Left": # change direction upon a key pressed
direction = directions['left']
elif keyString == "Right":
direction = directions['right']
elif keyString == "Up":
direction = directions['up']
elif keyString == "Down":
direction = directions['down']
elif keyString == "Escape":
win.close()