#pragma once #include // Para SDL_ScaleMode #include #include "ui/notifier.hpp" // Para Notifier::Position namespace Defaults::Game { constexpr float WIDTH = 320.0F; constexpr float HEIGHT = 256.0F; constexpr int NAME_ENTRY_IDLE_TIME = 10; constexpr int NAME_ENTRY_TOTAL_TIME = 60; constexpr bool HIT_STOP = false; constexpr int HIT_STOP_MS = 500; constexpr const char* ITEM_TEXT_OUTLINE_COLOR = "FFFFFF00"; constexpr float PLAY_AREA_X = 0.0F; constexpr float PLAY_AREA_Y = 0.0F; constexpr float PLAY_AREA_W = 320.0F; constexpr float PLAY_AREA_H = 216.0F; } // namespace Defaults::Game namespace Defaults::Fade { constexpr const char* COLOR = "1F2B30"; constexpr float NUM_SQUARES_WIDTH = 160.0F; constexpr float NUM_SQUARES_HEIGHT = 128.0F; constexpr int RANDOM_SQUARES_DURATION_MS = 1; constexpr int POST_DURATION_MS = 80; constexpr float VENETIAN_SIZE = 12.0F; } // namespace Defaults::Fade namespace Defaults::Scoreboard { constexpr float RECT_X = 0.0F; constexpr float RECT_Y = 216.0F; constexpr float RECT_W = 320.0F; constexpr float RECT_H = 40.0F; constexpr bool SEPARATOR_AUTOCOLOR = true; constexpr const char* SEPARATOR_COLOR = "0D1A2B"; constexpr const char* EASY_COLOR = "4B692F"; constexpr const char* NORMAL_COLOR = "2E3F47"; constexpr const char* HARD_COLOR = "76428A"; constexpr bool TEXT_AUTOCOLOR = true; constexpr const char* TEXT_COLOR1 = "FFFFFF"; constexpr const char* TEXT_COLOR2 = "FFFFFF"; constexpr int SKIP_COUNTDOWN_VALUE = 8; } // namespace Defaults::Scoreboard namespace Defaults::Title { constexpr int PRESS_START_POSITION = 180; constexpr float DURATION_S = 14.0F; constexpr int ARCADE_EDITION_POSITION = 123; constexpr int TITLE_C_C_POSITION = 80; constexpr const char* BG_COLOR = "41526F"; } // namespace Defaults::Title namespace Defaults::Background { constexpr const char* ATTENUATE_COLOR = "FFFFFF00"; } // namespace Defaults::Background namespace Defaults::Balloon { struct BalloonSettings { float vel; float grav; constexpr BalloonSettings(float v, float g) : vel(v), grav(g) {} }; constexpr std::array SETTINGS = {{ BalloonSettings(165.0F, 320.0F), BalloonSettings(222.0F, 360.0F), BalloonSettings(282.0F, 360.0F), BalloonSettings(327.0F, 360.0F), }}; constexpr std::array COLORS = { "blue", "orange", "red", "green"}; constexpr bool BOUNCING_SOUND = false; } // namespace Defaults::Balloon namespace Defaults::Notification { constexpr Notifier::Position POS_V = Notifier::Position::TOP; constexpr Notifier::Position POS_H = Notifier::Position::LEFT; constexpr bool SOUND = false; constexpr const char* COLOR = "303030"; } // namespace Defaults::Notification namespace Defaults::ServiceMenu { constexpr const char* TITLE_COLOR = "99FF62"; constexpr const char* TEXT_COLOR = "FFFFFF"; constexpr const char* SELECTED_COLOR = "FFDC44"; constexpr const char* BG_COLOR = "000F00F5"; constexpr bool DROP_SHADOW = false; } // namespace Defaults::ServiceMenu namespace Defaults::ServiceMenu::WindowMessage { constexpr const char* BG_COLOR = "141E32F0"; constexpr const char* BORDER_COLOR = "6496C8FF"; constexpr const char* TITLE_COLOR = "6496C8FF"; constexpr const char* TEXT_COLOR = "DCDCDCFF"; constexpr float PADDING = 15.0F; constexpr float LINE_SPACING = 5.0F; constexpr float TITLE_SEPARATOR_SPACING = 10.0F; constexpr float MIN_WIDTH = 250.0F; constexpr float MIN_HEIGHT = 32.0F; constexpr float MAX_WIDTH_RATIO = 0.8F; constexpr float MAX_HEIGHT_RATIO = 0.8F; constexpr float TEXT_SAFETY_MARGIN = 15.0F; constexpr float ANIMATION_DURATION = 0.3F; } // namespace Defaults::ServiceMenu::WindowMessage namespace Defaults::Intro { constexpr const char* BG_COLOR = "4664BD"; constexpr const char* CARD_COLOR = "CBDBFC"; constexpr const char* SHADOW_COLOR = "00000080"; constexpr int TEXT_DISTANCE_FROM_BOTTOM = 48; } // namespace Defaults::Intro namespace Defaults::Debug { constexpr const char* COLOR = "00FFFF"; } // namespace Defaults::Debug namespace Defaults::Resource { constexpr const char* COLOR = "FFFFFF"; } // namespace Defaults::Resource namespace Defaults::Tabe { constexpr float MIN_SPAWN_TIME = 2.0F; constexpr float MAX_SPAWN_TIME = 3.0F; } // namespace Defaults::Tabe namespace Defaults::Player::DefaultShirt { constexpr const char* PLAYER0_DARKEST = "028ECFFF"; constexpr const char* PLAYER0_DARK = "0297DBFF"; constexpr const char* PLAYER0_BASE = "029FE8FF"; constexpr const char* PLAYER0_LIGHT = "03A9F4FF"; constexpr const char* PLAYER1_DARKEST = "8E8E8EFF"; constexpr const char* PLAYER1_DARK = "AEADADFF"; constexpr const char* PLAYER1_BASE = "E4E4E4FF"; constexpr const char* PLAYER1_LIGHT = "F7F1F1FF"; } // namespace Defaults::Player::DefaultShirt namespace Defaults::Player::OneCoffeeShirt { constexpr const char* PLAYER0_DARKEST = "3D9C70FF"; constexpr const char* PLAYER0_DARK = "4FA370FF"; constexpr const char* PLAYER0_BASE = "5DDE70FF"; constexpr const char* PLAYER0_LIGHT = "7DF25CFF"; constexpr const char* PLAYER1_DARKEST = "2E8B57FF"; constexpr const char* PLAYER1_DARK = "3CB371FF"; constexpr const char* PLAYER1_BASE = "48D181FF"; constexpr const char* PLAYER1_LIGHT = "55EF8DFF"; } // namespace Defaults::Player::OneCoffeeShirt namespace Defaults::Player::TwoCoffeeShirt { constexpr const char* PLAYER0_DARKEST = "D6A41AFF"; constexpr const char* PLAYER0_DARK = "E3AE1BFF"; constexpr const char* PLAYER0_BASE = "EFB71DFF"; constexpr const char* PLAYER0_LIGHT = "FCC11EFF"; constexpr const char* PLAYER1_DARKEST = "E08500FF"; constexpr const char* PLAYER1_DARK = "FA7D00FF"; constexpr const char* PLAYER1_BASE = "FAA200FF"; constexpr const char* PLAYER1_LIGHT = "FA8500FF"; } // namespace Defaults::Player::TwoCoffeeShirt namespace Defaults::Player::OutlineColor { constexpr const char* PLAYER0 = "66323FFF"; constexpr const char* PLAYER1 = "422028FF"; } // namespace Defaults::Player::OutlineColor namespace Defaults::Window { constexpr const char* CAPTION = "© 2025 Coffee Crisis Arcade Edition — JailDesigner"; constexpr int ZOOM = 2; constexpr int MAX_ZOOM = 2; } // namespace Defaults::Window namespace Defaults::Video { constexpr SDL_ScaleMode SCALE_MODE = SDL_ScaleMode::SDL_SCALEMODE_NEAREST; constexpr bool FULLSCREEN = false; constexpr bool VSYNC = true; constexpr bool INTEGER_SCALE = true; constexpr bool POSTFX = false; constexpr int SUPERSAMPLING = 1; } // namespace Defaults::Video namespace Defaults::Music { constexpr bool ENABLED = true; constexpr int VOLUME = 100; } // namespace Defaults::Music namespace Defaults::Sound { constexpr bool ENABLED = true; constexpr int VOLUME = 100; } // namespace Defaults::Sound namespace Defaults::Audio { constexpr bool ENABLED = true; constexpr int VOLUME = 100; } // namespace Defaults::Audio namespace Defaults::Settings { constexpr bool AUTOFIRE = true; constexpr bool SHUTDOWN_ENABLED = false; constexpr const char* PARAMS_FILE = "param_320x256.txt"; } // namespace Defaults::Settings