#ifndef DUSK_CONFIG_H #define DUSK_CONFIG_H #include "config_var.hpp" namespace dusk::settings { using namespace config; // Persistent user settings namespace video { extern ConfigVar enableFullscreen; } namespace audio { extern ConfigVar masterVolume; extern ConfigVar mainMusicVolume; extern ConfigVar subMusicVolume; extern ConfigVar soundEffectsVolume; extern ConfigVar fanfareVolume; extern ConfigVar enableReverb; } namespace game { // QoL extern ConfigVar enableQuickTransform; extern ConfigVar hideTvSettingsScreen; extern ConfigVar biggerWallets; extern ConfigVar noReturnRupees; extern ConfigVar disableRupeeCutscenes; extern ConfigVar noSwordRecoil; extern ConfigVar damageMultiplier; extern ConfigVar instantDeath; extern ConfigVar fastClimbing; extern ConfigVar fastTears; extern ConfigVar noMissClimbing; // Preferences extern ConfigVar enableMirrorMode; extern ConfigVar invertCameraXAxis; // Graphics extern ConfigVar enableBloom; extern ConfigVar useWaterProjectionOffset; // Audio extern ConfigVar noLowHpSound; extern ConfigVar midnasLamentNonStop; // Cheats extern ConfigVar enableFastIronBoots; extern ConfigVar canTransformAnywhere; // Technical extern ConfigVar restoreWiiGlitches; } void Register(); } namespace dusk { // Transient settings struct CollisionViewSettings { bool enableTerrainView; bool enableWireframe; bool enableAtView; bool enableTgView; bool enableCoView; float terrainViewOpacity; float colliderViewOpacity; float drawRange; }; struct TransientSettings { CollisionViewSettings collisionView; }; TransientSettings& getTransientSettings(); } #endif // DUSK_CONFIG_H