From c67422591c4ddeea770dee994f9604e8fb0e3343 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Tue, 26 Sep 2006 07:48:47 +0000 Subject: [PATCH] update bindings --- stepmania/src/GameConstantsAndTypes.cpp | 55 ++++--------------------- stepmania/src/GameConstantsAndTypes.h | 11 +++-- 2 files changed, 16 insertions(+), 50 deletions(-) diff --git a/stepmania/src/GameConstantsAndTypes.cpp b/stepmania/src/GameConstantsAndTypes.cpp index 3ab24d2d71..b4d383f3b2 100644 --- a/stepmania/src/GameConstantsAndTypes.cpp +++ b/stepmania/src/GameConstantsAndTypes.cpp @@ -31,17 +31,8 @@ static const char *RadarCategoryNames[] = { }; XToString( RadarCategory, NUM_RadarCategory ); XToLocalizedString( RadarCategory ); -LuaFunction( RadarCategoryToLocalizedString, RadarCategoryToLocalizedString((RadarCategory) IArg(1)) ); - -static void LuaRadarCategory(lua_State* L) -{ - FOREACH_RadarCategory( rc ) - { - RString s = RadarCategoryToString( rc ); - LUA->SetGlobal( "RadarCategory_"+s, rc ); - } -} -REGISTER_WITH_LUA_FUNCTION( LuaRadarCategory ); +LuaFunction( RadarCategoryToLocalizedString, RadarCategoryToLocalizedString(Enum::Check(L, 1)) ); +LuaXType( RadarCategory ); static void LuaStepsType(lua_State* L) { @@ -100,21 +91,12 @@ XToLocalizedString( PlayerController ); static const char *CoinModeNames[] = { - "home", - "pay", - "free", + "Home", + "Pay", + "Free", }; -XToString( CoinMode, NUM_COIN_MODES ); -static void LuaCoinMode(lua_State* L) -{ - FOREACH_CoinMode( i ) - { - RString s = CoinModeNames[i]; - s.MakeUpper(); - LUA->SetGlobal( "COIN_MODE_"+s, i ); - } -} -REGISTER_WITH_LUA_FUNCTION( LuaCoinMode ); +XToString( CoinMode, NUM_CoinMode ); +LuaXType( CoinMode ); static const char *PremiumNames[] = { @@ -148,28 +130,7 @@ static const char *SortOrderNames[] = { }; XToString( SortOrder, NUM_SortOrder ); StringToX( SortOrder ); - -static void LuaSortOrder(lua_State* L) -{ - FOREACH_SortOrder( so ) - { - RString s = SortOrderToString( so ); - - // [uppercase] -> _[uppercase] - for( unsigned i=0; iSetGlobal( "SORT"+s, so ); - } -} -REGISTER_WITH_LUA_FUNCTION( LuaSortOrder ); +LuaXType( SortOrder ); static const char *TapNoteScoreNames[] = { diff --git a/stepmania/src/GameConstantsAndTypes.h b/stepmania/src/GameConstantsAndTypes.h index fc67fa2878..fd4e9591fb 100644 --- a/stepmania/src/GameConstantsAndTypes.h +++ b/stepmania/src/GameConstantsAndTypes.h @@ -29,11 +29,13 @@ enum RadarCategory RadarCategory_Mines, RadarCategory_Hands, RadarCategory_Rolls, - NUM_RadarCategory // leave this at the end + NUM_RadarCategory, // leave this at the end + RadarCategory_Invalid }; #define FOREACH_RadarCategory( rc ) FOREACH_ENUM( RadarCategory, NUM_RadarCategory, rc ) const RString& RadarCategoryToString( RadarCategory cat ); const RString& RadarCategoryToLocalizedString( RadarCategory cat ); +LuaDeclareType( RadarCategory ); enum StepsType @@ -122,6 +124,7 @@ const SortOrder MAX_SELECTABLE_SORT = (SortOrder)(SORT_ROULETTE-1); #define FOREACH_SortOrder( so ) FOREACH_ENUM( SortOrder, NUM_SortOrder, so ) const RString& SortOrderToString( SortOrder so ); SortOrder StringToSortOrder( const RString& str ); +LuaDeclareType( SortOrder ); inline bool IsSongSort( SortOrder so ) { return so >= SORT_PREFERRED && so <= SORT_CHALLENGE_METER; } @@ -300,10 +303,12 @@ enum CoinMode COIN_MODE_HOME, COIN_MODE_PAY, COIN_MODE_FREE, - NUM_COIN_MODES + NUM_CoinMode, + CoinMode_Invalid }; -#define FOREACH_CoinMode( i ) FOREACH_ENUM( CoinMode, NUM_COIN_MODES, i ) +#define FOREACH_CoinMode( i ) FOREACH_ENUM( CoinMode, NUM_CoinMode, i ) const RString& CoinModeToString( CoinMode cm ); +LuaDeclareType( CoinMode ); //