Utilice las teclas de flecha para controlar el movimiento del pollo gordo.
1. Responda al botón (tomando el derecho como ejemplo)
actualizar: \ game_functions.py:
import...
def check_events(chicken):
"""响应按键和鼠标事件"""
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_RIGHT:
# 向右移动
chicken.rect.centerx += 1
...
Actualización: \ FatChickenWars.py:
...
# 监视键盘和鼠标事件
gf.check_events(chicken)
...
2. Se permite moverse continuamente (tomando el movimiento hacia la derecha como ejemplo)
mientras se mantienen presionadas las teclas de flecha, el pollo gordo debe moverse continuamente.
Método de implementación: agregue el atributo Moving_right y el método update () a la clase Chicken
Actualización: \ chicken.py-Class Chicken ():
...
#移动标志
self.moving_right = False
def update(self):
"""根据移动标志调整肥鸡位置"""
if self.moving_right:
self.rect.centerx += 1
Actualización: \ game_functions.py:
def check_events(chicken):
"""响应按键和鼠标事件"""
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_RIGHT:
chicken.moving_right = True
elif event.type == pygame.KEYUP:
if event.key == pygame.K_RIGHT:
chicken.moving_right = False
Actualización: \ FatChickenWars.py:
...
while True:
# 监视键盘和鼠标事件
gf.check_events(chicken)
# 更新肥鸡状态
chicken.update()
# 更新画面
gf.update_screen(fcw_settings, screen, chicken)
...
El efecto es bueno.
2021.1.21