add shared Stage values (not per-player Stage values) to simplify StageDisplay

This commit is contained in:
Chris Danford
2008-03-29 15:13:52 +00:00
parent 33d8a5fbf4
commit 4f126462a4
5 changed files with 42 additions and 5 deletions
+10 -1
View File
@@ -383,7 +383,14 @@ StringToX( EditMode );
LuaXType( EditMode );
static const char *StageNames[] = {
"Normal",
"1st",
"2nd",
"3rd",
"4th",
"5th",
"6th",
"Next",
"Final",
"Extra1",
"Extra2",
"Nonstop",
@@ -394,6 +401,8 @@ static const char *StageNames[] = {
};
XToString( Stage );
LuaXType( Stage );
XToLocalizedString( Stage );
LuaFunction( StageToLocalizedString, StageToLocalizedString(Enum::Check<Stage>(L, 1)) );
static const char *MultiPlayerStatusNames[] = {
+10 -2
View File
@@ -455,9 +455,16 @@ const RString& EditModeToString( EditMode em );
EditMode StringToEditMode( const RString& s );
LuaDeclareType( EditMode );
enum Stage
enum Stage // Shared stage values (not per-player) that are shown in StageDisplay
{
Stage_Normal,
Stage_1st,
Stage_2nd,
Stage_3rd,
Stage_4th,
Stage_5th,
Stage_6th,
Stage_Next, // after Stage_6th but not Final. This won't normally happen because 7 stages is the max in the UI.
Stage_Final,
Stage_Extra1,
Stage_Extra2,
Stage_Nonstop,
@@ -470,6 +477,7 @@ enum Stage
};
const RString& StageToString( Stage s );
LuaDeclareType( Stage );
const RString& StageToLocalizedString( Stage i );
enum ProfileLoadResult
+20 -1
View File
@@ -911,6 +911,11 @@ int GameState::GetSmallestNumStagesLeftForAnyHumanPlayer() const
return iSmallest;
}
bool GameState::IsFinalStageForAnyHumanPlayer() const
{
return GetSmallestNumStagesLeftForAnyHumanPlayer() == 1;
}
bool GameState::IsAnExtraStage() const
{
if( m_MasterPlayerNumber == PlayerNumber_Invalid )
@@ -942,7 +947,21 @@ Stage GameState::GetCurrentStage() const
else if( m_PlayMode == PLAY_MODE_ENDLESS ) return Stage_Endless;
else if( IsExtraStage() ) return Stage_Extra1;
else if( IsExtraStage2() ) return Stage_Extra2;
else return Stage_Normal;
else if( IsFinalStageForAnyHumanPlayer() ) return Stage_Final;
else
{
switch( this->m_iCurrentStageIndex )
{
case 0: return Stage_1st;
case 1: return Stage_2nd;
case 2: return Stage_3rd;
case 3: return Stage_4th;
case 4: return Stage_5th;
case 5: return Stage_6th;
default: return Stage_Next;
}
}
}
int GameState::GetCourseSongIndex() const
+1
View File
@@ -141,6 +141,7 @@ public:
void FinishStage();
int GetNumStagesLeft( PlayerNumber pn ) const;
int GetSmallestNumStagesLeftForAnyHumanPlayer() const;
bool IsFinalStageForAnyHumanPlayer() const;
bool IsAnExtraStage() const;
bool IsExtraStage() const;
bool IsExtraStage2() const;
+1 -1
View File
@@ -99,7 +99,7 @@ void ScreenEvaluation::Init()
GAMESTATE->SetCurrentStyle( GameManager::GameAndStringToStyle(GameManager::GetDefaultGame(),"versus") );
ss.m_playMode = GAMESTATE->m_PlayMode;
ss.m_pStyle = GAMESTATE->GetCurrentStyle();
ss.m_Stage = Stage_Normal;
ss.m_Stage = Stage_1st;
GAMESTATE->m_MasterPlayerNumber = PLAYER_1;
GAMESTATE->m_pCurSong.Set( SONGMAN->GetRandomSong() );
ss.m_vpPlayedSongs.push_back( GAMESTATE->m_pCurSong );