afegida escena TITOL
This commit is contained in:
37
source/game/escenes/escena_titol.hpp
Normal file
37
source/game/escenes/escena_titol.hpp
Normal file
@@ -0,0 +1,37 @@
|
||||
// escena_titol.hpp - Pantalla de títol del joc
|
||||
// Mostra missatge "PRESS BUTTON TO PLAY" i copyright
|
||||
// © 2025 Port a C++20
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <SDL3/SDL.h>
|
||||
|
||||
#include "../../core/graphics/vector_text.hpp"
|
||||
#include "../../core/rendering/sdl_manager.hpp"
|
||||
#include "core/defaults.hpp"
|
||||
|
||||
class EscenaTitol {
|
||||
public:
|
||||
explicit EscenaTitol(SDLManager& sdl);
|
||||
void executar(); // Bucle principal de l'escena
|
||||
|
||||
private:
|
||||
// Màquina d'estats per la pantalla de títol
|
||||
enum class EstatTitol {
|
||||
INIT, // Pantalla negra inicial (2 segons)
|
||||
MAIN // Pantalla de títol amb text
|
||||
};
|
||||
|
||||
SDLManager& sdl_;
|
||||
Graphics::VectorText text_; // Sistema de text vectorial
|
||||
EstatTitol estat_actual_; // Estat actual de la màquina
|
||||
float temps_acumulat_; // Temps acumulat per l'estat INIT
|
||||
|
||||
// Constants
|
||||
static constexpr float DURACIO_INIT = 2.0f; // Duració de l'estat INIT (2 segons)
|
||||
|
||||
// Mètodes privats
|
||||
void actualitzar(float delta_time);
|
||||
void dibuixar();
|
||||
void processar_events(const SDL_Event& event);
|
||||
};
|
||||
Reference in New Issue
Block a user