From e1f97603ae1fa3b5d537d70057787de88ae37288 Mon Sep 17 00:00:00 2001 From: obligaron Date: Sun, 7 Nov 2021 23:28:18 +0100 Subject: [PATCH] Add OptionEntry Walking Sound --- Source/options.cpp | 7 ++++--- Source/options.h | 2 +- Source/player.cpp | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/Source/options.cpp b/Source/options.cpp index da0ad146b..d9e0d9ca1 100644 --- a/Source/options.cpp +++ b/Source/options.cpp @@ -232,7 +232,6 @@ void LoadOptions() sgOptions.Audio.nSoundVolume = GetIniInt("Audio", "Sound Volume", VOLUME_MAX); sgOptions.Audio.nMusicVolume = GetIniInt("Audio", "Music Volume", VOLUME_MAX); - sgOptions.Audio.bWalkingSound = GetIniBool("Audio", "Walking Sound", true); sgOptions.Audio.bAutoEquipSound = GetIniBool("Audio", "Auto Equip Sound", AUTO_PICKUP_DEFAULT(false)); sgOptions.Audio.bItemPickupSound = GetIniBool("Audio", "Item Pickup Sound", AUTO_PICKUP_DEFAULT(false)); @@ -396,7 +395,6 @@ void SaveOptions() SetIniValue("Audio", "Sound Volume", sgOptions.Audio.nSoundVolume); SetIniValue("Audio", "Music Volume", sgOptions.Audio.nMusicVolume); - SetIniValue("Audio", "Walking Sound", sgOptions.Audio.bWalkingSound); SetIniValue("Audio", "Auto Equip Sound", sgOptions.Audio.bAutoEquipSound); SetIniValue("Audio", "Item Pickup Sound", sgOptions.Audio.bItemPickupSound); @@ -605,11 +603,14 @@ std::vector HellfireOptions::GetEntries() AudioOptions::AudioOptions() : OptionCategoryBase("Audio", N_("Audio"), N_("Audio Settings")) + , walkingSound("Walking Sound", OptionEntryFlags::None, N_("Walking Sound"), N_("Player emits sound when walking."), true) { } std::vector AudioOptions::GetEntries() { - return {}; + return { + &walkingSound, + }; } GraphicsOptions::GraphicsOptions() diff --git a/Source/options.h b/Source/options.h index ffef420f0..6ed1de6c3 100644 --- a/Source/options.h +++ b/Source/options.h @@ -203,7 +203,7 @@ struct AudioOptions : OptionCategoryBase { /** @brief Music volume. */ int nMusicVolume; /** @brief Player emits sound when walking. */ - bool bWalkingSound; + OptionEntryBoolean walkingSound; /** @brief Automatically equipping items on pickup emits the equipment sound. */ bool bAutoEquipSound; /** @brief Picking up items emits the items pickup sound. */ diff --git a/Source/player.cpp b/Source/player.cpp index be6bcb1d3..6439ec238 100644 --- a/Source/player.cpp +++ b/Source/player.cpp @@ -704,7 +704,7 @@ bool DoWalk(int pnum, int variant) auto &player = Players[pnum]; //Play walking sound effect on certain animation frames - if (sgOptions.Audio.bWalkingSound && (currlevel != 0 || sgGameInitInfo.bRunInTown == 0)) { + if (*sgOptions.Audio.walkingSound && (currlevel != 0 || sgGameInitInfo.bRunInTown == 0)) { if (player.AnimInfo.CurrentFrame == 1 || player.AnimInfo.CurrentFrame == 5) { PlaySfxLoc(PS_WALK1, player.position.tile);