Added volume settings to config file
This commit is contained in:
+5
-1
@@ -1,2 +1,6 @@
|
||||
[Debug]
|
||||
SkipStory=0
|
||||
SkipStory=0
|
||||
|
||||
[Audio]
|
||||
SFXVolume=0.5
|
||||
BGMVolume=0.5
|
||||
@@ -6,6 +6,7 @@
|
||||
#include "GUI/Slider.h"
|
||||
#include "GUI/ESliderUpdate.h"
|
||||
#include "Sound/EMasterVolume.h"
|
||||
#include "Core/ConfigFile.h"
|
||||
|
||||
namespace dd
|
||||
{
|
||||
@@ -33,7 +34,6 @@ public:
|
||||
m_SFXSlider->SetTexture("Textures/GUI/Menu/SliderBackground.png");
|
||||
m_SFXSlider->SetTextureReleased("Textures/GUI/Menu/SliderHandle.png");
|
||||
m_SFXSlider->AlignVertically();
|
||||
m_SFXSlider->SetPercentage(1.f);
|
||||
|
||||
m_TitleBGM = new GUI::TextureFrame(this, "MainMenuOptionsBGMTitle");
|
||||
m_TitleBGM->SetTop(m_SFXSlider->Bottom() + 20);
|
||||
@@ -44,9 +44,12 @@ public:
|
||||
m_BGMSlider->SetTexture("Textures/GUI/Menu/SliderBackground.png");
|
||||
m_BGMSlider->SetTextureReleased("Textures/GUI/Menu/SliderHandle.png");
|
||||
m_BGMSlider->AlignVertically();
|
||||
m_BGMSlider->SetPercentage(1.f);
|
||||
|
||||
EVENT_SUBSCRIBE_MEMBER(m_ESliderUpdate, &MainMenuOptions::OnSliderUpdate);
|
||||
|
||||
auto config = ResourceManager::Load<ConfigFile>("Config.ini");
|
||||
m_SFXSlider->SetPercentage(config->GetValue<float>("Audio.SFXVolume", 1.f));
|
||||
m_BGMSlider->SetPercentage(config->GetValue<float>("Audio.BGMVolume", 1.f));
|
||||
}
|
||||
|
||||
private:
|
||||
@@ -73,6 +76,11 @@ private:
|
||||
EventBroker->Publish(e);
|
||||
}
|
||||
|
||||
auto config = ResourceManager::Load<ConfigFile>("Config.ini");
|
||||
config->SetValue("Audio.SFXVolume", m_SFXSlider->Percentage());
|
||||
config->SetValue("Audio.BGMVolume", m_BGMSlider->Percentage());
|
||||
config->SaveToDisk();
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user