diff --git a/stepmania/src/Screen.cpp b/stepmania/src/Screen.cpp index 8aef166034..bfa52ae6a2 100644 --- a/stepmania/src/Screen.cpp +++ b/stepmania/src/Screen.cpp @@ -255,6 +255,23 @@ void Screen::ClearMessageQueue( const ScreenMessage SM ) m_QueuedMessages.erase( m_QueuedMessages.begin()+i ); } +// lua start +#include "LuaBinding.h" + +class LunaScreen: public Luna +{ +public: + LunaScreen() { LUA->Register( Register ); } + + static void Register( Lua *L ) + { + Luna::Register( L ); + } +}; + +LUA_REGISTER_DERIVED_CLASS( Screen, ActorFrame ) +// lua end + /* * (c) 2001-2004 Chris Danford, Glenn Maynard * All rights reserved. diff --git a/stepmania/src/Screen.h b/stepmania/src/Screen.h index d3a1fc5ed6..09812724f4 100644 --- a/stepmania/src/Screen.h +++ b/stepmania/src/Screen.h @@ -53,6 +53,11 @@ public: static bool JoinInput( const MenuInput &MenuI ); // return true if a player joined + // + // Lua + // + virtual void PushSelf( lua_State *L ); + protected: // structure for holding messages sent to a Screen struct QueuedScreenMessage { diff --git a/stepmania/src/ScreenWithMenuElements.cpp b/stepmania/src/ScreenWithMenuElements.cpp index 15276cc1c2..86283620e5 100644 --- a/stepmania/src/ScreenWithMenuElements.cpp +++ b/stepmania/src/ScreenWithMenuElements.cpp @@ -269,6 +269,23 @@ void ScreenWithMenuElements::UpdateStage() m_sprStage[s]->SetHidden( s != GAMESTATE->GetCurrentStage() ); } +// lua start +#include "LuaBinding.h" + +class LunaScreenWithMenuElements: public Luna +{ +public: + LunaScreenWithMenuElements() { LUA->Register( Register ); } + + static void Register( Lua *L ) + { + Luna::Register( L ); + } +}; + +LUA_REGISTER_DERIVED_CLASS( ScreenWithMenuElements, Screen ) +// lua end + /* * (c) 2004 Chris Danford * All rights reserved. diff --git a/stepmania/src/ScreenWithMenuElements.h b/stepmania/src/ScreenWithMenuElements.h index 6606cd152f..889475f69e 100644 --- a/stepmania/src/ScreenWithMenuElements.h +++ b/stepmania/src/ScreenWithMenuElements.h @@ -30,6 +30,11 @@ public: void TweenOffScreen(); + // + // Lua + // + virtual void PushSelf( lua_State *L ); + protected: virtual void HandleMessage( const CString& sMessage );