Fix music volume being weird due to m_volume being shared by ambience and music at the same time

Fix version= being wrong
This commit is contained in:
Crystalwarrior 2019-10-01 04:58:57 +03:00
parent 0eccf1ba22
commit 292c425c78
3 changed files with 6 additions and 6 deletions

View File

@ -3,7 +3,7 @@ QT += core gui widgets network
TARGET = Attorney_Online
TEMPLATE = app
VERSION = 2.8.0.0
VERSION = 2.8.0.2
INCLUDEPATH += $$PWD/include
DESTDIR = $$PWD/bin

View File

@ -37,7 +37,7 @@ private:
AOApplication *ao_app;
bool m_looping = false;
int m_volume = 0;
int m_volume[4] = {0, 0, 0, 0};
// Channel 0 = music
// Channel 1 = ambience

View File

@ -66,7 +66,7 @@ void AOMusicPlayer::play(QString p_song, int channel, bool crossfade)
//Start it
BASS_ChannelPlay(newstream, false);
//Fade in our sample
BASS_ChannelSlideAttribute(newstream, BASS_ATTRIB_VOL, static_cast<float>(m_volume / 100.0f), 1000);
BASS_ChannelSlideAttribute(newstream, BASS_ATTRIB_VOL, static_cast<float>(m_volume[channel] / 100.0f), 1000);
m_stream_list[channel] = newstream;
}
@ -75,7 +75,7 @@ void AOMusicPlayer::play(QString p_song, int channel, bool crossfade)
BASS_ChannelStop(m_stream_list[channel]);
m_stream_list[channel] = newstream;
BASS_ChannelPlay(m_stream_list[channel], false);
this->set_volume(m_volume, channel);
this->set_volume(m_volume[channel], channel);
}
this->set_looping(m_looping); //Have to do this here due to any crossfading-related changes, etc.
@ -88,8 +88,8 @@ void AOMusicPlayer::stop(int channel)
void AOMusicPlayer::set_volume(int p_value, int channel)
{
m_volume = p_value;
float volume = m_volume / 100.0f;
m_volume[channel] = p_value;
float volume = m_volume[channel] / 100.0f;
if (channel < 0)
{
for (int n_stream = 0 ; n_stream < m_channelmax ; ++n_stream)