Dentro del ciclo del juego, el juego se detiene presionando P, lo que significa que el ciclo del juego ya no se ejecuta. El problema es que después de detener este bucle, no se puede presionar P nuevamente para reanudar el bucle, ya que estaba dentro del bucle. ¿Cómo hacer que cuando se vuelva a presionar P haga que el bucle vuelva a funcionar?
12
checkInput
función diferente para el modo en pausa y el modo sin pausa, porque puede haber algunos controles que solo están disponibles en un modo u otro. LacheckInput
función para el modo en pausa podría no hacer nada más que mirar siP
se presiona y luego se configuragameIsPaused = false
, pero algunos juegos también colocan funcionalidades adicionales en la pantalla de pausa (en los años 90 era popular tener la pantalla de pausa como entrada oculta para códigos de trucos, moderna juegos como combinarlo con una pantalla de menú).checkInput
/render
/update
llamadas.Asegúrese de que presionar P cambie a otro bucle que maneja el estado del juego "En pausa" y permita volver al bucle original del juego presionando P nuevamente.
En realidad, puede poner todo esto en el bucle del juego e introducir una variable de estado, si lo desea, y en lugar de desactivar el bucle, la variable de estado alterna entre la ejecución del respectivo código específico de estado dentro del bucle.
fuente