Simplify ConvertParamToThemeDifficulty.

This commit is contained in:
Glenn Maynard
2003-09-10 08:47:43 +00:00
parent 608c03e35e
commit 744a381e42
+16 -29
View File
@@ -27,6 +27,12 @@
#define PREV_SCREEN( play_mode ) THEME->GetMetric ("ScreenPlayerOptions","PrevScreen"+Capitalize(PlayModeToString(play_mode))) #define PREV_SCREEN( play_mode ) THEME->GetMetric ("ScreenPlayerOptions","PrevScreen"+Capitalize(PlayModeToString(play_mode)))
#define NEXT_SCREEN( play_mode ) THEME->GetMetric ("ScreenPlayerOptions","NextScreen"+Capitalize(PlayModeToString(play_mode))) #define NEXT_SCREEN( play_mode ) THEME->GetMetric ("ScreenPlayerOptions","NextScreen"+Capitalize(PlayModeToString(play_mode)))
#define BEGINNER_DESCRIPTION THEME->GetMetric ("ScreenPlayerOptions","Beginner")
#define EASY_DESCRIPTION THEME->GetMetric ("ScreenPlayerOptions","Easy")
#define MEDIUM_DESCRIPTION THEME->GetMetric ("ScreenPlayerOptions","Medium")
#define HARD_DESCRIPTION THEME->GetMetric ("ScreenPlayerOptions","Hard")
#define CHALLENGE_DESCRIPTION THEME->GetMetric ("ScreenPlayerOptions","Challenge")
enum { enum {
PO_SPEED = 0, PO_SPEED = 0,
@@ -479,34 +485,15 @@ void ScreenPlayerOptions::HandleScreenMessage( const ScreenMessage SM )
ScreenOptions::HandleScreenMessage( SM ); ScreenOptions::HandleScreenMessage( SM );
} }
CString ScreenPlayerOptions::ConvertParamToThemeDifficulty( CString ScreenPlayerOptions::ConvertParamToThemeDifficulty( const CString &in ) const
const CString &in ) const
{ {
// inefficient, could optimize switch( StringToDifficulty(in) )
#define BEGINNER_DESCRIPTION THEME->GetMetric("ScreenPlayerOptions","Beginner") {
#define EASY_DESCRIPTION THEME->GetMetric("ScreenPlayerOptions","Easy") case DIFFICULTY_BEGINNER: return BEGINNER_DESCRIPTION;
#define MEDIUM_DESCRIPTION THEME->GetMetric("ScreenPlayerOptions","Medium") case DIFFICULTY_EASY: return EASY_DESCRIPTION;
#define HARD_DESCRIPTION THEME->GetMetric("ScreenPlayerOptions","Hard") case DIFFICULTY_MEDIUM: return MEDIUM_DESCRIPTION;
#define CHALLENGE_DESCRIPTION THEME->GetMetric("ScreenPlayerOptions","Challenge") case DIFFICULTY_HARD: return HARD_DESCRIPTION;
case DIFFICULTY_CHALLENGE: return CHALLENGE_DESCRIPTION;
if (in == "BEGINNER") return BEGINNER_DESCRIPTION; // Extreme default: return in; // something else
}
if (in == "BASIC") return EASY_DESCRIPTION; // 3rd
if (in == "LIGHT") return EASY_DESCRIPTION; // MAX
if (in == "ANOTHER") return MEDIUM_DESCRIPTION; // 3rd
if (in == "STANDARD") return MEDIUM_DESCRIPTION; // MAX. Note DDRUSA uses this for standard, but its unlikely
if (in == "TRICK") return MEDIUM_DESCRIPTION; // 4th/5th
if (in == "DIFFICULT") return MEDIUM_DESCRIPTION; // DDRUSA, unlikely
if (in == "SSR") return HARD_DESCRIPTION; // 3rd
if (in == "MANIAC") return HARD_DESCRIPTION; // pre-MAX
if (in == "HEAVY") return HARD_DESCRIPTION; // MAX
if (in == "EXPERT") return HARD_DESCRIPTION; // Euromix
if (in == "SMANIAC") return CHALLENGE_DESCRIPTION; // 4th
if (in == "CHALLENGE") return CHALLENGE_DESCRIPTION; // MAX
if (in == "ONI") return CHALLENGE_DESCRIPTION; // Extreme
return in; // something else
} }