simpler Lua boilerplate

This commit is contained in:
Glenn Maynard
2006-09-27 20:03:31 +00:00
parent ea7c05cee5
commit 153bcedd40
19 changed files with 64 additions and 96 deletions
+5 -6
View File
@@ -239,14 +239,13 @@ void BPMDisplay::SetFromGameState()
class LunaBPMDisplay: public Luna<BPMDisplay>
{
public:
LunaBPMDisplay() { LUA->Register( Register ); }
static int SetFromGameState( T* p, lua_State *L ) { p->SetFromGameState(); return 0; }
static void Register(lua_State *L)
{
ADD_METHOD( SetFromGameState );
Luna<T>::Register( L );
LunaBPMDisplay()
{
LUA->Register( Register );
ADD_METHOD( SetFromGameState );
}
};
+3 -5
View File
@@ -191,8 +191,6 @@ void Banner::LoadRandom()
class LunaBanner: public Luna<Banner>
{
public:
LunaBanner() { LUA->Register( Register ); }
static int scaletoclipped( T* p, lua_State *L ) { p->ScaleToClipped(FArg(1),FArg(2)); return 0; }
static int ScaleToClipped( T* p, lua_State *L ) { p->ScaleToClipped(FArg(1),FArg(2)); return 0; }
static int LoadFromSong( T* p, lua_State *L )
@@ -232,8 +230,10 @@ public:
return 0;
}
static void Register(lua_State *L)
LunaBanner()
{
LUA->Register( Register );
ADD_METHOD( scaletoclipped );
ADD_METHOD( ScaleToClipped );
ADD_METHOD( LoadFromSong );
@@ -242,8 +242,6 @@ public:
ADD_METHOD( LoadCardFromCharacter );
ADD_METHOD( LoadBannerFromUnlockEntry );
ADD_METHOD( LoadBackgroundFromUnlockEntry );
Luna<T>::Register( L );
}
};
+3 -5
View File
@@ -110,8 +110,6 @@ void ComboGraph::Load( const StageStats &s, const PlayerStageStats &pss )
class LunaComboGraph: public Luna<ComboGraph>
{
public:
LunaComboGraph() { LUA->Register( Register ); }
static int LoadFromStats( T* p, lua_State *L )
{
StageStats *pStageStats = Luna<StageStats>::check( L, 1 );
@@ -120,11 +118,11 @@ public:
return 0;
}
static void Register(lua_State *L)
LunaComboGraph()
{
ADD_METHOD( LoadFromStats );
LUA->Register( Register );
Luna<T>::Register( L );
ADD_METHOD( LoadFromStats );
}
};
+3 -5
View File
@@ -95,15 +95,13 @@ void CourseContentsList::SetFromGameState()
class LunaCourseContentsList: public Luna<CourseContentsList>
{
public:
LunaCourseContentsList() { LUA->Register( Register ); }
static int SetFromGameState( T* p, lua_State *L ) { p->SetFromGameState(); return 0; }
static void Register(lua_State *L)
LunaCourseContentsList()
{
ADD_METHOD( SetFromGameState );
LUA->Register( Register );
Luna<T>::Register( L );
ADD_METHOD( SetFromGameState );
}
};
+3 -5
View File
@@ -192,15 +192,13 @@ void CourseEntryDisplay::SetFromGameState( int iCourseEntryIndex )
class LunaCourseEntryDisplay: public Luna<CourseEntryDisplay>
{
public:
LunaCourseEntryDisplay() { LUA->Register( Register ); }
static int SetFromGameState( T* p, lua_State *L ) { p->SetFromGameState(IArg(1)); return 0; }
static void Register(lua_State *L)
LunaCourseEntryDisplay()
{
ADD_METHOD( SetFromGameState );
LUA->Register( Register );
Luna<T>::Register( L );
ADD_METHOD( SetFromGameState );
}
};
+3 -5
View File
@@ -105,8 +105,6 @@ void DifficultyIcon::SetFromDifficulty( Difficulty dc )
class LunaDifficultyIcon: public Luna<DifficultyIcon>
{
public:
LunaDifficultyIcon() { LUA->Register( Register ); }
static int SetFromSteps( T* p, lua_State *L )
{
if( lua_isnil(L,1) )
@@ -137,15 +135,15 @@ public:
static int SetPlayer( T* p, lua_State *L ) { p->SetPlayer( Enum::Check<PlayerNumber>(L, 1) ); return 0; }
static int SetFromDifficulty( T* p, lua_State *L ) { p->SetFromDifficulty( Enum::Check<Difficulty>(L, 1) ); return 0; }
static void Register(lua_State *L)
LunaDifficultyIcon()
{
LUA->Register( Register );
ADD_METHOD( Unset );
ADD_METHOD( SetPlayer );
ADD_METHOD( SetFromSteps );
ADD_METHOD( SetFromTrail );
ADD_METHOD( SetFromDifficulty );
Luna<T>::Register( L );
}
};
+3 -5
View File
@@ -379,15 +379,13 @@ void DifficultyList::Hide()
class LunaDifficultyList: public Luna<DifficultyList>
{
public:
LunaDifficultyList() { LUA->Register( Register ); }
static int setfromgamestate( T* p, lua_State *L ) { p->SetFromGameState(); return 0; }
static void Register(lua_State *L)
LunaDifficultyList()
{
ADD_METHOD( setfromgamestate );
LUA->Register( Register );
Luna<T>::Register( L );
ADD_METHOD( setfromgamestate );
}
};
+3 -5
View File
@@ -257,8 +257,6 @@ void DifficultyMeter::SetInternal( int iMeter, Difficulty dc, const RString &sDi
class LunaDifficultyMeter: public Luna<DifficultyMeter>
{
public:
LunaDifficultyMeter() { LUA->Register( Register ); }
static int Load( T* p, lua_State *L ) { p->Load( SArg(1) ); return 0; }
static int SetFromMeterAndDifficulty( T* p, lua_State *L ) { p->SetFromMeterAndDifficulty( IArg(1), Enum::Check<Difficulty>(L, 2) ); return 0; }
static int SetFromSteps( T* p, lua_State *L )
@@ -294,15 +292,15 @@ public:
return 0;
}
static void Register(lua_State *L)
LunaDifficultyMeter()
{
LUA->Register( Register );
ADD_METHOD( Load );
ADD_METHOD( SetFromMeterAndDifficulty );
ADD_METHOD( SetFromSteps );
ADD_METHOD( SetFromTrail );
ADD_METHOD( SetFromGameState );
Luna<T>::Register( L );
}
};
+3 -5
View File
@@ -245,8 +245,6 @@ void FadingBanner::LoadCourseFallback()
class LunaFadingBanner: public Luna<FadingBanner>
{
public:
LunaFadingBanner() { LUA->Register( Register ); }
static int scaletoclipped( T* p, lua_State *L ) { p->ScaleToClipped(FArg(1),FArg(2)); return 0; }
static int ScaleToClipped( T* p, lua_State *L ) { p->ScaleToClipped(FArg(1),FArg(2)); return 0; }
static int LoadFromSong( T* p, lua_State *L )
@@ -274,16 +272,16 @@ public:
return 0;
}
static void Register(lua_State *L)
LunaFadingBanner()
{
LUA->Register( Register );
ADD_METHOD( scaletoclipped );
ADD_METHOD( ScaleToClipped );
ADD_METHOD( LoadFromSong );
ADD_METHOD( LoadFromCourse );
ADD_METHOD( LoadIconFromCharacter );
ADD_METHOD( LoadCardFromCharacter );
Luna<T>::Register( L );
}
};
+5 -5
View File
@@ -179,13 +179,13 @@ void GradeDisplay::SettleQuickly()
class LunaGradeDisplay: public Luna<GradeDisplay>
{
public:
LunaGradeDisplay() { LUA->Register( Register ); }
static int scroll( T* p, lua_State *L ) { p->Scroll(); return 0; }
static void Register(lua_State *L) {
ADD_METHOD( scroll );
Luna<T>::Register( L );
LunaGradeDisplay()
{
LUA->Register( Register );
ADD_METHOD( scroll );
}
};
+3 -5
View File
@@ -275,8 +275,6 @@ void GraphDisplay::UpdateVerts()
class LunaGraphDisplay: public Luna<GraphDisplay>
{
public:
LunaGraphDisplay() { LUA->Register( Register ); }
static int LoadFromStats( T* p, lua_State *L )
{
StageStats *pStageStats = Luna<StageStats>::check( L, 1 );
@@ -285,11 +283,11 @@ public:
return 0;
}
static void Register(lua_State *L)
LunaGraphDisplay()
{
ADD_METHOD( LoadFromStats );
LUA->Register( Register );
Luna<T>::Register( L );
ADD_METHOD( LoadFromStats );
}
};
+3 -5
View File
@@ -223,8 +223,6 @@ void GrooveRadar::GrooveRadarValueMap::DrawPrimitives()
class LunaGrooveRadar: public Luna<GrooveRadar>
{
public:
LunaGrooveRadar() { LUA->Register( Register ); }
static int SetFromRadarValues( T* p, lua_State *L )
{
PlayerNumber pn = Enum::Check<PlayerNumber>(L, 1);
@@ -243,14 +241,14 @@ public:
static int tweenonscreen( T* p, lua_State *L ) { p->TweenOnScreen(); return 0; }
static int tweenoffscreen( T* p, lua_State *L ) { p->TweenOffScreen(); return 0; }
static void Register(lua_State *L)
LunaGrooveRadar()
{
LUA->Register( Register );
ADD_METHOD( SetFromRadarValues );
ADD_METHOD( SetEmpty );
ADD_METHOD( tweenonscreen );
ADD_METHOD( tweenoffscreen );
Luna<T>::Register( L );
}
};
+4 -5
View File
@@ -64,8 +64,6 @@ void HelpDisplay::Update( float fDeltaTime )
class LunaHelpDisplay: public Luna<HelpDisplay>
{
public:
LunaHelpDisplay() { LUA->Register( Register ); }
static int settips( T* p, lua_State *L )
{
luaL_checktype( L, 1, LUA_TTABLE );
@@ -104,13 +102,14 @@ public:
return 2;
}
static int setsecsbetweenswitches( T* p, lua_State *L ) { p->SetSecsBetweenSwitches( FArg(1) ); return 0; }
static void Register(lua_State *L)
LunaHelpDisplay()
{
LUA->Register( Register );
ADD_METHOD( settips );
ADD_METHOD( gettips );
ADD_METHOD( setsecsbetweenswitches );
Luna<T>::Register( L );
}
};
+5 -5
View File
@@ -184,15 +184,15 @@ void MenuTimer::SetText( float fSeconds )
class LunaMenuTimer: public Luna<MenuTimer>
{
public:
LunaMenuTimer() { LUA->Register( Register ); }
static int setseconds( T* p, lua_State *L ) { p->SetSeconds(FArg(1)); return 0; }
static int pause( T* p, lua_State *L ) { p->Pause(); return 0; }
static void Register(lua_State *L) {
LunaMenuTimer()
{
LUA->Register( Register );
ADD_METHOD( setseconds );
ADD_METHOD( pause );
Luna<T>::Register( L );
}
};
+3 -5
View File
@@ -1232,8 +1232,6 @@ bool Song::IsMarathon() const
class LunaSong: public Luna<Song>
{
public:
LunaSong() { LUA->Register( Register ); }
static int GetDisplayFullTitle( T* p, lua_State *L ) { lua_pushstring(L, p->GetDisplayFullTitle() ); return 1; }
static int GetTranslitFullTitle( T* p, lua_State *L ) { lua_pushstring(L, p->GetTranslitFullTitle() ); return 1; }
static int GetDisplayMainTitle( T* p, lua_State *L ) { lua_pushstring(L, p->GetDisplayMainTitle() ); return 1; }
@@ -1272,8 +1270,10 @@ public:
return 1;
}
static void Register(lua_State *L)
LunaSong()
{
LUA->Register( Register );
ADD_METHOD( GetDisplayFullTitle );
ADD_METHOD( GetTranslitFullTitle );
ADD_METHOD( GetDisplayMainTitle );
@@ -1292,8 +1292,6 @@ public:
ADD_METHOD( IsLong );
ADD_METHOD( IsMarathon );
ADD_METHOD( HasStepsTypeAndDifficulty );
Luna<T>::Register( L );
}
};
+3 -5
View File
@@ -398,8 +398,6 @@ void Steps::SetCachedRadarValues( const RadarValues v[NUM_PLAYERS] )
class LunaSteps: public Luna<Steps>
{
public:
LunaSteps() { LUA->Register( Register ); }
DEFINE_METHOD( GetStepsType, m_StepsType )
DEFINE_METHOD( GetDifficulty, GetDifficulty() )
DEFINE_METHOD( GetDescription, GetDescription() )
@@ -415,8 +413,10 @@ public:
return 1;
}
static void Register( lua_State *L )
LunaSteps()
{
LUA->Register( Register );
ADD_METHOD( GetStepsType );
ADD_METHOD( GetDifficulty );
ADD_METHOD( GetDescription );
@@ -424,8 +424,6 @@ public:
ADD_METHOD( GetFilename );
ADD_METHOD( GetRadarValues );
ADD_METHOD( IsAutogen );
Luna<T>::Register( L );
}
};
+3 -5
View File
@@ -101,17 +101,15 @@ void Style::GetMinAndMaxColX( PlayerNumber pn, float& fMixXOut, float& fMaxXOut
class LunaStyle: public Luna<Style>
{
public:
LunaStyle() { LUA->Register( Register ); }
DEFINE_METHOD( GetStyleType, m_StyleType )
DEFINE_METHOD( GetStepsType, m_StepsType )
static void Register(lua_State *L)
LunaStyle()
{
LUA->Register( Register );
ADD_METHOD( GetStyleType );
ADD_METHOD( GetStepsType );
Luna<T>::Register( L );
}
};
+3 -5
View File
@@ -191,8 +191,6 @@ bool Trail::ContainsSong( Song* pSong ) const
class LunaTrail: public Luna<Trail>
{
public:
LunaTrail() { LUA->Register( Register ); }
static int GetDifficulty( T* p, lua_State *L ) { lua_pushnumber(L, p->m_CourseDifficulty ); return 1; }
static int GetCourseDifficulty( T* p, lua_State *L ) { lua_pushnumber(L, p->m_CourseDifficulty ); return 1; } // deprecated
static int GetStepsType( T* p, lua_State *L ) { lua_pushnumber(L, p->m_StepsType ); return 1; }
@@ -232,15 +230,15 @@ public:
return 2;
}
static void Register(lua_State *L)
LunaTrail()
{
LUA->Register( Register );
ADD_METHOD( GetDifficulty );
ADD_METHOD( GetCourseDifficulty );
ADD_METHOD( GetStepsType );
ADD_METHOD( GetRadarValues );
ADD_METHOD( GetArtists );
Luna<T>::Register( L );
}
};
+3 -5
View File
@@ -224,21 +224,19 @@ bool Workout::SaveToFile( RString sFile )
class LunaWorkout: public Luna<Workout>
{
public:
LunaWorkout() { LUA->Register( Register ); }
static int GetName( T* p, lua_State *L ) { lua_pushstring(L, p->m_sName ); return 1; }
static int GetMinutes( T* p, lua_State *L ) { lua_pushnumber(L, p->m_iMinutes ); return 1; }
static int GetEstimatedNumSongs( T* p, lua_State *L ) { lua_pushnumber(L, p->GetEstimatedNumSongs() ); return 1; }
static int GetWorkoutStepsType( T* p, lua_State *L ) { lua_pushnumber(L, p->m_WorkoutStepsType ); return 1; }
static void Register(lua_State *L)
LunaWorkout()
{
LUA->Register( Register );
ADD_METHOD( GetName );
ADD_METHOD( GetMinutes );
ADD_METHOD( GetEstimatedNumSongs );
ADD_METHOD( GetWorkoutStepsType );
Luna<T>::Register( L );
}
};