[Player] Keysounds now respect the volume settings. Sourced from hanubeki-modified-sm-ssc rev. 16fc5b714582 [hanubeki]

This commit is contained in:
AJ Kelly
2012-03-28 19:24:27 -05:00
parent 59b43867c1
commit 3ca54f1000
2 changed files with 8 additions and 4 deletions
+6 -4
View File
@@ -1437,13 +1437,15 @@ void Player::UpdateHoldNotes( int iSongRow, float fDeltaTime, vector<TrackRowTap
tn.HoldResult.fLife = fLife;
tn.HoldResult.hns = hns;
// Stop the playing keysound for the hold note.
// I think this causes crashes too -aj
// Possibly fixed.
// I think this causes crashes too. -aj (Possibly fixed. -?)
Preference<float> *pVolume = Preference<float>::GetPreferenceByName("SoundVolume");
float fVol = pVolume->Get();
if( tn.iKeysoundIndex >= 0 && tn.iKeysoundIndex < (int) m_vKeysounds.size() )
{
float factor = (tn.subType == TapNote::hold_head_roll ? 2.0f * fLifeFraction : 10.0f * fLifeFraction - 8.5f);
// todo: Make sure the player's volume settings are respected. -aj
m_vKeysounds[tn.iKeysoundIndex].SetProperty ("Volume", max(0.0f, min(1.0f, factor)));
m_vKeysounds[tn.iKeysoundIndex].SetProperty ("Volume", max(0.0f, min(1.0f, factor)) * fVol);
}
}