time-based: sub-states pause/gameover sense gate, pause_counter decrementa a 60Hz fixe amb acumulador de fase
This commit is contained in:
+16
-11
@@ -39,8 +39,8 @@ class Game {
|
||||
|
||||
private:
|
||||
// Branques de iterate() — separades per a reduir la complexitat cognitiva
|
||||
void iteratePaused();
|
||||
void iterateGameOver();
|
||||
void iteratePaused(float dt_s);
|
||||
void iterateGameOver(float dt_s);
|
||||
void iteratePlaying(float dt_s);
|
||||
|
||||
// Cantidad de elementos a escribir en los ficheros de datos
|
||||
@@ -258,15 +258,19 @@ class Game {
|
||||
[[nodiscard]] auto isDeathShaking() const -> bool; // Indica si el efecto de agitación intensa está activo
|
||||
void updateDeathSequence(); // Actualiza la secuencia de muerte del jugador
|
||||
|
||||
void updatePausedGame(); // Actualiza las variables del menu de pausa del juego
|
||||
void updateLeavingPauseMenu(); // Helper de updatePausedGame
|
||||
void updatePauseMenuUI(); // Helper de updatePausedGame
|
||||
void renderPausedGame(); // Dibuja el menu de pausa del juego
|
||||
void enterPausedGame(); // Inicializa el estado de pausa del juego
|
||||
void updatePausedGame(); // Actualiza el menu de pausa (frame-based)
|
||||
void updatePausedGame(float dt_s); // Actualiza el menu de pausa (time-based)
|
||||
void updateLeavingPauseMenu(); // Helper (frame-based)
|
||||
void updateLeavingPauseMenu(float dt_s); // Helper (time-based)
|
||||
void updatePauseMenuUI(); // Helper (frame-based)
|
||||
void updatePauseMenuUI(float dt_s); // Helper (time-based)
|
||||
void renderPausedGame(); // Dibuja el menu de pausa del juego
|
||||
void enterPausedGame(); // Inicializa el estado de pausa del juego
|
||||
|
||||
void updateGameOverScreen(); // Actualiza los elementos de la pantalla de game over
|
||||
void renderGameOverScreen(); // Dibuja los elementos de la pantalla de game over
|
||||
void enterGameOverScreen(); // Inicializa el estado de game over
|
||||
void updateGameOverScreen(); // Actualiza game over (frame-based)
|
||||
void updateGameOverScreen(float dt_s); // Actualiza game over (time-based)
|
||||
void renderGameOverScreen(); // Dibuja los elementos de la pantalla de game over
|
||||
void enterGameOverScreen(); // Inicializa el estado de game over
|
||||
|
||||
auto canPowerBallBeCreated() -> bool; // Indica si se puede crear una powerball
|
||||
auto calculateScreenPower() -> int; // Calcula el poder actual de los globos en pantalla
|
||||
@@ -407,7 +411,8 @@ class Game {
|
||||
Demo demo_; // Variable con todas las variables relacionadas con el modo demo
|
||||
int total_power_to_complete_game_; // La suma del poder necesario para completar todas las fases
|
||||
int clouds_speed_{0}; // Velocidad a la que se desplazan las nubes
|
||||
int pause_counter_; // Contador para salir del menu de pausa y volver al juego
|
||||
int pause_counter_; // Contador per a sortir del menu de pausa (frame-based, frames)
|
||||
float pause_counter_phase_s_{0.0F}; // Acumulador de fase per decrementar pause_counter_ a 60Hz (time-based)
|
||||
bool leaving_pause_menu_; // Indica si esta saliendo del menu de pausa para volver al juego
|
||||
bool pause_initialized_; // Indica si la pausa ha sido inicializada
|
||||
bool game_over_initialized_; // Indica si el game over ha sido inicializado
|
||||
|
||||
Reference in New Issue
Block a user