MasterVolume now working due to previous refactoring.
TODO: Make it depend on individual volume value.
This commit is contained in:
@@ -50,12 +50,12 @@ void dd::Systems::SoundSystem::Initialize()
|
|||||||
e.isAmbient = true;
|
e.isAmbient = true;
|
||||||
EventBroker->Publish(e);
|
EventBroker->Publish(e);
|
||||||
}
|
}
|
||||||
/*{
|
{
|
||||||
dd::Events::MasterVolume e;
|
dd::Events::MasterVolume e;
|
||||||
e.isAmbient = true;
|
e.isAmbient = true;
|
||||||
e.gain = 0.001f;
|
e.gain = 1.f;
|
||||||
EventBroker->Publish(e);
|
EventBroker->Publish(e);
|
||||||
}*/
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void dd::Systems::SoundSystem::Update(double dt)
|
void dd::Systems::SoundSystem::Update(double dt)
|
||||||
@@ -151,13 +151,22 @@ bool dd::Systems::SoundSystem::OnStopSound(const dd::Events::StopSound &event)
|
|||||||
|
|
||||||
bool dd::Systems::SoundSystem::OnMasterVolume(const dd::Events::MasterVolume &event)
|
bool dd::Systems::SoundSystem::OnMasterVolume(const dd::Events::MasterVolume &event)
|
||||||
{
|
{
|
||||||
|
//TODO: Make the volume depend on the value given when stored.
|
||||||
|
//TODO: .. now it ONLY uses the master volume
|
||||||
if (event.isAmbient) {
|
if (event.isAmbient) {
|
||||||
m_BGMMasterVolume = event.gain;
|
m_BGMMasterVolume = event.gain;
|
||||||
|
for (auto item : m_BGMSourcesToBuffers)
|
||||||
|
{
|
||||||
|
alSourcef(item.first, AL_GAIN, event.gain);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (!event.isAmbient) {
|
else if (!event.isAmbient) {
|
||||||
m_SFXMasterVolume = event.gain;
|
m_SFXMasterVolume = event.gain;
|
||||||
|
for (auto item : m_SFXSourcesToBuffers)
|
||||||
|
{
|
||||||
|
alSourcef(item.first, AL_GAIN, event.gain);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
m_World->GetEntities();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//On contact: play the sound given in the CCOllisionSound.
|
//On contact: play the sound given in the CCOllisionSound.
|
||||||
|
|||||||
Reference in New Issue
Block a user