use mixed case values for enum Grade so that enum matches strings matches Lua
This commit is contained in:
@@ -114,7 +114,7 @@ function ScreenBranchNetAfterEval()
|
|||||||
end
|
end
|
||||||
|
|
||||||
function SelectEndingScreen()
|
function SelectEndingScreen()
|
||||||
if GetBestFinalGrade() >= GRADE_TIER03 then return "ScreenMusicScroll" end
|
if GetBestFinalGrade() >= Grade_Tier03 then return "ScreenMusicScroll" end
|
||||||
return "ScreenCredits"
|
return "ScreenCredits"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -612,7 +612,7 @@ static HighScore MakeRandomHighScore( float fPercentDP )
|
|||||||
{
|
{
|
||||||
HighScore hs;
|
HighScore hs;
|
||||||
hs.SetName( "FAKE" );
|
hs.SetName( "FAKE" );
|
||||||
hs.SetGrade( (Grade)SCALE( rand()%5, 0, 4, GRADE_TIER01, GRADE_TIER05 ) );
|
hs.SetGrade( (Grade)SCALE( rand()%5, 0, 4, Grade_Tier01, Grade_Tier05 ) );
|
||||||
hs.SetScore( rand()%100*1000 );
|
hs.SetScore( rand()%100*1000 );
|
||||||
hs.SetPercentDP( fPercentDP );
|
hs.SetPercentDP( fPercentDP );
|
||||||
hs.SetSurviveSeconds( randomf(30.0f, 100.0f) );
|
hs.SetSurviveSeconds( randomf(30.0f, 100.0f) );
|
||||||
|
|||||||
@@ -949,7 +949,7 @@ bool GameState::HasEarnedExtraStage() const
|
|||||||
if( PREFSMAN->m_bPickExtraStage && this->IsExtraStage() && !this->m_bAllow2ndExtraStage )
|
if( PREFSMAN->m_bPickExtraStage && this->IsExtraStage() && !this->m_bAllow2ndExtraStage )
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if( STATSMAN->m_CurStageStats.m_player[pn].GetGrade() <= GRADE_TIER03 )
|
if( STATSMAN->m_CurStageStats.m_player[pn].GetGrade() <= Grade_Tier03 )
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1464,7 +1464,7 @@ void GameState::GetRankingFeats( PlayerNumber pn, vector<RankingFeat> &asFeatsOu
|
|||||||
feat.Type = RankingFeat::CATEGORY;
|
feat.Type = RankingFeat::CATEGORY;
|
||||||
feat.Feat = ssprintf("MR #%d in Type %c (%d)", j+1, 'A'+rc, stats.GetAverageMeter(pn) );
|
feat.Feat = ssprintf("MR #%d in Type %c (%d)", j+1, 'A'+rc, stats.GetAverageMeter(pn) );
|
||||||
feat.pStringToFill = hs.GetNameMutable();
|
feat.pStringToFill = hs.GetNameMutable();
|
||||||
feat.grade = GRADE_NO_DATA;
|
feat.grade = Grade_NoData;
|
||||||
feat.iScore = hs.GetScore();
|
feat.iScore = hs.GetScore();
|
||||||
feat.fPercentDP = hs.GetPercentDP();
|
feat.fPercentDP = hs.GetPercentDP();
|
||||||
asFeatsOut.push_back( feat );
|
asFeatsOut.push_back( feat );
|
||||||
@@ -1487,7 +1487,7 @@ void GameState::GetRankingFeats( PlayerNumber pn, vector<RankingFeat> &asFeatsOu
|
|||||||
feat.Type = RankingFeat::CATEGORY;
|
feat.Type = RankingFeat::CATEGORY;
|
||||||
feat.Feat = ssprintf("PR #%d in Type %c (%d)", j+1, 'A'+rc, stats.GetAverageMeter(pn) );
|
feat.Feat = ssprintf("PR #%d in Type %c (%d)", j+1, 'A'+rc, stats.GetAverageMeter(pn) );
|
||||||
feat.pStringToFill = hs.GetNameMutable();
|
feat.pStringToFill = hs.GetNameMutable();
|
||||||
feat.grade = GRADE_NO_DATA;
|
feat.grade = Grade_NoData;
|
||||||
feat.iScore = hs.GetScore();
|
feat.iScore = hs.GetScore();
|
||||||
feat.fPercentDP = hs.GetPercentDP();
|
feat.fPercentDP = hs.GetPercentDP();
|
||||||
asFeatsOut.push_back( feat );
|
asFeatsOut.push_back( feat );
|
||||||
@@ -1524,7 +1524,7 @@ void GameState::GetRankingFeats( PlayerNumber pn, vector<RankingFeat> &asFeatsOu
|
|||||||
if( cd != DIFFICULTY_MEDIUM )
|
if( cd != DIFFICULTY_MEDIUM )
|
||||||
feat.Feat += " " + CourseDifficultyToThemedString(cd);
|
feat.Feat += " " + CourseDifficultyToThemedString(cd);
|
||||||
feat.pStringToFill = hs.GetNameMutable();
|
feat.pStringToFill = hs.GetNameMutable();
|
||||||
feat.grade = GRADE_NO_DATA;
|
feat.grade = Grade_NoData;
|
||||||
feat.iScore = hs.GetScore();
|
feat.iScore = hs.GetScore();
|
||||||
feat.fPercentDP = hs.GetPercentDP();
|
feat.fPercentDP = hs.GetPercentDP();
|
||||||
if( pCourse->HasBanner() )
|
if( pCourse->HasBanner() )
|
||||||
@@ -1548,7 +1548,7 @@ void GameState::GetRankingFeats( PlayerNumber pn, vector<RankingFeat> &asFeatsOu
|
|||||||
feat.pCourse = pCourse;
|
feat.pCourse = pCourse;
|
||||||
feat.Feat = ssprintf("PR #%d in %s", i+1, pCourse->GetDisplayFullTitle().c_str() );
|
feat.Feat = ssprintf("PR #%d in %s", i+1, pCourse->GetDisplayFullTitle().c_str() );
|
||||||
feat.pStringToFill = hs.GetNameMutable();
|
feat.pStringToFill = hs.GetNameMutable();
|
||||||
feat.grade = GRADE_NO_DATA;
|
feat.grade = Grade_NoData;
|
||||||
feat.iScore = hs.GetScore();
|
feat.iScore = hs.GetScore();
|
||||||
feat.fPercentDP = hs.GetPercentDP();
|
feat.fPercentDP = hs.GetPercentDP();
|
||||||
if( pCourse->HasBanner() )
|
if( pCourse->HasBanner() )
|
||||||
|
|||||||
+23
-24
@@ -22,15 +22,15 @@ CString GradeToOldString( Grade g )
|
|||||||
// string is meant to be human readable
|
// string is meant to be human readable
|
||||||
switch( g )
|
switch( g )
|
||||||
{
|
{
|
||||||
case GRADE_TIER01: return "AAAA";
|
case Grade_Tier01: return "AAAA";
|
||||||
case GRADE_TIER02: return "AAA";
|
case Grade_Tier02: return "AAA";
|
||||||
case GRADE_TIER03: return "AA";
|
case Grade_Tier03: return "AA";
|
||||||
case GRADE_TIER04: return "A";
|
case Grade_Tier04: return "A";
|
||||||
case GRADE_TIER05: return "B";
|
case Grade_Tier05: return "B";
|
||||||
case GRADE_TIER06: return "C";
|
case Grade_Tier06: return "C";
|
||||||
case GRADE_TIER07: return "D";
|
case Grade_Tier07: return "D";
|
||||||
case GRADE_FAILED: return "E";
|
case Grade_Failed: return "E";
|
||||||
case GRADE_NO_DATA: return "N";
|
case Grade_NoData: return "N";
|
||||||
default: return "N";
|
default: return "N";
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -41,27 +41,27 @@ Grade StringToGrade( const CString &sGrade )
|
|||||||
s.MakeUpper();
|
s.MakeUpper();
|
||||||
|
|
||||||
// for backward compatibility
|
// for backward compatibility
|
||||||
if ( s == "AAAA" ) return GRADE_TIER01;
|
if ( s == "AAAA" ) return Grade_Tier01;
|
||||||
else if( s == "AAA" ) return GRADE_TIER02;
|
else if( s == "AAA" ) return Grade_Tier02;
|
||||||
else if( s == "AA" ) return GRADE_TIER03;
|
else if( s == "AA" ) return Grade_Tier03;
|
||||||
else if( s == "A" ) return GRADE_TIER04;
|
else if( s == "A" ) return Grade_Tier04;
|
||||||
else if( s == "B" ) return GRADE_TIER05;
|
else if( s == "B" ) return Grade_Tier05;
|
||||||
else if( s == "C" ) return GRADE_TIER06;
|
else if( s == "C" ) return Grade_Tier06;
|
||||||
else if( s == "D" ) return GRADE_TIER07;
|
else if( s == "D" ) return Grade_Tier07;
|
||||||
else if( s == "E" ) return GRADE_FAILED;
|
else if( s == "E" ) return Grade_Failed;
|
||||||
else if( s == "N" ) return GRADE_NO_DATA;
|
else if( s == "N" ) return Grade_NoData;
|
||||||
|
|
||||||
|
|
||||||
// new style
|
// new style
|
||||||
if ( s == "FAILED" ) return GRADE_FAILED;
|
if ( s == "FAILED" ) return Grade_Failed;
|
||||||
else if( s == "NODATA" ) return GRADE_NO_DATA;
|
else if( s == "NODATA" ) return Grade_NoData;
|
||||||
|
|
||||||
int iTier;
|
int iTier;
|
||||||
if( sscanf(sGrade.c_str(),"Tier%02d",&iTier) == 1 )
|
if( sscanf(sGrade.c_str(),"Tier%02d",&iTier) == 1 )
|
||||||
return (Grade)(iTier-1);
|
return (Grade)(iTier-1);
|
||||||
|
|
||||||
LOG->Warn( "Invalid grade: %s", sGrade.c_str() );
|
LOG->Warn( "Invalid grade: %s", sGrade.c_str() );
|
||||||
return GRADE_NO_DATA;
|
return Grade_NoData;
|
||||||
};
|
};
|
||||||
|
|
||||||
static void LuaGrade(lua_State* L)
|
static void LuaGrade(lua_State* L)
|
||||||
@@ -69,10 +69,9 @@ static void LuaGrade(lua_State* L)
|
|||||||
FOREACH_Grade( g )
|
FOREACH_Grade( g )
|
||||||
{
|
{
|
||||||
CString s = GradeToString(g);
|
CString s = GradeToString(g);
|
||||||
s.MakeUpper();
|
LUA->SetGlobal( "Grade_"+s, g );
|
||||||
LUA->SetGlobal( "GRADE_"+s, g );
|
|
||||||
}
|
}
|
||||||
LUA->SetGlobal( "NUM_GRADES", NUM_GRADES );
|
LUA->SetGlobal( "NUM_Grade", NUM_Grade );
|
||||||
}
|
}
|
||||||
REGISTER_WITH_LUA_FUNCTION( LuaGrade );
|
REGISTER_WITH_LUA_FUNCTION( LuaGrade );
|
||||||
|
|
||||||
|
|||||||
+35
-34
@@ -5,52 +5,53 @@
|
|||||||
|
|
||||||
#include "RageUtil.h"
|
#include "RageUtil.h"
|
||||||
|
|
||||||
#define NUM_GRADE_TIERS 20
|
#define NUM_Grade_TierS 20
|
||||||
enum Grade
|
enum Grade
|
||||||
{
|
{
|
||||||
GRADE_TIER01, // = AAAA
|
Grade_Tier01, // = AAAA
|
||||||
GRADE_TIER02, // = AAA
|
Grade_Tier02, // = AAA
|
||||||
GRADE_TIER03, // = AA
|
Grade_Tier03, // = AA
|
||||||
GRADE_TIER04, // = A
|
Grade_Tier04, // = A
|
||||||
GRADE_TIER05, // = B
|
Grade_Tier05, // = B
|
||||||
GRADE_TIER06, // = C
|
Grade_Tier06, // = C
|
||||||
GRADE_TIER07, // = D
|
Grade_Tier07, // = D
|
||||||
GRADE_TIER08,
|
Grade_Tier08,
|
||||||
GRADE_TIER09,
|
Grade_Tier09,
|
||||||
GRADE_TIER10,
|
Grade_Tier10,
|
||||||
GRADE_TIER11,
|
Grade_Tier11,
|
||||||
GRADE_TIER12,
|
Grade_Tier12,
|
||||||
GRADE_TIER13,
|
Grade_Tier13,
|
||||||
GRADE_TIER14,
|
Grade_Tier14,
|
||||||
GRADE_TIER15,
|
Grade_Tier15,
|
||||||
GRADE_TIER16,
|
Grade_Tier16,
|
||||||
GRADE_TIER17,
|
Grade_Tier17,
|
||||||
GRADE_TIER18,
|
Grade_Tier18,
|
||||||
GRADE_TIER19,
|
Grade_Tier19,
|
||||||
GRADE_TIER20,
|
Grade_Tier20,
|
||||||
GRADE_FAILED, // = E
|
Grade_Failed, // = E
|
||||||
NUM_GRADES,
|
NUM_Grade,
|
||||||
GRADE_NO_DATA, // ~GRADE_INVALID
|
Grade_NoData, // ~GRADE_INVALID
|
||||||
};
|
};
|
||||||
|
|
||||||
/* This is in the header so the test sets don't require Grade.cpp (through PrefsManager),
|
/* This is in the header so the test sets don't require Grade.cpp (through PrefsManager),
|
||||||
* since that pulls in ThemeManager. */
|
* since that pulls in ThemeManager. */
|
||||||
static inline CString GradeToString( Grade g )
|
static inline CString GradeToString( Grade g )
|
||||||
{
|
{
|
||||||
// string is meant to be human readable
|
ASSERT_M( (g >= 0 && g<NUM_Grade) || g == Grade_NoData, ssprintf("grade = %d",g) );
|
||||||
switch( g )
|
|
||||||
{
|
switch( g )
|
||||||
case GRADE_NO_DATA: return "NoData";
|
{
|
||||||
case GRADE_FAILED: return "Failed";
|
case Grade_NoData: return "NoData";
|
||||||
default:
|
case Grade_Failed: return "Failed";
|
||||||
return ssprintf("Tier%02d",g+1);
|
default:
|
||||||
}
|
return ssprintf("Tier%02d",g+1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CString GradeToOldString( Grade g ); // "AAA", "B", etc for backward compatibility
|
CString GradeToOldString( Grade g ); // "AAA", "B", etc for backward compatibility. Used in announcer
|
||||||
CString GradeToThemedString( Grade g );
|
CString GradeToThemedString( Grade g );
|
||||||
Grade StringToGrade( const CString &s );
|
Grade StringToGrade( const CString &s );
|
||||||
#define FOREACH_Grade( g ) FOREACH_ENUM( Grade, NUM_GRADES, g )
|
#define FOREACH_Grade( g ) FOREACH_ENUM( Grade, NUM_Grade, g )
|
||||||
#define FOREACH_UsedGrade( g ) FOREACH_ENUM( Grade, THEME->GetMetricI("PlayerStageStats","NumGradeTiersUsed"), g )
|
#define FOREACH_UsedGrade( g ) FOREACH_ENUM( Grade, THEME->GetMetricI("PlayerStageStats","NumGradeTiersUsed"), g )
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ GradeDisplay::GradeDisplay()
|
|||||||
m_fTimeLeftInScroll = 0;
|
m_fTimeLeftInScroll = 0;
|
||||||
m_bDoScrolling = 0;
|
m_bDoScrolling = 0;
|
||||||
|
|
||||||
SetGrade( PLAYER_1, GRADE_NO_DATA );
|
SetGrade( PLAYER_1, Grade_NoData );
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GradeDisplay::Load( RageTextureID ID )
|
bool GradeDisplay::Load( RageTextureID ID )
|
||||||
@@ -91,14 +91,14 @@ int GradeDisplay::GetFrameIndex( PlayerNumber pn, Grade g )
|
|||||||
int iFrame;
|
int iFrame;
|
||||||
switch( g )
|
switch( g )
|
||||||
{
|
{
|
||||||
case GRADE_TIER01: iFrame = 0; break;
|
case Grade_Tier01: iFrame = 0; break;
|
||||||
case GRADE_TIER02: iFrame = 1; break;
|
case Grade_Tier02: iFrame = 1; break;
|
||||||
case GRADE_TIER03: iFrame = 2; break;
|
case Grade_Tier03: iFrame = 2; break;
|
||||||
case GRADE_TIER04: iFrame = 3; break;
|
case Grade_Tier04: iFrame = 3; break;
|
||||||
case GRADE_TIER05: iFrame = 4; break;
|
case Grade_Tier05: iFrame = 4; break;
|
||||||
case GRADE_TIER06: iFrame = 5; break;
|
case Grade_Tier06: iFrame = 5; break;
|
||||||
case GRADE_TIER07: iFrame = 6; break;
|
case Grade_Tier07: iFrame = 6; break;
|
||||||
case GRADE_FAILED: iFrame = 7; break;
|
case Grade_Failed: iFrame = 7; break;
|
||||||
default: iFrame = 7; break;
|
default: iFrame = 7; break;
|
||||||
}
|
}
|
||||||
iFrame *= iNumCols;
|
iFrame *= iNumCols;
|
||||||
@@ -115,7 +115,7 @@ void GradeDisplay::SetGrade( PlayerNumber pn, Grade g )
|
|||||||
m_bDoScrolling = false;
|
m_bDoScrolling = false;
|
||||||
StopUsingCustomCoords();
|
StopUsingCustomCoords();
|
||||||
|
|
||||||
if(g != GRADE_NO_DATA)
|
if(g != Grade_NoData)
|
||||||
{
|
{
|
||||||
SetState( GetFrameIndex(pn,g) );
|
SetState( GetFrameIndex(pn,g) );
|
||||||
SetDiffuseAlpha( 1 );
|
SetDiffuseAlpha( 1 );
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ bool HighScoreImpl::operator==( const HighScoreImpl& other ) const
|
|||||||
HighScoreImpl::HighScoreImpl()
|
HighScoreImpl::HighScoreImpl()
|
||||||
{
|
{
|
||||||
sName = "";
|
sName = "";
|
||||||
grade = GRADE_NO_DATA;
|
grade = Grade_NoData;
|
||||||
iScore = 0;
|
iScore = 0;
|
||||||
fPercentDP = 0;
|
fPercentDP = 0;
|
||||||
fSurviveSeconds = 0;
|
fSurviveSeconds = 0;
|
||||||
@@ -137,7 +137,7 @@ void HighScoreImpl::LoadFromNode( const XNode *pNode )
|
|||||||
pNode->GetChildValue( "LifeRemainingSeconds", fLifeRemainingSeconds );
|
pNode->GetChildValue( "LifeRemainingSeconds", fLifeRemainingSeconds );
|
||||||
|
|
||||||
/* Validate input. */
|
/* Validate input. */
|
||||||
grade = clamp( grade, GRADE_TIER01, GRADE_FAILED );
|
grade = clamp( grade, Grade_Tier01, Grade_Failed );
|
||||||
}
|
}
|
||||||
|
|
||||||
REGISTER_CLASS_TRAITS( HighScoreImpl, new HighScoreImpl(*pCopy) )
|
REGISTER_CLASS_TRAITS( HighScoreImpl, new HighScoreImpl(*pCopy) )
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ void PlayerStageStats::AddStats( const PlayerStageStats& other )
|
|||||||
|
|
||||||
Grade PlayerStageStats::GetGradeFromPercent( float fPercent )
|
Grade PlayerStageStats::GetGradeFromPercent( float fPercent )
|
||||||
{
|
{
|
||||||
Grade grade = GRADE_FAILED;
|
Grade grade = Grade_Failed;
|
||||||
|
|
||||||
FOREACH_Grade(g)
|
FOREACH_Grade(g)
|
||||||
{
|
{
|
||||||
@@ -132,7 +132,7 @@ Grade PlayerStageStats::GetGradeFromPercent( float fPercent )
|
|||||||
Grade PlayerStageStats::GetGrade() const
|
Grade PlayerStageStats::GetGrade() const
|
||||||
{
|
{
|
||||||
if( bFailedEarlier )
|
if( bFailedEarlier )
|
||||||
return GRADE_FAILED;
|
return Grade_Failed;
|
||||||
|
|
||||||
/* XXX: This entire calculation should be in ScoreKeeper, but final evaluation
|
/* XXX: This entire calculation should be in ScoreKeeper, but final evaluation
|
||||||
* is tricky since at that point the ScoreKeepers no longer exist. */
|
* is tricky since at that point the ScoreKeepers no longer exist. */
|
||||||
@@ -174,7 +174,7 @@ Grade PlayerStageStats::GetGrade() const
|
|||||||
iTapNoteScores[TNS_MISS] == 0 &&
|
iTapNoteScores[TNS_MISS] == 0 &&
|
||||||
iTapNoteScores[TNS_HIT_MINE] == 0 &&
|
iTapNoteScores[TNS_HIT_MINE] == 0 &&
|
||||||
iHoldNoteScores[HNS_NG] == 0 )
|
iHoldNoteScores[HNS_NG] == 0 )
|
||||||
return GRADE_TIER01;
|
return Grade_Tier01;
|
||||||
|
|
||||||
if( iTapNoteScores[TNS_PERFECT] > 0 &&
|
if( iTapNoteScores[TNS_PERFECT] > 0 &&
|
||||||
iTapNoteScores[TNS_GREAT] == 0 &&
|
iTapNoteScores[TNS_GREAT] == 0 &&
|
||||||
@@ -183,9 +183,9 @@ Grade PlayerStageStats::GetGrade() const
|
|||||||
iTapNoteScores[TNS_MISS] == 0 &&
|
iTapNoteScores[TNS_MISS] == 0 &&
|
||||||
iTapNoteScores[TNS_HIT_MINE] == 0 &&
|
iTapNoteScores[TNS_HIT_MINE] == 0 &&
|
||||||
iHoldNoteScores[HNS_NG] == 0 )
|
iHoldNoteScores[HNS_NG] == 0 )
|
||||||
return GRADE_TIER02;
|
return Grade_Tier02;
|
||||||
|
|
||||||
return max( grade, GRADE_TIER03 );
|
return max( grade, Grade_Tier03 );
|
||||||
}
|
}
|
||||||
|
|
||||||
return grade;
|
return grade;
|
||||||
|
|||||||
@@ -633,13 +633,13 @@ void Profile::IncrementStepsPlayCount( const Song* pSong, const Steps* pSteps )
|
|||||||
GetStepsHighScoreList(pSong,pSteps).IncrementPlayCount( now );
|
GetStepsHighScoreList(pSong,pSteps).IncrementPlayCount( now );
|
||||||
}
|
}
|
||||||
|
|
||||||
void Profile::GetGrades( const Song* pSong, StepsType st, int iCounts[NUM_GRADES] ) const
|
void Profile::GetGrades( const Song* pSong, StepsType st, int iCounts[NUM_Grade] ) const
|
||||||
{
|
{
|
||||||
SongID songID;
|
SongID songID;
|
||||||
songID.FromSong( pSong );
|
songID.FromSong( pSong );
|
||||||
|
|
||||||
|
|
||||||
memset( iCounts, 0, sizeof(int)*NUM_GRADES );
|
memset( iCounts, 0, sizeof(int)*NUM_Grade );
|
||||||
const HighScoresForASong *hsSong = GetHighScoresForASong( songID );
|
const HighScoresForASong *hsSong = GetHighScoresForASong( songID );
|
||||||
if( hsSong == NULL )
|
if( hsSong == NULL )
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -144,7 +144,7 @@ public:
|
|||||||
/* This stat counts once per song, even if two players are active. */
|
/* This stat counts once per song, even if two players are active. */
|
||||||
int m_iNumTotalSongsPlayed;
|
int m_iNumTotalSongsPlayed;
|
||||||
int m_iNumStagesPassedByPlayMode[NUM_PLAY_MODES];
|
int m_iNumStagesPassedByPlayMode[NUM_PLAY_MODES];
|
||||||
int m_iNumStagesPassedByGrade[NUM_GRADES];
|
int m_iNumStagesPassedByGrade[NUM_Grade];
|
||||||
|
|
||||||
//
|
//
|
||||||
// Song high scores
|
// Song high scores
|
||||||
@@ -165,7 +165,7 @@ public:
|
|||||||
HighScoreList& GetStepsHighScoreList( const Song* pSong, const Steps* pSteps );
|
HighScoreList& GetStepsHighScoreList( const Song* pSong, const Steps* pSteps );
|
||||||
int GetStepsNumTimesPlayed( const Song* pSong, const Steps* pSteps ) const;
|
int GetStepsNumTimesPlayed( const Song* pSong, const Steps* pSteps ) const;
|
||||||
void IncrementStepsPlayCount( const Song* pSong, const Steps* pSteps );
|
void IncrementStepsPlayCount( const Song* pSong, const Steps* pSteps );
|
||||||
void GetGrades( const Song* pSong, StepsType st, int iCounts[NUM_GRADES] ) const;
|
void GetGrades( const Song* pSong, StepsType st, int iCounts[NUM_Grade] ) const;
|
||||||
int GetSongNumTimesPlayed( const Song* pSong ) const;
|
int GetSongNumTimesPlayed( const Song* pSong ) const;
|
||||||
int GetSongNumTimesPlayed( const SongID& songID ) const;
|
int GetSongNumTimesPlayed( const SongID& songID ) const;
|
||||||
DateTime GetSongLastPlayedDateTime( const Song* pSong ) const;
|
DateTime GetSongLastPlayedDateTime( const Song* pSong ) const;
|
||||||
|
|||||||
@@ -241,7 +241,7 @@ void ScreenEvaluation::Init()
|
|||||||
if( GAMESTATE->IsPlayerEnabled(p) )
|
if( GAMESTATE->IsPlayerEnabled(p) )
|
||||||
grade[p] = stageStats.m_player[p].GetGrade();
|
grade[p] = stageStats.m_player[p].GetGrade();
|
||||||
else
|
else
|
||||||
grade[p] = GRADE_FAILED;
|
grade[p] = Grade_Failed;
|
||||||
|
|
||||||
if( PREFSMAN->m_ScoringType == PrefsManager::SCORING_5TH )
|
if( PREFSMAN->m_ScoringType == PrefsManager::SCORING_5TH )
|
||||||
{
|
{
|
||||||
@@ -774,7 +774,7 @@ void ScreenEvaluation::Init()
|
|||||||
if( GAMESTATE->IsPlayerEnabled(p) && (iMachineHighScoreIndex[p] != -1 || iPersonalHighScoreIndex[p] != -1) )
|
if( GAMESTATE->IsPlayerEnabled(p) && (iMachineHighScoreIndex[p] != -1 || iPersonalHighScoreIndex[p] != -1) )
|
||||||
bOneHasNewTopRecord = true;
|
bOneHasNewTopRecord = true;
|
||||||
|
|
||||||
Grade best_grade = GRADE_NO_DATA;
|
Grade best_grade = Grade_NoData;
|
||||||
FOREACH_PlayerNumber( p )
|
FOREACH_PlayerNumber( p )
|
||||||
best_grade = min( best_grade, grade[p] );
|
best_grade = min( best_grade, grade[p] );
|
||||||
|
|
||||||
@@ -826,9 +826,9 @@ void ScreenEvaluation::Init()
|
|||||||
|
|
||||||
switch( best_grade )
|
switch( best_grade )
|
||||||
{
|
{
|
||||||
case GRADE_TIER01:
|
case Grade_Tier01:
|
||||||
case GRADE_TIER02:
|
case Grade_Tier02:
|
||||||
case GRADE_TIER03:
|
case Grade_Tier03:
|
||||||
this->PostScreenMessage( SM_PlayCheer, CHEER_DELAY_SECONDS );
|
this->PostScreenMessage( SM_PlayCheer, CHEER_DELAY_SECONDS );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -169,7 +169,7 @@ ScreenNameEntryTraditional::ScreenNameEntryTraditional( CString sClassName ) : S
|
|||||||
ss.m_player[p].vpPossibleSteps.push_back( pSteps );
|
ss.m_player[p].vpPossibleSteps.push_back( pSteps );
|
||||||
|
|
||||||
HighScore hs;
|
HighScore hs;
|
||||||
hs.SetGrade( GRADE_TIER03 );
|
hs.SetGrade( Grade_Tier03 );
|
||||||
hs.SetPercentDP( ss.m_player[p].GetPercentDancePoints() );
|
hs.SetPercentDP( ss.m_player[p].GetPercentDancePoints() );
|
||||||
hs.SetScore( ss.m_player[p].iScore );
|
hs.SetScore( ss.m_player[p].iScore );
|
||||||
hs.SetDateTime( DateTime::GetNowDateTime() );
|
hs.SetDateTime( DateTime::GetNowDateTime() );
|
||||||
@@ -387,7 +387,7 @@ void ScreenNameEntryTraditional::Init()
|
|||||||
this->AddChild( &display.m_sprBanner );
|
this->AddChild( &display.m_sprBanner );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( grade != GRADE_NO_DATA )
|
if( grade != Grade_NoData )
|
||||||
{
|
{
|
||||||
display.m_Grade.SetName( ssprintf("GradeP%i",p+1) );
|
display.m_Grade.SetName( ssprintf("GradeP%i",p+1) );
|
||||||
display.m_Grade.Load( THEME->GetPathG(m_sName,"grades") );
|
display.m_Grade.Load( THEME->GetPathG(m_sName,"grades") );
|
||||||
|
|||||||
@@ -158,7 +158,7 @@ void ScreenNetEvaluation::HandleScreenMessage( const ScreenMessage SM )
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
m_textUsers[i].SetText( NSMAN->m_PlayerNames[NSMAN->m_EvalPlayerData[i].name] );
|
m_textUsers[i].SetText( NSMAN->m_PlayerNames[NSMAN->m_EvalPlayerData[i].name] );
|
||||||
if ( NSMAN->m_EvalPlayerData[i].grade < GRADE_TIER03 ) //Yes, hardcoded (I'd like to leave it that way)
|
if ( NSMAN->m_EvalPlayerData[i].grade < Grade_Tier03 ) //Yes, hardcoded (I'd like to leave it that way)
|
||||||
m_textUsers[i].TurnRainbowOn();
|
m_textUsers[i].TurnRainbowOn();
|
||||||
else
|
else
|
||||||
m_textUsers[i].TurnRainbowOff();
|
m_textUsers[i].TurnRainbowOff();
|
||||||
|
|||||||
@@ -122,7 +122,7 @@ void SongUtil::SortSongPointerArrayByGrades( vector<Song*> &vpSongsInOut, bool b
|
|||||||
{
|
{
|
||||||
Song *pSong = vpSongsInOut[i];
|
Song *pSong = vpSongsInOut[i];
|
||||||
|
|
||||||
int iCounts[NUM_GRADES];
|
int iCounts[NUM_Grade];
|
||||||
const Profile *pProfile = PROFILEMAN->GetMachineProfile();
|
const Profile *pProfile = PROFILEMAN->GetMachineProfile();
|
||||||
const Style *pStyle = GAMESTATE->GetCurrentStyle();
|
const Style *pStyle = GAMESTATE->GetCurrentStyle();
|
||||||
StepsType st = pStyle->m_StepsType;
|
StepsType st = pStyle->m_StepsType;
|
||||||
@@ -130,7 +130,7 @@ void SongUtil::SortSongPointerArrayByGrades( vector<Song*> &vpSongsInOut, bool b
|
|||||||
|
|
||||||
CString foo;
|
CString foo;
|
||||||
foo.reserve(256);
|
foo.reserve(256);
|
||||||
for( int g=GRADE_TIER01; g<=GRADE_NO_DATA; ++g )
|
for( int g=Grade_Tier01; g<=Grade_NoData; ++g )
|
||||||
AppendOctal( iCounts[g], 3, foo );
|
AppendOctal( iCounts[g], 3, foo );
|
||||||
vals.push_back( val(pSong, foo) );
|
vals.push_back( val(pSong, foo) );
|
||||||
}
|
}
|
||||||
@@ -259,16 +259,16 @@ CString SongUtil::GetSectionNameFromSongAndSort( const Song* pSong, SortOrder so
|
|||||||
return "";
|
return "";
|
||||||
case SORT_TOP_GRADES:
|
case SORT_TOP_GRADES:
|
||||||
{
|
{
|
||||||
int iCounts[NUM_GRADES];
|
int iCounts[NUM_Grade];
|
||||||
PROFILEMAN->GetMachineProfile()->GetGrades( pSong, GAMESTATE->GetCurrentStyle()->m_StepsType, iCounts );
|
PROFILEMAN->GetMachineProfile()->GetGrades( pSong, GAMESTATE->GetCurrentStyle()->m_StepsType, iCounts );
|
||||||
|
|
||||||
for( int i=GRADE_TIER01; i<NUM_GRADES; ++i )
|
for( int i=Grade_Tier01; i<NUM_Grade; ++i )
|
||||||
{
|
{
|
||||||
Grade g = (Grade)i;
|
Grade g = (Grade)i;
|
||||||
if( iCounts[i] > 0 )
|
if( iCounts[i] > 0 )
|
||||||
return ssprintf( "%4s x %d", GradeToThemedString(g).c_str(), iCounts[i] );
|
return ssprintf( "%4s x %d", GradeToThemedString(g).c_str(), iCounts[i] );
|
||||||
}
|
}
|
||||||
return GradeToThemedString( GRADE_NO_DATA );
|
return GradeToThemedString( Grade_NoData );
|
||||||
}
|
}
|
||||||
case SORT_EASY_METER:
|
case SORT_EASY_METER:
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -205,7 +205,7 @@ public:
|
|||||||
PlayerNumber pn = (PlayerNumber)IArg(1);
|
PlayerNumber pn = (PlayerNumber)IArg(1);
|
||||||
|
|
||||||
if( !GAMESTATE->IsHumanPlayer(pn) )
|
if( !GAMESTATE->IsHumanPlayer(pn) )
|
||||||
lua_pushnumber( L, GRADE_NO_DATA );
|
lua_pushnumber( L, Grade_NoData );
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
StageStats stats;
|
StageStats stats;
|
||||||
@@ -218,7 +218,7 @@ public:
|
|||||||
|
|
||||||
static int GetBestGrade( T* p, lua_State *L )
|
static int GetBestGrade( T* p, lua_State *L )
|
||||||
{
|
{
|
||||||
Grade g = NUM_GRADES;
|
Grade g = NUM_Grade;
|
||||||
FOREACH_EnabledPlayer( pn )
|
FOREACH_EnabledPlayer( pn )
|
||||||
g = min( g, STATSMAN->m_CurStageStats.m_player[pn].GetGrade() );
|
g = min( g, STATSMAN->m_CurStageStats.m_player[pn].GetGrade() );
|
||||||
lua_pushnumber( L, g );
|
lua_pushnumber( L, g );
|
||||||
@@ -227,7 +227,7 @@ public:
|
|||||||
|
|
||||||
static int GetWorstGrade( T* p, lua_State *L )
|
static int GetWorstGrade( T* p, lua_State *L )
|
||||||
{
|
{
|
||||||
Grade g = GRADE_TIER01;
|
Grade g = Grade_Tier01;
|
||||||
FOREACH_EnabledPlayer( pn )
|
FOREACH_EnabledPlayer( pn )
|
||||||
g = max( g, STATSMAN->m_CurStageStats.m_player[pn].GetGrade() );
|
g = max( g, STATSMAN->m_CurStageStats.m_player[pn].GetGrade() );
|
||||||
lua_pushnumber( L, g );
|
lua_pushnumber( L, g );
|
||||||
@@ -283,7 +283,7 @@ const StageStats *GetStageStatsN( int n )
|
|||||||
|
|
||||||
Grade GetBestFinalGrade()
|
Grade GetBestFinalGrade()
|
||||||
{
|
{
|
||||||
Grade top_grade = GRADE_FAILED;
|
Grade top_grade = Grade_Failed;
|
||||||
StageStats stats;
|
StageStats stats;
|
||||||
STATSMAN->GetFinalEvalStageStats( stats );
|
STATSMAN->GetFinalEvalStageStats( stats );
|
||||||
FOREACH_HumanPlayer( p )
|
FOREACH_HumanPlayer( p )
|
||||||
|
|||||||
@@ -180,12 +180,12 @@ static float GetArcadePoints( const Profile *pProfile )
|
|||||||
{
|
{
|
||||||
switch(g)
|
switch(g)
|
||||||
{
|
{
|
||||||
case GRADE_TIER01:
|
case Grade_Tier01:
|
||||||
case GRADE_TIER02: fAP += 9 * pProfile->m_iNumStagesPassedByGrade[g]; break;
|
case Grade_Tier02: fAP += 9 * pProfile->m_iNumStagesPassedByGrade[g]; break;
|
||||||
default: fAP += 1 * pProfile->m_iNumStagesPassedByGrade[g]; break;
|
default: fAP += 1 * pProfile->m_iNumStagesPassedByGrade[g]; break;
|
||||||
|
|
||||||
case GRADE_FAILED:
|
case Grade_Failed:
|
||||||
case GRADE_NO_DATA:
|
case Grade_NoData:
|
||||||
; // no points
|
; // no points
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -215,15 +215,15 @@ static float GetSongPoints( const Profile *pProfile )
|
|||||||
{
|
{
|
||||||
switch( g )
|
switch( g )
|
||||||
{
|
{
|
||||||
case GRADE_TIER01:/*AAAA*/ fSP += 20 * pProfile->m_iNumStagesPassedByGrade[g]; break;
|
case Grade_Tier01:/*AAAA*/ fSP += 20 * pProfile->m_iNumStagesPassedByGrade[g]; break;
|
||||||
case GRADE_TIER02:/*AAA*/ fSP += 10* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
case Grade_Tier02:/*AAA*/ fSP += 10* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
||||||
case GRADE_TIER03:/*AA*/ fSP += 5* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
case Grade_Tier03:/*AA*/ fSP += 5* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
||||||
case GRADE_TIER04:/*A*/ fSP += 4* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
case Grade_Tier04:/*A*/ fSP += 4* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
||||||
case GRADE_TIER05:/*B*/ fSP += 3* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
case Grade_Tier05:/*B*/ fSP += 3* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
||||||
case GRADE_TIER06:/*C*/ fSP += 2* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
case Grade_Tier06:/*C*/ fSP += 2* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
||||||
case GRADE_TIER07:/*D*/ fSP += 1* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
case Grade_Tier07:/*D*/ fSP += 1* pProfile->m_iNumStagesPassedByGrade[g]; break;
|
||||||
case GRADE_FAILED:
|
case Grade_Failed:
|
||||||
case GRADE_NO_DATA:
|
case Grade_NoData:
|
||||||
; // no points
|
; // no points
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user