diff --git a/stepmania/src/GameCommand.cpp b/stepmania/src/GameCommand.cpp index b5de4736af..e8bb186c89 100644 --- a/stepmania/src/GameCommand.cpp +++ b/stepmania/src/GameCommand.cpp @@ -587,7 +587,7 @@ static HighScore MakeRandomHighScore() { HighScore hs; hs.sName = "FAKE"; - hs.grade = (Grade)SCALE( rand()%5, 0, 4, GRADE_TIER_1, GRADE_TIER_5 ); + hs.grade = (Grade)SCALE( rand()%5, 0, 4, GRADE_TIER_01, GRADE_TIER_05 ); hs.iScore = rand()%100*1000; hs.fPercentDP = randomf( 0.5f, 1.0f ); hs.fSurviveSeconds = randomf( 30.0f, 100.0f ); diff --git a/stepmania/src/GameState.cpp b/stepmania/src/GameState.cpp index 4c0c88f704..e361b9c4d2 100644 --- a/stepmania/src/GameState.cpp +++ b/stepmania/src/GameState.cpp @@ -951,7 +951,7 @@ bool GameState::HasEarnedExtraStage() const if( PREFSMAN->m_bPickExtraStage && this->IsExtraStage() && !this->m_bAllow2ndExtraStage ) continue; - if( STATSMAN->m_CurStageStats.m_player[pn].GetGrade() <= GRADE_TIER_3 ) + if( STATSMAN->m_CurStageStats.m_player[pn].GetGrade() <= GRADE_TIER_03 ) return true; } } diff --git a/stepmania/src/Grade.cpp b/stepmania/src/Grade.cpp index 1eaa1ece10..fff6f3351b 100644 --- a/stepmania/src/Grade.cpp +++ b/stepmania/src/Grade.cpp @@ -3,6 +3,8 @@ #include "RageUtil.h" #include "ThemeManager.h" #include "RageLog.h" +#include "EnumHelper.h" +#include "LuaManager.h" CString GradeToThemedString( Grade g ) { @@ -17,13 +19,13 @@ CString GradeToOldString( Grade g ) // string is meant to be human readable switch( g ) { - case GRADE_TIER_1: return "AAAA"; - case GRADE_TIER_2: return "AAA"; - case GRADE_TIER_3: return "AA"; - case GRADE_TIER_4: return "A"; - case GRADE_TIER_5: return "B"; - case GRADE_TIER_6: return "C"; - case GRADE_TIER_7: return "D"; + case GRADE_TIER_01: return "AAAA"; + case GRADE_TIER_02: return "AAA"; + case GRADE_TIER_03: return "AA"; + case GRADE_TIER_04: return "A"; + case GRADE_TIER_05: return "B"; + case GRADE_TIER_06: return "C"; + case GRADE_TIER_07: return "D"; case GRADE_FAILED: return "E"; case GRADE_NO_DATA: return "N"; default: return "N"; @@ -36,13 +38,13 @@ Grade StringToGrade( const CString &sGrade ) s.MakeUpper(); // for backward compatibility - if ( s == "AAAA" ) return GRADE_TIER_1; - else if( s == "AAA" ) return GRADE_TIER_2; - else if( s == "AA" ) return GRADE_TIER_3; - else if( s == "A" ) return GRADE_TIER_4; - else if( s == "B" ) return GRADE_TIER_5; - else if( s == "C" ) return GRADE_TIER_6; - else if( s == "D" ) return GRADE_TIER_7; + if ( s == "AAAA" ) return GRADE_TIER_01; + else if( s == "AAA" ) return GRADE_TIER_02; + else if( s == "AA" ) return GRADE_TIER_03; + else if( s == "A" ) return GRADE_TIER_04; + else if( s == "B" ) return GRADE_TIER_05; + else if( s == "C" ) return GRADE_TIER_06; + else if( s == "D" ) return GRADE_TIER_07; else if( s == "E" ) return GRADE_FAILED; else if( s == "N" ) return GRADE_NO_DATA; @@ -59,6 +61,18 @@ Grade StringToGrade( const CString &sGrade ) return GRADE_NO_DATA; }; +static void LuaGrade(lua_State* L) +{ + FOREACH_Grade( g ) + { + CString s = GradeToString(g); + s.MakeUpper(); + LUA->SetGlobal( "GRADE_"+s, g ); + } + LUA->SetGlobal( "NUM_GRADES", NUM_GRADES ); +} +REGISTER_WITH_LUA_FUNCTION( LuaGrade ); + /* * (c) 2001-2004 Chris Danford * All rights reserved. diff --git a/stepmania/src/Grade.h b/stepmania/src/Grade.h index cec3ce05b7..3a7f9cc963 100644 --- a/stepmania/src/Grade.h +++ b/stepmania/src/Grade.h @@ -8,15 +8,15 @@ #define NUM_GRADE_TIERS 20 enum Grade { - GRADE_TIER_1, // = AAAA - GRADE_TIER_2, // = AAA - GRADE_TIER_3, // = AA - GRADE_TIER_4, // = A - GRADE_TIER_5, // = B - GRADE_TIER_6, // = C - GRADE_TIER_7, // = D - GRADE_TIER_8, - GRADE_TIER_9, + GRADE_TIER_01, // = AAAA + GRADE_TIER_02, // = AAA + GRADE_TIER_03, // = AA + GRADE_TIER_04, // = A + GRADE_TIER_05, // = B + GRADE_TIER_06, // = C + GRADE_TIER_07, // = D + GRADE_TIER_08, + GRADE_TIER_09, GRADE_TIER_10, GRADE_TIER_11, GRADE_TIER_12, diff --git a/stepmania/src/GradeDisplay.cpp b/stepmania/src/GradeDisplay.cpp index a5a366fad1..b04302bcda 100644 --- a/stepmania/src/GradeDisplay.cpp +++ b/stepmania/src/GradeDisplay.cpp @@ -97,13 +97,13 @@ int GradeDisplay::GetFrameIndex( PlayerNumber pn, Grade g ) int iFrame; switch( g ) { - case GRADE_TIER_1: iFrame = 0; break; - case GRADE_TIER_2: iFrame = 1; break; - case GRADE_TIER_3: iFrame = 2; break; - case GRADE_TIER_4: iFrame = 3; break; - case GRADE_TIER_5: iFrame = 4; break; - case GRADE_TIER_6: iFrame = 5; break; - case GRADE_TIER_7: iFrame = 6; break; + case GRADE_TIER_01: iFrame = 0; break; + case GRADE_TIER_02: iFrame = 1; break; + case GRADE_TIER_03: iFrame = 2; break; + case GRADE_TIER_04: iFrame = 3; break; + case GRADE_TIER_05: iFrame = 4; break; + case GRADE_TIER_06: iFrame = 5; break; + case GRADE_TIER_07: iFrame = 6; break; case GRADE_FAILED: iFrame = 7; break; default: iFrame = 7; break; } diff --git a/stepmania/src/HighScore.cpp b/stepmania/src/HighScore.cpp index 3a5214ec9c..669af35a71 100644 --- a/stepmania/src/HighScore.cpp +++ b/stepmania/src/HighScore.cpp @@ -96,7 +96,7 @@ void HighScore::LoadFromNode( const XNode* pNode ) radarValues.LoadFromNode( pRadarValues ); /* Validate input. */ - grade = clamp( grade, GRADE_TIER_1, GRADE_FAILED ); + grade = clamp( grade, GRADE_TIER_01, GRADE_FAILED ); } CString HighScore::GetDisplayName() const diff --git a/stepmania/src/PlayerStageStats.cpp b/stepmania/src/PlayerStageStats.cpp index 578fe6b2ba..777ef3792e 100644 --- a/stepmania/src/PlayerStageStats.cpp +++ b/stepmania/src/PlayerStageStats.cpp @@ -166,7 +166,7 @@ Grade PlayerStageStats::GetGrade() const iTapNoteScores[TNS_MISS] == 0 && iTapNoteScores[TNS_HIT_MINE] == 0 && iHoldNoteScores[HNS_NG] == 0 ) - return GRADE_TIER_1; + return GRADE_TIER_01; if( iTapNoteScores[TNS_PERFECT] > 0 && iTapNoteScores[TNS_GREAT] == 0 && @@ -175,9 +175,9 @@ Grade PlayerStageStats::GetGrade() const iTapNoteScores[TNS_MISS] == 0 && iTapNoteScores[TNS_HIT_MINE] == 0 && iHoldNoteScores[HNS_NG] == 0 ) - return GRADE_TIER_2; + return GRADE_TIER_02; - return max( grade, GRADE_TIER_3 ); + return max( grade, GRADE_TIER_03 ); } return grade; diff --git a/stepmania/src/ScreenEvaluation.cpp b/stepmania/src/ScreenEvaluation.cpp index 563a35b7d7..cffad62063 100644 --- a/stepmania/src/ScreenEvaluation.cpp +++ b/stepmania/src/ScreenEvaluation.cpp @@ -847,9 +847,9 @@ void ScreenEvaluation::Init() switch( best_grade ) { - case GRADE_TIER_1: - case GRADE_TIER_2: - case GRADE_TIER_3: + case GRADE_TIER_01: + case GRADE_TIER_02: + case GRADE_TIER_03: this->PostScreenMessage( SM_PlayCheer, CHEER_DELAY_SECONDS ); break; } diff --git a/stepmania/src/ScreenNameEntryTraditional.cpp b/stepmania/src/ScreenNameEntryTraditional.cpp index ee7b4a9dd4..f701bb7737 100644 --- a/stepmania/src/ScreenNameEntryTraditional.cpp +++ b/stepmania/src/ScreenNameEntryTraditional.cpp @@ -152,7 +152,7 @@ ScreenNameEntryTraditional::ScreenNameEntryTraditional( CString sClassName ) : S ss.m_player[p].iActualDancePoints = 985; HighScore hs; - hs.grade = GRADE_TIER_3; + hs.grade = GRADE_TIER_03; hs.fPercentDP = ss.m_player[p].GetPercentDancePoints(); hs.iScore = ss.m_player[p].iScore; StepsType st = GAMESTATE->GetCurrentStyle()->m_StepsType; diff --git a/stepmania/src/ScreenNetEvaluation.cpp b/stepmania/src/ScreenNetEvaluation.cpp index 7e3c9e1e10..fe8dff2893 100644 --- a/stepmania/src/ScreenNetEvaluation.cpp +++ b/stepmania/src/ScreenNetEvaluation.cpp @@ -158,7 +158,7 @@ void ScreenNetEvaluation::HandleScreenMessage( const ScreenMessage SM ) break; m_textUsers[i].SetText( NSMAN->m_PlayerNames[NSMAN->m_EvalPlayerData[i].name] ); - if ( NSMAN->m_EvalPlayerData[i].grade < GRADE_TIER_3 ) //Yes, hardcoded (I'd like to leave it that way) + if ( NSMAN->m_EvalPlayerData[i].grade < GRADE_TIER_03 ) //Yes, hardcoded (I'd like to leave it that way) m_textUsers[i].TurnRainbowOn(); else m_textUsers[i].TurnRainbowOff(); diff --git a/stepmania/src/SongUtil.cpp b/stepmania/src/SongUtil.cpp index f8ade9c6f5..dae475e87d 100644 --- a/stepmania/src/SongUtil.cpp +++ b/stepmania/src/SongUtil.cpp @@ -123,7 +123,7 @@ void SongUtil::SortSongPointerArrayByGrade( vector &arraySongPointers ) CString foo; foo.reserve(256); - for( int g=GRADE_TIER_1; g<=GRADE_NO_DATA; ++g ) + for( int g=GRADE_TIER_01; g<=GRADE_NO_DATA; ++g ) AppendOctal( iCounts[g], 3, foo ); vals.push_back( val(pSong, foo) ); } @@ -261,7 +261,7 @@ CString SongUtil::GetSectionNameFromSongAndSort( const Song* pSong, SortOrder so int iCounts[NUM_GRADES]; PROFILEMAN->GetMachineProfile()->GetGrades( pSong, GAMESTATE->GetCurrentStyle()->m_StepsType, iCounts ); - for( int i=GRADE_TIER_1; i 0 ) diff --git a/stepmania/src/StatsManager.cpp b/stepmania/src/StatsManager.cpp index 17aad7f43f..748fc37850 100644 --- a/stepmania/src/StatsManager.cpp +++ b/stepmania/src/StatsManager.cpp @@ -218,7 +218,7 @@ static Grade GetBestGrade() static Grade GetWorstGrade() { - Grade g = GRADE_TIER_1; + Grade g = GRADE_TIER_01; FOREACH_EnabledPlayer( pn ) g = max( g, STATSMAN->m_CurStageStats.m_player[pn].GetGrade() ); return g; diff --git a/stepmania/src/UnlockManager.cpp b/stepmania/src/UnlockManager.cpp index 0f40d4e0d2..e4b004fcaf 100644 --- a/stepmania/src/UnlockManager.cpp +++ b/stepmania/src/UnlockManager.cpp @@ -152,8 +152,8 @@ static float GetArcadePoints( const Profile *pProfile ) { switch(g) { - case GRADE_TIER_1: - case GRADE_TIER_2: fAP += 9 * pProfile->m_iNumStagesPassedByGrade[g]; break; + case GRADE_TIER_01: + case GRADE_TIER_02: fAP += 9 * pProfile->m_iNumStagesPassedByGrade[g]; break; default: fAP += 1 * pProfile->m_iNumStagesPassedByGrade[g]; break; case GRADE_FAILED: @@ -187,13 +187,13 @@ static float GetSongPoints( const Profile *pProfile ) { switch( g ) { - case GRADE_TIER_1:/*AAAA*/ fSP += 20 * pProfile->m_iNumStagesPassedByGrade[g]; break; - case GRADE_TIER_2:/*AAA*/ fSP += 10* pProfile->m_iNumStagesPassedByGrade[g]; break; - case GRADE_TIER_3:/*AA*/ fSP += 5* pProfile->m_iNumStagesPassedByGrade[g]; break; - case GRADE_TIER_4:/*A*/ fSP += 4* pProfile->m_iNumStagesPassedByGrade[g]; break; - case GRADE_TIER_5:/*B*/ fSP += 3* pProfile->m_iNumStagesPassedByGrade[g]; break; - case GRADE_TIER_6:/*C*/ fSP += 2* pProfile->m_iNumStagesPassedByGrade[g]; break; - case GRADE_TIER_7:/*D*/ fSP += 1* pProfile->m_iNumStagesPassedByGrade[g]; break; + case GRADE_TIER_01:/*AAAA*/ fSP += 20 * pProfile->m_iNumStagesPassedByGrade[g]; break; + case GRADE_TIER_02:/*AAA*/ fSP += 10* pProfile->m_iNumStagesPassedByGrade[g]; break; + case GRADE_TIER_03:/*AA*/ fSP += 5* pProfile->m_iNumStagesPassedByGrade[g]; break; + case GRADE_TIER_04:/*A*/ fSP += 4* pProfile->m_iNumStagesPassedByGrade[g]; break; + case GRADE_TIER_05:/*B*/ fSP += 3* pProfile->m_iNumStagesPassedByGrade[g]; break; + case GRADE_TIER_06:/*C*/ fSP += 2* pProfile->m_iNumStagesPassedByGrade[g]; break; + case GRADE_TIER_07:/*D*/ fSP += 1* pProfile->m_iNumStagesPassedByGrade[g]; break; case GRADE_FAILED: case GRADE_NO_DATA: ; // no points