#pragma once #include #include "core/rendering/screen.hpp" // Para Screen::Filter #include "utils/utils.hpp" // Para PaletteColor // Forward declarations from Options namespace namespace Options { // enum class ControlScheme; enum class NotificationPosition; } // namespace Options namespace GameDefaults { // GAME constexpr int GAME_WIDTH = 256; // Ancho de la ventana por defecto constexpr int GAME_HEIGHT = 192; // Alto de la ventana por defecto // WINDOW constexpr int WINDOW_ZOOM = 2; // Zoom de la ventana por defecto // VIDEO constexpr bool VIDEO_FULLSCREEN = false; // Modo de pantalla completa por defecto (false = ventana) constexpr Screen::Filter VIDEO_FILTER = Screen::Filter::NEAREST; // Filtro por defecto constexpr bool VIDEO_VERTICAL_SYNC = true; // Vsync activado por defecto constexpr bool VIDEO_SHADERS = false; // Shaders desactivados por defecto constexpr bool VIDEO_INTEGER_SCALE = true; // Escalado entero activado por defecto constexpr bool VIDEO_KEEP_ASPECT = true; // Mantener aspecto activado por defecto constexpr const char* PALETTE_NAME = "zx-spectrum"; // Paleta por defecto // BORDER constexpr bool BORDER_ENABLED = true; // Borde activado por defecto constexpr int BORDER_WIDTH = 32; // Ancho del borde por defecto constexpr int BORDER_HEIGHT = 24; // Alto del borde por defecto // AUDIO constexpr float AUDIO_VOLUME = 1.0F; // Volumen por defecto constexpr bool AUDIO_ENABLED = true; // Audio por defecto // MUSIC constexpr float MUSIC_VOLUME = 0.8F; // Volumen por defecto de la musica constexpr bool MUSIC_ENABLED = true; // Musica habilitada por defecto // SOUND constexpr float SOUND_VOLUME = 1.0F; // Volumen por defecto de los efectos de sonido constexpr bool SOUND_ENABLED = true; // Sonido habilitado por defecto // NOTIFICATIONS constexpr bool NOTIFICATION_SOUND = true; // Sonido de las notificaciones por defecto const Uint8 NOTIFICATION_COLOR = static_cast(PaletteColor::BLUE); // Color de las notificaciones por defecto // CHEATS constexpr bool CHEAT_INFINITE_LIVES = false; // Vidas infinitas desactivadas por defecto constexpr bool CHEAT_INVINCIBLE = true; // Invencibilidad desactivada por defecto constexpr bool CHEAT_JAIL_IS_OPEN = false; // Jail abierta desactivada por defecto constexpr bool CHEAT_ALTERNATE_SKIN = false; // Skin alternativa desactivada por defecto // STATS constexpr int STATS_ROOMS = 0; // Habitaciones visitadas por defecto constexpr int STATS_ITEMS = 0; // Items obtenidos por defecto constexpr const char* STATS_WORST_NIGHTMARE = ""; // Habitación con más muertes por defecto // CONTROLS constexpr SDL_Scancode CONTROL_KEY_LEFT = SDL_SCANCODE_LEFT; // Tecla izquierda por defecto constexpr SDL_Scancode CONTROL_KEY_RIGHT = SDL_SCANCODE_RIGHT; // Tecla derecha por defecto constexpr SDL_Scancode CONTROL_KEY_JUMP = SDL_SCANCODE_UP; // Tecla salto por defecto // GAMEPAD CONTROLS const int GAMEPAD_BUTTON_LEFT = SDL_GAMEPAD_BUTTON_DPAD_LEFT; // Botón izquierda por defecto const int GAMEPAD_BUTTON_RIGHT = SDL_GAMEPAD_BUTTON_DPAD_RIGHT; // Botón derecha por defecto const int GAMEPAD_BUTTON_JUMP = SDL_GAMEPAD_BUTTON_WEST; // Botón salto por defecto // OTHER constexpr bool CONSOLE = false; // Consola desactivada por defecto constexpr const char* VERSION = "1.10"; // Versión por defecto } // namespace GameDefaults