use SoundEffectControl

This commit is contained in:
Glenn Maynard
2007-01-16 01:39:04 +00:00
parent 762be733df
commit 9046f91eb2
3 changed files with 25 additions and 0 deletions
+4
View File
@@ -110,6 +110,10 @@ public:
/* Load a RageSoundReader that you've set up yourself. Sample rate conversion will
* be set up only if needed. Doesn't fail. */
void LoadSoundReader( RageSoundReader *pSound );
/* Get the loaded RageSoundReader. While playing, only properties can be set. */
RageSoundReader *GetSoundReader() { return m_pSource; }
void Unload();
bool IsLoaded() const;
+19
View File
@@ -980,6 +980,17 @@ void ScreenGameplay::SetupSong( int iSongIndex )
m_AutoKeysounds.Load( pi->GetStepsAndTrailIndex(), nd );
}
{
RString sType;
switch( GAMESTATE->m_SongOptions.GetCurrent().m_SoundEffectType )
{
case SongOptions::SOUNDEFFECT_OFF: sType = ""; break;
case SongOptions::SOUNDEFFECT_SPEED: sType = "SoundEffectControl_Speed"; break;
case SongOptions::SOUNDEFFECT_PITCH: sType = "SoundEffectControl_Pitch"; break;
}
pi->m_SoundEffectControl.Load( sType, pi->GetPlayerState(), &pi->m_NoteData );
}
// Put course options into effect. Do this after Player::Load so
// that mods aren't double-applied.
@@ -1254,6 +1265,12 @@ void ScreenGameplay::LoadNextSong()
* to compete with other loading. */
m_AutoKeysounds.FinishLoading();
m_pSoundMusic = m_AutoKeysounds.GetSound();
/* Give SoundEffectControls the new RageSoundReaders. */
FOREACH_EnabledPlayerInfo( m_vPlayerInfo, pi )
{
pi->m_SoundEffectControl.SetSoundReader( m_pSoundMusic->GetSoundReader() );
}
}
void ScreenGameplay::LoadLights()
@@ -1587,6 +1604,8 @@ void ScreenGameplay::Update( float fDeltaTime )
{
pi->GetPlayerState()->m_HealthState = PlayerState::ALIVE;
}
pi->m_SoundEffectControl.Update( fDeltaTime );
}
if( GAMESTATE->m_SongOptions.GetCurrent().m_fHaste != 0.0f )
+2
View File
@@ -18,6 +18,7 @@
#include "PlayerStageStats.h"
#include "PlayerState.h"
#include "InputEventPlus.h"
#include "SoundEffectControl.h"
class LyricsLoader;
class ActiveAttackList;
@@ -67,6 +68,7 @@ public:
bool m_bIsDummy;
PlayerState m_PlayerStateDummy;
PlayerStageStats m_PlayerStageStatsDummy;
SoundEffectControl m_SoundEffectControl;
vector<Steps*> m_vpStepsQueue; // size may be >1 if playing a course
vector<AttackArray> m_asModifiersQueue;// size may be >1 if playing a course