diff --git a/stepmania/src/ScreenAttract.cpp b/stepmania/src/ScreenAttract.cpp index 7a0bbcebec..14c4cee5b7 100644 --- a/stepmania/src/ScreenAttract.cpp +++ b/stepmania/src/ScreenAttract.cpp @@ -8,7 +8,6 @@ #include "PrefsManager.h" #include "RageLog.h" #include "SongManager.h" -#include "AnnouncerManager.h" #include "GameState.h" #include "GameManager.h" #include "InputMapper.h" @@ -22,7 +21,7 @@ REGISTER_SCREEN_CLASS( ScreenAttract ); -ScreenAttract::ScreenAttract( CString sName, bool bResetGameState ) : Screen( sName ) +ScreenAttract::ScreenAttract( CString sName, bool bResetGameState ) : ScreenWithMenuElements( sName ) { if( bResetGameState ) GAMESTATE->Reset(); @@ -36,18 +35,7 @@ void ScreenAttract::Init() { LOG->Trace( "ScreenAttract::ScreenAttract(%s)", m_sName.c_str() ); - Screen::Init(); - - m_In.Load( THEME->GetPathB(m_sName,"in") ); - m_In.StartTransitioning(); - m_In.SetDrawOrder( DRAW_ORDER_TRANSITIONS ); - this->AddChild( &m_In ); - - m_Out.Load( THEME->GetPathB(m_sName,"out") ); - m_Out.SetDrawOrder( DRAW_ORDER_TRANSITIONS ); - this->AddChild( &m_Out ); - - SOUND->PlayOnceFromDir( ANNOUNCER->GetPathTo(m_sName) ); + ScreenWithMenuElements::Init(); } @@ -144,7 +132,7 @@ void ScreenAttract::Update( float fDelta ) else SOUND->PlayMusic( "" ); // stop music } - Screen::Update(fDelta); + ScreenWithMenuElements::Update(fDelta); } void ScreenAttract::HandleScreenMessage( const ScreenMessage SM ) diff --git a/stepmania/src/ScreenAttract.h b/stepmania/src/ScreenAttract.h index d25558c1df..74326492ca 100644 --- a/stepmania/src/ScreenAttract.h +++ b/stepmania/src/ScreenAttract.h @@ -3,11 +3,10 @@ #ifndef ScreenAttract_H #define ScreenAttract_H -#include "Screen.h" -#include "Transition.h" +#include "ScreenWithMenuElements.h" -class ScreenAttract : public Screen +class ScreenAttract : public ScreenWithMenuElements { public: ScreenAttract( CString sName, bool bResetGameState=true ); @@ -21,9 +20,6 @@ public: protected: virtual bool AutoBeginFadingOut() const { return true; } - - Transition m_In; - Transition m_Out; }; diff --git a/stepmania/src/ScreenWithMenuElements.cpp b/stepmania/src/ScreenWithMenuElements.cpp index 44c90a2da8..54b60c16c1 100644 --- a/stepmania/src/ScreenWithMenuElements.cpp +++ b/stepmania/src/ScreenWithMenuElements.cpp @@ -8,6 +8,8 @@ #include "Style.h" #include "PrefsManager.h" #include "ScreenManager.h" +#include "GameSoundManager.h" +#include "AnnouncerManager.h" #define TIMER_SECONDS THEME->GetMetricI(m_sName,"TimerSeconds") #define TIMER_STEALTH THEME->GetMetricB(m_sName,"TimerStealth") @@ -107,6 +109,8 @@ void ScreenWithMenuElements::Init() this->AddChild( &m_Back ); m_In.StartTransitioning(); + + SOUND->PlayOnceFromDir( ANNOUNCER->GetPathTo(m_sName) ); } ScreenWithMenuElements::~ScreenWithMenuElements()