132 lines
3.6 KiB
C++
132 lines
3.6 KiB
C++
#pragma once
|
|
|
|
#include <array>
|
|
|
|
#include "color.h"
|
|
#include "ui/notifier.h"
|
|
|
|
// Configuración centralizada con todos los valores por defecto del juego
|
|
namespace GameDefaults {
|
|
|
|
// --- GAME ---
|
|
namespace Game {
|
|
constexpr float WIDTH = 320.0f;
|
|
constexpr float HEIGHT = 256.0f;
|
|
constexpr float ITEM_SIZE = 20.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;
|
|
|
|
// Play area por defecto
|
|
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 Game
|
|
|
|
// --- FADE ---
|
|
namespace Fade {
|
|
constexpr const char* COLOR = "1F2B30";
|
|
constexpr float NUM_SQUARES_WIDTH = 160.0f;
|
|
constexpr float NUM_SQUARES_HEIGHT = 128.0f;
|
|
constexpr int RANDOM_SQUARES_DELAY = 1;
|
|
constexpr int RANDOM_SQUARES_MULT = 500;
|
|
constexpr int POST_DURATION = 80;
|
|
constexpr float VENETIAN_SIZE = 12.0f;
|
|
} // namespace Fade
|
|
|
|
// --- SCOREBOARD ---
|
|
namespace 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 Scoreboard
|
|
|
|
// --- TITLE ---
|
|
namespace Title {
|
|
constexpr int PRESS_START_POSITION = 180;
|
|
constexpr int DURATION = 800;
|
|
constexpr int ARCADE_EDITION_POSITION = 123;
|
|
constexpr int TITLE_C_C_POSITION = 80;
|
|
constexpr const char* BG_COLOR = "41526F";
|
|
} // namespace Title
|
|
|
|
// --- BACKGROUND ---
|
|
namespace Background {
|
|
constexpr const char* ATTENUATE_COLOR = "FFFFFF00";
|
|
}
|
|
|
|
// --- BALLOONS ---
|
|
namespace Balloon {
|
|
// Configuración de física para cada nivel de globo
|
|
struct BalloonSettings {
|
|
float vel;
|
|
float grav;
|
|
constexpr BalloonSettings(float v, float g) : vel(v), grav(g) {}
|
|
};
|
|
|
|
constexpr std::array<BalloonSettings, 4> SETTINGS = {{
|
|
BalloonSettings(2.75f, 0.09f), // Globo 0
|
|
BalloonSettings(3.70f, 0.10f), // Globo 1
|
|
BalloonSettings(4.70f, 0.10f), // Globo 2
|
|
BalloonSettings(5.45f, 0.10f) // Globo 3
|
|
}};
|
|
|
|
constexpr std::array<const char*, 4> COLORS = {
|
|
"blue", "orange", "red", "green"};
|
|
|
|
constexpr bool BOUNCING_SOUND = false;
|
|
} // namespace Balloon
|
|
|
|
// --- NOTIFICATION ---
|
|
namespace 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 Notification
|
|
|
|
// --- SERVICE MENU ---
|
|
namespace 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 ServiceMenu
|
|
|
|
// --- INTRO ---
|
|
namespace 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 Intro
|
|
|
|
// --- DEBUG ---
|
|
namespace Debug {
|
|
constexpr const char* COLOR = "00FFFF";
|
|
}
|
|
|
|
// --- RESOURCE ---
|
|
namespace Resource {
|
|
constexpr const char* COLOR = "FFFFFF";
|
|
}
|
|
|
|
// --- TABE ---
|
|
namespace Tabe {
|
|
constexpr float MIN_SPAWN_TIME = 2.0f;
|
|
constexpr float MAX_SPAWN_TIME = 3.0f;
|
|
} // namespace Tabe
|
|
} // namespace GameDefaults
|