1
0
Commit Graph

12 Commits

Author SHA1 Message Date
madmaxoft
e0e8e18ab2 cLuaState: Added LogStackTrace() and GetTypeText() utility functions 2013-08-21 20:06:37 +02:00
madmaxoft
493100bdb0 Finished renaming cPlugin_NewLua to cPluginLua. 2013-08-19 09:39:18 +02:00
madmaxoft
dd60f55bcc Added the OnHopperPullingItem and OnHopperPushingItem hooks.
Requested in FS 412, slightly modified the params.
2013-08-11 14:57:07 +02:00
madmaxoft
d4a3c451c4 Added OnExploding() and OnExploded() hooks.
As requested in FS 413, with extra parameters:
World, BlockX, BlockY, BlockZ, Size, CanCauseFire, Source, SourceData

OnExploding() can return 3 values:
StopHook, CanCauseFire, ExplosionSize
2013-08-09 14:58:43 +02:00
madmaxoft
eb323166d9 Removed LuaScript.
The WebAdmin now uses LuaState directly to call the one function it needs.
2013-08-08 16:30:02 +02:00
madmaxoft
cc920ea929 cPlugin_NewLua is now completely rewritten to use templated LuaState calls. 2013-08-08 16:02:07 +02:00
madmaxoft
198b221997 LuaState refactoring: using templates for hook function calls.
This simplifies calling Lua functions considerably, it's almost like calling a C++ function, only with an extra argument to delimit args from returned values.
2013-08-08 14:08:35 +02:00
madmaxoft
3f4abe8c95 Addeed OnSpawningEntity, OnSpawnedEntity, OnSpawningMonster, OnSpawnedMonster hooks.
As requested in FS 418.
2013-08-08 09:13:13 +02:00
madmaxoft
9b839aa32e cLuaState has reference management, param checking and a fixed destructor.
References are now managed as RAII objects, cLuaState::cRef.
Destructor now calls correct function, either Close() or Detach(), based on the owned-ness of the lua_State *.
2013-08-07 14:26:18 +02:00
madmaxoft
2030bd47c8 cLuaState now tracks the function name and number of args 2013-08-06 08:59:54 +02:00
madmaxoft
2151bb8f5b cLuaState can now contain a detached LuaState, too.
This will be useful for cases when we get a lua_State * from the outside and are asked to perform operations on it.
2013-08-06 08:01:00 +02:00
madmaxoft
71bb41ee86 LuaState refactoring: initial part.
The cLuaState class is a wrapper for the lua_State * and for the common functions on it. The cPlugin_NewLua has been rewritten to use it instead of the raw pointer. Part of #33
2013-08-04 23:11:25 +02:00