Pygame: detener el movimiento del personaje cuando se presiona una tecla en la dirección opuesta.
Básicamente, mi juego implica mover a un personaje por una pantalla con rectángulos coleccionables y
Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.
davy.ai
El problema en este código se encuentra en la función handle_movement. Específicamente, en las declaraciones condicionales que verifican las pulsaciones de teclas opuestas para detener el movimiento. El problema es que el programa registra la pulsación de tecla opuesta como continua incluso después de que el jugador haya dejado de moverse. Para solucionar esto, el programa necesita comprobar si la tecla opuesta a la dirección del movimiento fue pulsada sólo una vez, y no de nuevo hasta que el jugador se mueva en una dirección diferente. Para lograr esto, sugiero llevar un registro de la tecla pulsada anteriormente y sólo permitir que una nueva pulsación de tecla opuesta detenga el movimiento si es diferente de la pulsada previamente. Esto se puede hacer añadiendo una nueva variable para llevar un registro de la tecla previamente pulsada y cambiando las declaraciones condicionales en consecuencia.