From 14b51a70d7ab0b7427d419b7da22e8ee6feea62d Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Tue, 26 Sep 2006 05:08:52 +0000 Subject: [PATCH] update Stage --- stepmania/src/GameConstantsAndTypes.cpp | 13 ++----------- stepmania/src/GameConstantsAndTypes.h | 5 +++-- stepmania/src/GameState.cpp | 2 +- 3 files changed, 6 insertions(+), 14 deletions(-) diff --git a/stepmania/src/GameConstantsAndTypes.cpp b/stepmania/src/GameConstantsAndTypes.cpp index 747739e860..5003f3dac2 100644 --- a/stepmania/src/GameConstantsAndTypes.cpp +++ b/stepmania/src/GameConstantsAndTypes.cpp @@ -421,18 +421,9 @@ static const char *StageNames[] = { "Event", "Demo", }; -XToString( Stage, NUM_STAGES ); -static void LuaStage(lua_State* L) -{ - FOREACH_Stage( st ) - { - RString s = StageNames[st]; - s.MakeUpper(); - LUA->SetGlobal( "STAGE_"+s, st ); - } -} -REGISTER_WITH_LUA_FUNCTION( LuaStage ); +XToString( Stage, NUM_Stage ); LuaXToString( Stage ); +LuaXType( Stage, NUM_Stage, "Stage_" ); static const char *MultiPlayerStatusNames[] = { diff --git a/stepmania/src/GameConstantsAndTypes.h b/stepmania/src/GameConstantsAndTypes.h index 6ac93e4daa..91498425b0 100644 --- a/stepmania/src/GameConstantsAndTypes.h +++ b/stepmania/src/GameConstantsAndTypes.h @@ -431,11 +431,12 @@ enum Stage STAGE_ENDLESS, STAGE_EVENT, STAGE_DEMO, - NUM_STAGES, + NUM_Stage, STAGE_INVALID, }; -#define FOREACH_Stage( s ) FOREACH_ENUM( Stage, NUM_STAGES, s ) +#define FOREACH_Stage( s ) FOREACH_ENUM( Stage, NUM_Stage, s ) const RString& StageToString( Stage s ); +LuaDeclareType( Stage ); enum ProfileLoadResult diff --git a/stepmania/src/GameState.cpp b/stepmania/src/GameState.cpp index 9b1c473ca9..a373dd673a 100644 --- a/stepmania/src/GameState.cpp +++ b/stepmania/src/GameState.cpp @@ -1951,7 +1951,7 @@ public: DEFINE_METHOD( IsExtraStage, IsExtraStage() ) DEFINE_METHOD( IsExtraStage2, IsExtraStage2() ) DEFINE_METHOD( GetCurrentStage, GetCurrentStage() ) - DEFINE_METHOD( IsStagePossible, IsStagePossible((Stage)IArg(1)) ) + DEFINE_METHOD( IsStagePossible, IsStagePossible( Enum::Check(L, 1)) ) DEFINE_METHOD( HasEarnedExtraStage, HasEarnedExtraStage() ) DEFINE_METHOD( GetEasiestStepsDifficulty, GetEasiestStepsDifficulty() ) DEFINE_METHOD( IsEventMode, IsEventMode() )