add shared Stage values (not per-player Stage values) to simplify StageDisplay
This commit is contained in:
@@ -383,7 +383,14 @@ StringToX( EditMode );
|
|||||||
LuaXType( EditMode );
|
LuaXType( EditMode );
|
||||||
|
|
||||||
static const char *StageNames[] = {
|
static const char *StageNames[] = {
|
||||||
"Normal",
|
"1st",
|
||||||
|
"2nd",
|
||||||
|
"3rd",
|
||||||
|
"4th",
|
||||||
|
"5th",
|
||||||
|
"6th",
|
||||||
|
"Next",
|
||||||
|
"Final",
|
||||||
"Extra1",
|
"Extra1",
|
||||||
"Extra2",
|
"Extra2",
|
||||||
"Nonstop",
|
"Nonstop",
|
||||||
@@ -394,6 +401,8 @@ static const char *StageNames[] = {
|
|||||||
};
|
};
|
||||||
XToString( Stage );
|
XToString( Stage );
|
||||||
LuaXType( Stage );
|
LuaXType( Stage );
|
||||||
|
XToLocalizedString( Stage );
|
||||||
|
LuaFunction( StageToLocalizedString, StageToLocalizedString(Enum::Check<Stage>(L, 1)) );
|
||||||
|
|
||||||
|
|
||||||
static const char *MultiPlayerStatusNames[] = {
|
static const char *MultiPlayerStatusNames[] = {
|
||||||
|
|||||||
@@ -455,9 +455,16 @@ const RString& EditModeToString( EditMode em );
|
|||||||
EditMode StringToEditMode( const RString& s );
|
EditMode StringToEditMode( const RString& s );
|
||||||
LuaDeclareType( EditMode );
|
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_Extra1,
|
||||||
Stage_Extra2,
|
Stage_Extra2,
|
||||||
Stage_Nonstop,
|
Stage_Nonstop,
|
||||||
@@ -470,6 +477,7 @@ enum Stage
|
|||||||
};
|
};
|
||||||
const RString& StageToString( Stage s );
|
const RString& StageToString( Stage s );
|
||||||
LuaDeclareType( Stage );
|
LuaDeclareType( Stage );
|
||||||
|
const RString& StageToLocalizedString( Stage i );
|
||||||
|
|
||||||
|
|
||||||
enum ProfileLoadResult
|
enum ProfileLoadResult
|
||||||
|
|||||||
@@ -911,6 +911,11 @@ int GameState::GetSmallestNumStagesLeftForAnyHumanPlayer() const
|
|||||||
return iSmallest;
|
return iSmallest;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool GameState::IsFinalStageForAnyHumanPlayer() const
|
||||||
|
{
|
||||||
|
return GetSmallestNumStagesLeftForAnyHumanPlayer() == 1;
|
||||||
|
}
|
||||||
|
|
||||||
bool GameState::IsAnExtraStage() const
|
bool GameState::IsAnExtraStage() const
|
||||||
{
|
{
|
||||||
if( m_MasterPlayerNumber == PlayerNumber_Invalid )
|
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( m_PlayMode == PLAY_MODE_ENDLESS ) return Stage_Endless;
|
||||||
else if( IsExtraStage() ) return Stage_Extra1;
|
else if( IsExtraStage() ) return Stage_Extra1;
|
||||||
else if( IsExtraStage2() ) return Stage_Extra2;
|
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
|
int GameState::GetCourseSongIndex() const
|
||||||
|
|||||||
@@ -141,6 +141,7 @@ public:
|
|||||||
void FinishStage();
|
void FinishStage();
|
||||||
int GetNumStagesLeft( PlayerNumber pn ) const;
|
int GetNumStagesLeft( PlayerNumber pn ) const;
|
||||||
int GetSmallestNumStagesLeftForAnyHumanPlayer() const;
|
int GetSmallestNumStagesLeftForAnyHumanPlayer() const;
|
||||||
|
bool IsFinalStageForAnyHumanPlayer() const;
|
||||||
bool IsAnExtraStage() const;
|
bool IsAnExtraStage() const;
|
||||||
bool IsExtraStage() const;
|
bool IsExtraStage() const;
|
||||||
bool IsExtraStage2() const;
|
bool IsExtraStage2() const;
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ void ScreenEvaluation::Init()
|
|||||||
GAMESTATE->SetCurrentStyle( GameManager::GameAndStringToStyle(GameManager::GetDefaultGame(),"versus") );
|
GAMESTATE->SetCurrentStyle( GameManager::GameAndStringToStyle(GameManager::GetDefaultGame(),"versus") );
|
||||||
ss.m_playMode = GAMESTATE->m_PlayMode;
|
ss.m_playMode = GAMESTATE->m_PlayMode;
|
||||||
ss.m_pStyle = GAMESTATE->GetCurrentStyle();
|
ss.m_pStyle = GAMESTATE->GetCurrentStyle();
|
||||||
ss.m_Stage = Stage_Normal;
|
ss.m_Stage = Stage_1st;
|
||||||
GAMESTATE->m_MasterPlayerNumber = PLAYER_1;
|
GAMESTATE->m_MasterPlayerNumber = PLAYER_1;
|
||||||
GAMESTATE->m_pCurSong.Set( SONGMAN->GetRandomSong() );
|
GAMESTATE->m_pCurSong.Set( SONGMAN->GetRandomSong() );
|
||||||
ss.m_vpPlayedSongs.push_back( GAMESTATE->m_pCurSong );
|
ss.m_vpPlayedSongs.push_back( GAMESTATE->m_pCurSong );
|
||||||
|
|||||||
Reference in New Issue
Block a user