do "skip screen" tests in Init(), since Init() is still called even if we

SetNewScreen() in the screen ctor
This commit is contained in:
Glenn Maynard
2005-02-23 22:36:00 +00:00
parent 5ed6736eef
commit 456c2074e7
3 changed files with 10 additions and 16 deletions
+3 -3
View File
@@ -15,7 +15,10 @@ REGISTER_SCREEN_CLASS( ScreenInstructions );
ScreenInstructions::ScreenInstructions( CString sName ) : ScreenWithMenuElements( sName ) ScreenInstructions::ScreenInstructions( CString sName ) : ScreenWithMenuElements( sName )
{ {
LOG->Trace( "ScreenInstructions::ScreenInstructions()" ); LOG->Trace( "ScreenInstructions::ScreenInstructions()" );
}
void ScreenInstructions::Init()
{
// //
// Skip this screen unless someone chose easy or beginner // Skip this screen unless someone chose easy or beginner
// //
@@ -39,10 +42,7 @@ ScreenInstructions::ScreenInstructions( CString sName ) : ScreenWithMenuElements
if( GAMESTATE->m_PlayMode == PLAY_MODE_INVALID ) if( GAMESTATE->m_PlayMode == PLAY_MODE_INVALID )
RageException::Throw( "The PlayMode has not been set. A theme must set the PlayMode before showing ScreenInstructions." ); RageException::Throw( "The PlayMode has not been set. A theme must set the PlayMode before showing ScreenInstructions." );
}
void ScreenInstructions::Init()
{
ScreenWithMenuElements::Init(); ScreenWithMenuElements::Init();
m_sprHowToPlay.Load( THEME->GetPathG(m_sName,PlayModeToString(GAMESTATE->m_PlayMode)) ); m_sprHowToPlay.Load( THEME->GetPathG(m_sName,PlayModeToString(GAMESTATE->m_PlayMode)) );
+4 -10
View File
@@ -52,7 +52,11 @@ REGISTER_SCREEN_CLASS( ScreenSelectCharacter );
ScreenSelectCharacter::ScreenSelectCharacter( CString sClassName ) : ScreenWithMenuElements( sClassName ) ScreenSelectCharacter::ScreenSelectCharacter( CString sClassName ) : ScreenWithMenuElements( sClassName )
{ {
LOG->Trace( "ScreenSelectCharacter::ScreenSelectCharacter()" ); LOG->Trace( "ScreenSelectCharacter::ScreenSelectCharacter()" );
}
void ScreenSelectCharacter::Init()
{
vector<Character*> apCharacters; vector<Character*> apCharacters;
GAMESTATE->GetCharacters( apCharacters ); GAMESTATE->GetCharacters( apCharacters );
if( apCharacters.empty() ) if( apCharacters.empty() )
@@ -77,16 +81,6 @@ ScreenSelectCharacter::ScreenSelectCharacter( CString sClassName ) : ScreenWithM
return; return;
} }
} }
}
void ScreenSelectCharacter::Init()
{
vector<Character*> apCharacters;
GAMESTATE->GetCharacters( apCharacters );
if( apCharacters.empty() )
return;
ScreenWithMenuElements::Init(); ScreenWithMenuElements::Init();
+3 -3
View File
@@ -26,17 +26,17 @@ REGISTER_SCREEN_CLASS( ScreenSelectGroup );
ScreenSelectGroup::ScreenSelectGroup( CString sClassName ) : ScreenWithMenuElements( sClassName ) ScreenSelectGroup::ScreenSelectGroup( CString sClassName ) : ScreenWithMenuElements( sClassName )
{ {
LOG->Trace( "ScreenSelectGroup::ScreenSelectGroup()" ); LOG->Trace( "ScreenSelectGroup::ScreenSelectGroup()" );
}
void ScreenSelectGroup::Init()
{
if( !PREFSMAN->m_bShowSelectGroup ) if( !PREFSMAN->m_bShowSelectGroup )
{ {
GAMESTATE->m_sPreferredSongGroup = GROUP_ALL_MUSIC; GAMESTATE->m_sPreferredSongGroup = GROUP_ALL_MUSIC;
HandleScreenMessage( SM_GoToNextScreen ); HandleScreenMessage( SM_GoToNextScreen );
return; return;
} }
}
void ScreenSelectGroup::Init()
{
ScreenWithMenuElements::Init(); ScreenWithMenuElements::Init();
vector<Song*> aAllSongs; vector<Song*> aAllSongs;