simpler Lua boilerplate

This commit is contained in:
Glenn Maynard
2006-09-27 20:10:14 +00:00
parent 153bcedd40
commit 8ef5aeb341
8 changed files with 23 additions and 38 deletions
+3 -5
View File
@@ -96,15 +96,13 @@ void HoldJudgment::HandleMessage( const RString &sMessage )
class LunaHoldJudgment: public Luna<HoldJudgment> class LunaHoldJudgment: public Luna<HoldJudgment>
{ {
public: public:
LunaHoldJudgment() { LUA->Register( Register ); }
static int LoadFromMultiPlayer( T* p, lua_State *L ) { p->LoadFromMultiPlayer( Enum::Check<MultiPlayer>(L, 1) ); return 0; } static int LoadFromMultiPlayer( T* p, lua_State *L ) { p->LoadFromMultiPlayer( Enum::Check<MultiPlayer>(L, 1) ); return 0; }
static void Register(lua_State *L) LunaHoldJudgment()
{ {
ADD_METHOD( LoadFromMultiPlayer ); LUA->Register( Register );
Luna<T>::Register( L ); ADD_METHOD( LoadFromMultiPlayer );
} }
}; };
+3 -5
View File
@@ -125,15 +125,13 @@ void Judgment::HandleMessage( const RString &sMessage )
class LunaJudgment: public Luna<Judgment> class LunaJudgment: public Luna<Judgment>
{ {
public: public:
LunaJudgment() { LUA->Register( Register ); }
static int LoadFromMultiPlayer( T* p, lua_State *L ) { p->LoadFromMultiPlayer( Enum::Check<MultiPlayer>(L, 1) ); return 0; } static int LoadFromMultiPlayer( T* p, lua_State *L ) { p->LoadFromMultiPlayer( Enum::Check<MultiPlayer>(L, 1) ); return 0; }
static void Register(lua_State *L) LunaJudgment()
{ {
ADD_METHOD( LoadFromMultiPlayer ); LUA->Register( Register );
Luna<T>::Register( L ); ADD_METHOD( LoadFromMultiPlayer );
} }
}; };
+3 -5
View File
@@ -319,15 +319,13 @@ void PaneDisplay::SetFocus( PaneTypes NewPane )
class LunaPaneDisplay: public Luna<PaneDisplay> class LunaPaneDisplay: public Luna<PaneDisplay>
{ {
public: public:
LunaPaneDisplay() { LUA->Register( Register ); }
static int SetFromGameState( T* p, lua_State *L ) { p->SetFromGameState(); return 0; } static int SetFromGameState( T* p, lua_State *L ) { p->SetFromGameState(); return 0; }
static void Register(lua_State *L) LunaPaneDisplay()
{ {
ADD_METHOD( SetFromGameState ); LUA->Register( Register );
Luna<T>::Register( L ); ADD_METHOD( SetFromGameState );
} }
}; };
+3 -5
View File
@@ -206,8 +206,6 @@ LuaFunction( FormatPercentScore, PercentageDisplay::FormatPercentScore( FArg(1)
class LunaPercentageDisplay: public Luna<PercentageDisplay> class LunaPercentageDisplay: public Luna<PercentageDisplay>
{ {
public: public:
LunaPercentageDisplay() { LUA->Register( Register ); }
static int LoadFromStats( T* p, lua_State *L ) static int LoadFromStats( T* p, lua_State *L )
{ {
const PlayerState *pStageStats = Luna<PlayerState>::check( L, 1 ); const PlayerState *pStageStats = Luna<PlayerState>::check( L, 1 );
@@ -216,11 +214,11 @@ public:
return 0; return 0;
} }
static void Register(lua_State *L) LunaPercentageDisplay()
{ {
ADD_METHOD( LoadFromStats ); LUA->Register( Register );
Luna<T>::Register( L ); ADD_METHOD( LoadFromStats );
} }
}; };
+4 -5
View File
@@ -73,18 +73,17 @@ const RectF *RageTexture::GetTextureCoordRect( int iFrameNo ) const
class LunaRageTexture: public Luna<RageTexture> class LunaRageTexture: public Luna<RageTexture>
{ {
public: public:
LunaRageTexture() { LUA->Register( Register ); }
static int position( T* p, lua_State *L ) { p->SetPosition( FArg(1) ); return 0; } static int position( T* p, lua_State *L ) { p->SetPosition( FArg(1) ); return 0; }
static int loop( T* p, lua_State *L ) { p->SetLooping( !!IArg(1) ); return 0; } static int loop( T* p, lua_State *L ) { p->SetLooping( !!IArg(1) ); return 0; }
static int rate( T* p, lua_State *L ) { p->SetPlaybackRate( FArg(1) ); return 0; } static int rate( T* p, lua_State *L ) { p->SetPlaybackRate( FArg(1) ); return 0; }
static void Register(lua_State *L) { LunaRageTexture()
{
LUA->Register( Register );
ADD_METHOD( position ); ADD_METHOD( position );
ADD_METHOD( loop ); ADD_METHOD( loop );
ADD_METHOD( rate ); ADD_METHOD( rate );
Luna<T>::Register( L );
} }
}; };
+2 -4
View File
@@ -64,11 +64,9 @@ void ScoreDisplayAliveTime::UpdateNumber()
class LunaScoreDisplayAliveTime: public Luna<ScoreDisplayAliveTime> class LunaScoreDisplayAliveTime: public Luna<ScoreDisplayAliveTime>
{ {
public: public:
LunaScoreDisplayAliveTime() { LUA->Register( Register ); } LunaScoreDisplayAliveTime()
static void Register(lua_State *L)
{ {
Luna<T>::Register( L ); LUA->Register( Register );
} }
}; };
+2 -4
View File
@@ -73,11 +73,9 @@ void ScoreDisplayCalories::UpdateNumber()
class LunaScoreDisplayCalories: public Luna<ScoreDisplayCalories> class LunaScoreDisplayCalories: public Luna<ScoreDisplayCalories>
{ {
public: public:
LunaScoreDisplayCalories() { LUA->Register( Register ); } LunaScoreDisplayCalories()
static void Register(lua_State *L)
{ {
Luna<T>::Register( L ); LUA->Register( Register );
} }
}; };
+3 -5
View File
@@ -120,17 +120,15 @@ void WorkoutGraph::SetFromGameStateAndHighlightSong( int iSongIndex )
class LunaWorkoutGraph: public Luna<WorkoutGraph> class LunaWorkoutGraph: public Luna<WorkoutGraph>
{ {
public: public:
LunaWorkoutGraph() { LUA->Register( Register ); }
static int SetFromGameState( T* p, lua_State *L ) { p->SetFromGameState(); return 0; } static int SetFromGameState( T* p, lua_State *L ) { p->SetFromGameState(); return 0; }
static int SetFromGameStateAndHighlightSong( T* p, lua_State *L ) { p->SetFromGameStateAndHighlightSong(IArg(1)); return 0; } static int SetFromGameStateAndHighlightSong( T* p, lua_State *L ) { p->SetFromGameStateAndHighlightSong(IArg(1)); return 0; }
static void Register(lua_State *L) LunaWorkoutGraph()
{ {
LUA->Register( Register );
ADD_METHOD( SetFromGameState ); ADD_METHOD( SetFromGameState );
ADD_METHOD( SetFromGameStateAndHighlightSong ); ADD_METHOD( SetFromGameStateAndHighlightSong );
Luna<T>::Register( L );
} }
}; };