linter
This commit is contained in:
@@ -1,23 +1,18 @@
|
||||
#pragma once
|
||||
|
||||
#include <SDL3/SDL.h> // Para SDL_Renderer, SDL_Texture, Uint64, Uint8
|
||||
#include <SDL3/SDL.h> // Para SDL_Event, SDL_Renderer, SDL_Texture, Uint64
|
||||
|
||||
#include <memory> // Para shared_ptr, unique_ptr
|
||||
#include <string> // Para string
|
||||
#include <vector> // Para vector
|
||||
|
||||
#include "bullet.hpp" // Para Bullet
|
||||
#include "bullet_manager.hpp" // Para BulletManager
|
||||
#include "demo.hpp" // Para Demo
|
||||
#include "hit.hpp" // Para Hit
|
||||
#include "item.hpp" // Para Item, ItemType
|
||||
#include "manage_hiscore_table.hpp" // Para HiScoreEntry
|
||||
#include "options.hpp" // Para Settings, settings
|
||||
#include "path_sprite.hpp" // Para PathSprite, Path
|
||||
#include "player.hpp" // Para Player
|
||||
#include "smart_sprite.hpp" // Para SmartSprite
|
||||
#include "stage.hpp" // Para StageManager
|
||||
#include "utils.hpp" // Para otras utilidades
|
||||
#include "bullet.hpp" // for Bullet
|
||||
#include "demo.hpp" // for Demo
|
||||
#include "hit.hpp" // for Hit
|
||||
#include "item.hpp" // for Item (ptr only), ItemType
|
||||
#include "manage_hiscore_table.hpp" // for HiScoreEntry
|
||||
#include "options.hpp" // for Settings, settings
|
||||
#include "player.hpp" // for Player
|
||||
|
||||
class Background;
|
||||
class Balloon;
|
||||
@@ -25,11 +20,15 @@ class BalloonManager;
|
||||
class BulletManager;
|
||||
class Fade;
|
||||
class Input;
|
||||
class PathSprite;
|
||||
class PauseManager;
|
||||
class Scoreboard;
|
||||
class Screen;
|
||||
class SmartSprite;
|
||||
class StageManager;
|
||||
class Tabe;
|
||||
class Texture;
|
||||
struct Path;
|
||||
|
||||
namespace Difficulty {
|
||||
enum class Code;
|
||||
@@ -76,12 +75,12 @@ class Game {
|
||||
};
|
||||
|
||||
// --- Constantes de tiempo (en segundos) ---
|
||||
static constexpr float HELP_COUNTER_S = 16.667f; // Contador de ayuda (1000 frames a 60fps → segundos)
|
||||
static constexpr float GAME_COMPLETED_START_FADE_S = 8.333f; // Inicio del fade al completar (500 frames → segundos)
|
||||
static constexpr float GAME_COMPLETED_END_S = 11.667f; // Fin del juego completado (700 frames → segundos)
|
||||
static constexpr float GAME_OVER_DURATION_S = 8.5f;
|
||||
static constexpr float TIME_STOPPED_DURATION_S = 6.0f;
|
||||
static constexpr float DEMO_FADE_PRE_DURATION_S = 0.5f;
|
||||
static constexpr float HELP_COUNTER_S = 16.667F; // Contador de ayuda (1000 frames a 60fps → segundos)
|
||||
static constexpr float GAME_COMPLETED_START_FADE_S = 8.333F; // Inicio del fade al completar (500 frames → segundos)
|
||||
static constexpr float GAME_COMPLETED_END_S = 11.667F; // Fin del juego completado (700 frames → segundos)
|
||||
static constexpr float GAME_OVER_DURATION_S = 8.5F;
|
||||
static constexpr float TIME_STOPPED_DURATION_S = 6.0F;
|
||||
static constexpr float DEMO_FADE_PRE_DURATION_S = 0.5F;
|
||||
static constexpr int ITEM_POINTS_1_DISK_ODDS = 10;
|
||||
static constexpr int ITEM_POINTS_2_GAVINA_ODDS = 6;
|
||||
static constexpr int ITEM_POINTS_3_PACMAR_ODDS = 3;
|
||||
@@ -155,11 +154,11 @@ class Game {
|
||||
Uint64 last_time_ = 0; // Último tiempo registrado para deltaTime
|
||||
bool coffee_machine_enabled_ = false; // Indica si hay una máquina de café en el terreno de juego
|
||||
bool hi_score_achieved_ = false; // Indica si se ha superado la puntuación máxima
|
||||
float difficulty_score_multiplier_ = 1.0f; // Multiplicador de puntos en función de la dificultad
|
||||
float counter_ = 0.0f; // Contador para el juego
|
||||
float game_completed_timer_ = 0.0f; // Acumulador de tiempo para el tramo final (milisegundos)
|
||||
float game_over_timer_ = 0.0f; // Timer para el estado de fin de partida (milisegundos)
|
||||
float time_stopped_timer_ = 0.0f; // Temporizador para llevar la cuenta del tiempo detenido
|
||||
float difficulty_score_multiplier_ = 1.0F; // Multiplicador de puntos en función de la dificultad
|
||||
float counter_ = 0.0F; // Contador para el juego
|
||||
float game_completed_timer_ = 0.0F; // Acumulador de tiempo para el tramo final (milisegundos)
|
||||
float game_over_timer_ = 0.0F; // Timer para el estado de fin de partida (milisegundos)
|
||||
float time_stopped_timer_ = 0.0F; // Temporizador para llevar la cuenta del tiempo detenido
|
||||
int menace_ = 0; // Nivel de amenaza actual
|
||||
int menace_threshold_ = 0; // Umbral del nivel de amenaza. Si el nivel de amenaza cae por debajo del umbral, se generan más globos. Si el umbral aumenta, aumenta el número de globos
|
||||
State state_ = State::FADE_IN; // Estado
|
||||
@@ -205,7 +204,7 @@ class Game {
|
||||
#endif
|
||||
|
||||
// --- Ciclo principal del juego ---
|
||||
void update(float deltaTime); // Actualiza la lógica principal del juego
|
||||
void update(float delta_time); // Actualiza la lógica principal del juego
|
||||
auto calculateDeltaTime() -> float; // Calcula el deltatime
|
||||
void render(); // Renderiza todos los elementos del juego
|
||||
void handleEvents(); // Procesa los eventos del sistema en cola
|
||||
@@ -214,17 +213,17 @@ class Game {
|
||||
void cleanVectors(); // Limpia vectores de elementos deshabilitados
|
||||
|
||||
// --- Gestión de estados del juego ---
|
||||
void updateGameStates(float deltaTime); // Actualiza todos los estados del juego
|
||||
void updateGameStateFadeIn(float deltaTime); // Gestiona el estado de transición de entrada (time-based)
|
||||
void updateGameStateEnteringPlayer(float deltaTime); // Gestiona el estado de entrada de jugador
|
||||
void updateGameStateShowingGetReadyMessage(float deltaTime); // Gestiona el estado de mensaje "preparado"
|
||||
void updateGameStatePlaying(float deltaTime); // Gestiona el estado de juego activo
|
||||
void updateGameStateCompleted(float deltaTime); // Gestiona el estado de juego completado
|
||||
void updateGameStateGameOver(float deltaTime); // Gestiona las actualizaciones continuas del estado de fin de partida
|
||||
void updateGameStates(float delta_time); // Actualiza todos los estados del juego
|
||||
void updateGameStateFadeIn(float delta_time); // Gestiona el estado de transición de entrada (time-based)
|
||||
void updateGameStateEnteringPlayer(float delta_time); // Gestiona el estado de entrada de jugador
|
||||
void updateGameStateShowingGetReadyMessage(float delta_time); // Gestiona el estado de mensaje "preparado"
|
||||
void updateGameStatePlaying(float delta_time); // Gestiona el estado de juego activo
|
||||
void updateGameStateCompleted(float delta_time); // Gestiona el estado de juego completado
|
||||
void updateGameStateGameOver(float delta_time); // Gestiona las actualizaciones continuas del estado de fin de partida
|
||||
|
||||
// --- Gestión de jugadores ---
|
||||
void initPlayers(Player::Id player_id); // Inicializa los datos de los jugadores
|
||||
void updatePlayers(float deltaTime); // Actualiza las variables y estados de los jugadores
|
||||
void updatePlayers(float delta_time); // Actualiza las variables y estados de los jugadores
|
||||
void renderPlayers(); // Renderiza todos los jugadores en pantalla
|
||||
void sortPlayersByZOrder(); // Reorganiza el orden de dibujado de jugadores
|
||||
auto getPlayer(Player::Id id) -> std::shared_ptr<Player>; // Obtiene un jugador por su identificador
|
||||
@@ -269,7 +268,7 @@ class Game {
|
||||
void processBalloonHit(const std::shared_ptr<Bullet>& bullet, const std::shared_ptr<Balloon>& balloon); // Procesa impacto en globo
|
||||
|
||||
// --- Sistema de ítems y power-ups ---
|
||||
void updateItems(float deltaTime); // Actualiza posición y estado de todos los ítems
|
||||
void updateItems(float delta_time); // Actualiza posición y estado de todos los ítems
|
||||
void renderItems(); // Renderiza todos los ítems activos
|
||||
auto dropItem() -> ItemType; // Determina aleatoriamente qué ítem soltar
|
||||
void createItem(ItemType type, float x, float y); // Crea un nuevo ítem en posición específica
|
||||
@@ -277,35 +276,35 @@ class Game {
|
||||
void destroyAllItems(); // Elimina todos los ítems activos de la pantalla
|
||||
|
||||
// --- ítems especiales ---
|
||||
void enableTimeStopItem(); // Activa el efecto de detener el tiempo
|
||||
void disableTimeStopItem(); // Desactiva el efecto de detener el tiempo
|
||||
void updateTimeStopped(float deltaTime); // Actualiza el estado del tiempo detenido
|
||||
void handleGameCompletedEvents(); // Maneja eventos del juego completado
|
||||
void handleGameOverEvents(); // Maneja eventos discretos basados en tiempo durante game over
|
||||
void throwCoffee(int x, int y); // Crea efecto de café arrojado al ser golpeado
|
||||
void enableTimeStopItem(); // Activa el efecto de detener el tiempo
|
||||
void disableTimeStopItem(); // Desactiva el efecto de detener el tiempo
|
||||
void updateTimeStopped(float delta_time); // Actualiza el estado del tiempo detenido
|
||||
void handleGameCompletedEvents(); // Maneja eventos del juego completado
|
||||
void handleGameOverEvents(); // Maneja eventos discretos basados en tiempo durante game over
|
||||
void throwCoffee(int x, int y); // Crea efecto de café arrojado al ser golpeado
|
||||
|
||||
// --- Gestión de caída de ítems ---
|
||||
void handleItemDrop(const std::shared_ptr<Balloon>& balloon, const std::shared_ptr<Player>& player); // Gestiona caída de ítem desde globo
|
||||
|
||||
// --- Sprites inteligentes (smartsprites) ---
|
||||
void updateSmartSprites(float deltaTime); // Actualiza todos los sprites con lógica propia (time-based)
|
||||
void renderSmartSprites(); // Renderiza todos los sprites inteligentes
|
||||
void freeSmartSprites(); // Libera memoria de sprites inteligentes
|
||||
void updateSmartSprites(float delta_time); // Actualiza todos los sprites con lógica propia (time-based)
|
||||
void renderSmartSprites(); // Renderiza todos los sprites inteligentes
|
||||
void freeSmartSprites(); // Libera memoria de sprites inteligentes
|
||||
|
||||
// --- Sprites por ruta (pathsprites) ---
|
||||
void updatePathSprites(float deltaTime); // Actualiza sprites que siguen rutas predefinidas
|
||||
void renderPathSprites(); // Renderiza sprites animados por ruta
|
||||
void freePathSprites(); // Libera memoria de sprites por ruta
|
||||
void initPaths(); // Inicializa rutas predefinidas para animaciones
|
||||
void updatePathSprites(float delta_time); // Actualiza sprites que siguen rutas predefinidas
|
||||
void renderPathSprites(); // Renderiza sprites animados por ruta
|
||||
void freePathSprites(); // Libera memoria de sprites por ruta
|
||||
void initPaths(); // Inicializa rutas predefinidas para animaciones
|
||||
|
||||
// --- Creación de sprites especiales ---
|
||||
void createItemText(int x, const std::shared_ptr<Texture>& texture); // Crea texto animado para ítems
|
||||
void createMessage(const std::vector<Path>& paths, const std::shared_ptr<Texture>& texture); // Crea mensaje con animación por ruta
|
||||
|
||||
// --- Sistema de globos y enemigos ---
|
||||
void handleBalloonDestruction(std::shared_ptr<Balloon> balloon, const std::shared_ptr<Player>& player); // Procesa destrucción de globo
|
||||
void handleTabeHitEffects(); // Gestiona efectos al golpear a Tabe
|
||||
void checkAndUpdateBalloonSpeed(); // Ajusta velocidad de globos según progreso
|
||||
void handleBalloonDestruction(const std::shared_ptr<Balloon>& balloon, const std::shared_ptr<Player>& player); // Procesa destrucción de globo
|
||||
void handleTabeHitEffects(); // Gestiona efectos al golpear a Tabe
|
||||
void checkAndUpdateBalloonSpeed(); // Ajusta velocidad de globos según progreso
|
||||
|
||||
// --- Gestión de fases y progresión ---
|
||||
void updateStage(); // Verifica y actualiza cambio de fase
|
||||
@@ -316,20 +315,20 @@ class Game {
|
||||
void setMenace(); // Calcula y establece amenaza según globos activos
|
||||
|
||||
// --- Puntuación y marcador ---
|
||||
void updateHiScore(); // Actualiza el récord máximo si es necesario
|
||||
void updateScoreboard(float deltaTime); // Actualiza la visualización del marcador
|
||||
void updateHiScoreName(); // Pone en el marcador el nombre del primer jugador de la tabla
|
||||
void initScoreboard(); // Inicializa el sistema de puntuación
|
||||
void updateHiScore(); // Actualiza el récord máximo si es necesario
|
||||
void updateScoreboard(float delta_time); // Actualiza la visualización del marcador
|
||||
void updateHiScoreName(); // Pone en el marcador el nombre del primer jugador de la tabla
|
||||
void initScoreboard(); // Inicializa el sistema de puntuación
|
||||
|
||||
// --- Modo demostración ---
|
||||
void initDemo(Player::Id player_id); // Inicializa variables para el modo demostración
|
||||
void updateDemo(float deltaTime); // Actualiza lógica específica del modo demo
|
||||
void updateDemo(float delta_time); // Actualiza lógica específica del modo demo
|
||||
|
||||
// --- Recursos y renderizado ---
|
||||
void setResources(); // Asigna texturas y animaciones a los objetos
|
||||
void updateBackground(float deltaTime); // Actualiza elementos del fondo (time-based)
|
||||
void fillCanvas(); // Renderiza elementos del área de juego en su textura
|
||||
void updateHelper(); // Actualiza variables auxiliares de renderizado
|
||||
void setResources(); // Asigna texturas y animaciones a los objetos
|
||||
void updateBackground(float delta_time); // Actualiza elementos del fondo (time-based)
|
||||
void fillCanvas(); // Renderiza elementos del área de juego en su textura
|
||||
void updateHelper(); // Actualiza variables auxiliares de renderizado
|
||||
|
||||
// --- Sistema de audio ---
|
||||
static void playMusic(const std::string& music_file, int loop = -1); // Reproduce la música de fondo
|
||||
|
||||
Reference in New Issue
Block a user