// audio.hpp - Configuració d'audio (sistema), pistes de música i efectes // © 2026 JailDesigner #pragma once #include // Audio (sistema de sonido y música) — usado por Audio::Config en init() namespace Defaults::Audio { constexpr bool ENABLED = true; // Audio habilitado por defecto constexpr float VOLUME = 1.0F; // Volumen maestro (0..1) constexpr bool MUSIC_ENABLED = true; // Música habilitada constexpr float MUSIC_VOLUME = 0.8F; // Volumen música (0..1) constexpr bool SOUND_ENABLED = true; // Efectos habilitados constexpr float SOUND_VOLUME = 1.0F; // Volumen efectos (0..1) constexpr float VOLUME_STEP = 0.05F; // Paso UI (5%) constexpr int FREQUENCY = 48000; // Frecuencia de muestreo (Hz) constexpr int CROSSFADE_MS = 1500; // Crossfade por defecto entre pistas (ms) constexpr SDL_AudioFormat FORMAT = SDL_AUDIO_S16; // PCM 16-bit signed nativo constexpr int CHANNELS = 2; // Estéreo } // namespace Defaults::Audio // Música (pistas de fondo) namespace Defaults::Music { constexpr const char* GAME_TRACK = "game.ogg"; // Pista de juego constexpr const char* TITLE_TRACK = "title.ogg"; // Pista de titulo constexpr int FADE_DURATION_MS = 1000; // Fade out duration } // namespace Defaults::Music // Efectes de so (sons puntuals) namespace Defaults::Sound { constexpr const char* CONTINUE = "effects/continue.wav"; // Cuenta atras constexpr const char* EXPLOSION = "effects/explosion.wav"; // Explosión constexpr const char* EXPLOSION2 = "effects/explosion2.wav"; // Explosión alternativa constexpr const char* FRIENDLY_FIRE_HIT = "effects/friendly_fire.wav"; // Friendly fire hit constexpr const char* INIT_HUD = "effects/init_hud.wav"; // Para la animación del HUD constexpr const char* LASER = "effects/laser_shoot.wav"; // Disparo constexpr const char* LOGO = "effects/logo.wav"; // Logo constexpr const char* START = "effects/start.wav"; // El player pulsa START constexpr const char* GOOD_JOB_COMMANDER = "voices/good_job_commander.wav"; // Voz: "Good job, commander" } // namespace Defaults::Sound