53 lines
1.9 KiB
C++
53 lines
1.9 KiB
C++
#pragma once
|
|
|
|
/*
|
|
Namespace section: define los estados/secciones principales del programa,
|
|
así como las opciones y modos especiales (como el Attract Mode).
|
|
Proporciona variables globales para gestionar el flujo entre secciones.
|
|
*/
|
|
|
|
namespace section
|
|
{
|
|
// --- Enumeraciones de secciones del programa ---
|
|
enum class Name
|
|
{
|
|
RESET, // Inicialización
|
|
LOGO, // Pantalla de logo
|
|
INTRO, // Introducción
|
|
TITLE, // Pantalla de título/menú principal
|
|
GAME, // Juego principal
|
|
HI_SCORE_TABLE, // Tabla de récords
|
|
GAME_DEMO, // Modo demo
|
|
INSTRUCTIONS, // Instrucciones
|
|
CREDITS, // Créditos
|
|
QUIT, // Salir del juego
|
|
};
|
|
|
|
// --- Opciones para la sección actual ---
|
|
enum class Options
|
|
{
|
|
GAME_PLAY_1P, // Jugar 1 jugador
|
|
GAME_PLAY_2P, // Jugar 2 jugadores
|
|
TITLE_TIME_OUT, // Timeout en el título
|
|
TITLE_1, // Opción 1 en el título
|
|
TITLE_2, // Opción 2 en el título
|
|
QUIT_WITH_KEYBOARD, // Salir con teclado
|
|
QUIT_WITH_CONTROLLER, // Salir con mando
|
|
QUIT_FROM_EVENT, // Salir por evento
|
|
RELOAD, // Recargar sección
|
|
HI_SCORE_AFTER_PLAYING, // Mostrar récord tras jugar
|
|
NONE, // Sin opción
|
|
};
|
|
|
|
// --- Modos para el Attract Mode ---
|
|
enum class AttractMode
|
|
{
|
|
TITLE_TO_DEMO, // Pasar de título a demo
|
|
TITLE_TO_LOGO, // Pasar de título a logo
|
|
};
|
|
|
|
// --- Variables globales de estado ---
|
|
extern Name name; // Sección actual
|
|
extern Options options; // Opción seleccionada en la sección
|
|
extern AttractMode attract_mode; // Estado del Attract Mode
|
|
} |