Game bindings

This commit is contained in:
Glenn Maynard
2005-06-25 03:30:20 +00:00
parent 82e418916a
commit 2f3648d05c
3 changed files with 28 additions and 1 deletions
+19
View File
@@ -115,6 +115,25 @@ TapNoteScore Game::MapTapNoteScore( TapNoteScore tns ) const
}
}
// lua start
#include "LuaBinding.h"
class LunaGame: public Luna<Game>
{
public:
LunaGame() { LUA->Register( Register ); }
static int GetName( T* p, lua_State *L ) { lua_pushstring( L, p->m_szName ); return 1; }
static void Register( Lua *L )
{
ADD_METHOD( GetName )
Luna<T>::Register( L );
}
};
LUA_REGISTER_CLASS( Game )
// lua end
/*
* (c) 2001-2002 Chris Danford
* All rights reserved.
+6
View File
@@ -7,6 +7,7 @@
#include "MenuInput.h"
#include "GameConstantsAndTypes.h"
struct lua_State;
const int MAX_STYLES_PER_GAME = 10;
@@ -61,6 +62,11 @@ public:
TapNoteScore m_mapGreatTo;
TapNoteScore m_mapGoodTo;
TapNoteScore m_mapBooTo;
//
// Lua
//
void PushSelf( lua_State *L );
};
#endif
+3 -1
View File
@@ -1977,6 +1977,7 @@ void GameState::RevertSyncChanges()
// lua start
#include "LuaBinding.h"
#include "Game.h"
class LunaGameState: public Luna<GameState>
{
@@ -2099,7 +2100,7 @@ public:
PlayerNumber pn = (PlayerNumber)IArg(1);
lua_pushboolean(L, p->GetStageResult(pn)==RESULT_WIN); return 1;
}
static int GetCurrentGame( T* p, lua_State *L ) { const_cast<Game*>(p->GetCurrentGame())->PushSelf( L ); return 1; }
static void Register(lua_State *L)
{
ADD_METHOD( IsPlayerEnabled )
@@ -2148,6 +2149,7 @@ public:
ADD_METHOD( GetPremium )
ADD_METHOD( IsSyncDataChanged )
ADD_METHOD( IsWinner )
ADD_METHOD( GetCurrentGame )
Luna<T>::Register( L );