forked from jaildesigner-jailgames/jaildoctors_dilemma
mogut options.section a SceneManager
This commit is contained in:
39
source/game/scene_manager.hpp
Normal file
39
source/game/scene_manager.hpp
Normal file
@@ -0,0 +1,39 @@
|
||||
#pragma once
|
||||
|
||||
/*
|
||||
Namespace SceneManager: gestiona el flujo entre las diferentes escenas del juego.
|
||||
|
||||
Define las escenas principales del programa y las opciones de transición entre ellas.
|
||||
Proporciona variables globales inline para gestionar el estado actual de la escena.
|
||||
*/
|
||||
|
||||
namespace SceneManager {
|
||||
|
||||
// --- Escenas del programa ---
|
||||
enum class Scene {
|
||||
LOGO, // Pantalla del logo
|
||||
LOADING_SCREEN, // Pantalla de carga
|
||||
TITLE, // Pantalla de título/menú principal
|
||||
CREDITS, // Créditos del juego
|
||||
GAME, // Juego principal
|
||||
DEMO, // Modo demostración
|
||||
GAME_OVER, // Pantalla de game over
|
||||
ENDING, // Final del juego (ending 1)
|
||||
ENDING2, // Final del juego (ending 2)
|
||||
QUIT // Salir del programa
|
||||
};
|
||||
|
||||
// --- Opciones para transiciones entre escenas ---
|
||||
enum class Options {
|
||||
NONE, // Sin opciones especiales
|
||||
LOGO_TO_INTRO, // Del logo a la intro
|
||||
LOGO_TO_TITLE, // Del logo al título
|
||||
TITLE_WITH_LOADING_SCREEN, // Al título mostrando pantalla de carga
|
||||
TITLE_WITHOUT_LOADING_SCREEN // Al título sin pantalla de carga
|
||||
};
|
||||
|
||||
// --- Variables de estado globales (inline C++17) ---
|
||||
inline Scene current = Scene::LOGO; // Escena actual
|
||||
inline Options options = Options::NONE; // Opciones de la escena actual
|
||||
|
||||
} // namespace SceneManager
|
||||
Reference in New Issue
Block a user