summaryrefslogblamecommitdiffstats
path: root/source/cPlugin_Lua.h
blob: 73787de0c0df02cdfd5ebe47d0d9473aa2ae1176 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11




              
              




 





















                                                                                                      




                                                                                                      

#pragma once

class cPickup;
class cPlayer;
class cPlugin;





class cPlugin_Lua							//tolua_export
{											//tolua_export
public:
	cPlugin_Lua(const char* a_Plugin);		
	~cPlugin_Lua();

	virtual bool Initialize();

	std::string GetFileName() { return m_FileName; }	//tolua_export
	typedef struct lua_State lua_State;
	lua_State* GetLuaState();

	void AddPlugin( cPlugin* a_Plugin );
	void RemovePlugin( cPlugin* a_Plugin );
private:
	void UnloadPlugins();

	std::string m_FileName;
	lua_State* m_LuaState;

	typedef std::list< cPlugin* > PluginList;
	PluginList m_Plugins;
};											//tolua_export