simpler Lua boilerplate

This commit is contained in:
Glenn Maynard
2006-09-27 20:30:29 +00:00
parent df887f4efd
commit f4975f1f54
25 changed files with 80 additions and 124 deletions
+3 -5
View File
@@ -277,23 +277,21 @@ void StageStats::CommitScores( bool bSummary )
class LunaStageStats: public Luna<StageStats>
{
public:
LunaStageStats() { LUA->Register( Register ); }
static int GetPlayerStageStats( T* p, lua_State *L ) { p->m_player[Enum::Check<PlayerNumber>(L, 1)].PushSelf(L); return 1; }
static int GetMultiPlayerStageStats( T* p, lua_State *L ) { p->m_multiPlayer[Enum::Check<MultiPlayer>(L, 1)].PushSelf(L); return 1; }
static int GetGameplaySeconds( T* p, lua_State *L ) { lua_pushnumber(L, p->fGameplaySeconds); return 1; }
static int OnePassed( T* p, lua_State *L ) { lua_pushboolean(L, p->OnePassed()); return 1; }
static int AllFailed( T* p, lua_State *L ) { lua_pushboolean(L, p->AllFailed()); return 1; }
static void Register(lua_State *L)
LunaStageStats()
{
LUA->Register( Register );
ADD_METHOD( GetPlayerStageStats );
ADD_METHOD( GetMultiPlayerStageStats );
ADD_METHOD( GetGameplaySeconds );
ADD_METHOD( OnePassed );
ADD_METHOD( AllFailed );
Luna<T>::Register( L );
}
};