1
0
Fork 0
Commit Graph

52 Commits

Author SHA1 Message Date
Mattes D 360c632e36 cNetwork: Exported the Connect() method and cTCPLink class to Lua. 2015-02-04 08:40:50 +01:00
Mattes D e211aafaa4 Fixed type-conversion warnings. 2015-01-18 11:02:17 +01:00
Tycho 2a9664d6ca Initial convertion of a_Dt to std::chrono
also refactored cWorld::m_WorldAge and cWorld::m_TimeOfDay
2015-01-11 21:12:26 +00:00
Tiger Wang a26541a7c3 En masse NULL -> nullptr replace 2014-10-22 20:12:49 -07:00
Mattes D 7ed27c6b80 LuaState: Projectiles are pushed using their full class. 2014-10-22 16:06:32 +02:00
Mattes D dc4185fb86 cLuaState: cEntity is pushed with specific type. 2014-10-21 12:43:06 +02:00
Mattes D b78078a3a6 Fixed a potential crash in cEntity bindings. 2014-10-20 17:32:09 +02:00
Mattes D d50bbf3899 cLuaState: cMonster descendants don't push their specific type.
The individual mob types aren't exported to Lua, so pushing them would crash the server.
2014-10-19 12:49:54 +02:00
Mattes D b0a59927fb cLuaState: cBlockEntity descendants are pushed with proper class type. 2014-10-19 12:46:25 +02:00
Mattes D ebd31ff132 LuaState: Pushing a cEntity pushes the correct class name.
This makes Lua scripts easier, as they don't need to cast values from cEntity to the specific descendant.
2014-10-19 11:46:38 +02:00
madmaxoft 4e82a58060 Fixed crash in ForEachEntityInBox API.
Fixes #1511.
2014-10-06 13:48:44 +02:00
madmaxoft 014a55a15a LuaState: Fixed class value-getting off the stack. 2014-09-03 23:05:22 +02:00
madmaxoft a51c1e0b73 Added cWorld::ForEachEntityInBox() 2014-09-03 17:00:26 +02:00
Mattes D 51df169ad5 cLuaState: Fixed Vector3<> names pushed to Lua. 2014-08-22 10:33:15 +02:00
madmaxoft 00c524519e Fixed style: spaces after commas. 2014-07-19 14:53:41 +02:00
madmaxoft 2423fbf2ef Normalized comments.
This was mostly done automatically and then visually inspected for obvious errors.
All //-style comments should have a 2-space separation from the code, and 1 space after the comment sign.
2014-07-17 22:15:34 +02:00
madmaxoft 2dbed03cbc Changed OnWeatherChanging hook to always read the returned weather.
Ref.: http://forum.mc-server.org/showthread.php?tid=1512
2014-07-03 17:49:21 +02:00
madmaxoft d92520016d Fixed OnProjectileHitBlock bindings.
Also sorted the various cLuaState::Push() functions.
2014-06-03 19:29:23 +02:00
Tycho b449ad8613 Merge branch 'MacFixes'
Conflicts:
	src/DeadlockDetect.cpp
	src/World.cpp
2014-04-02 06:54:57 -07:00
STRWarrior a6ef40cb6e Fixed error when the hook gets called. 2014-03-29 15:43:03 +01:00
Samuel Barney eb3cc729d4 More fixes to get it to compile for me on Mac 10.9. Mostly just newline additions, but some of the unused variables were causing errors, so I wrapped them in #ifndef __APPLE__ calls, since I didn't know if they were going to be used in the future.
Also had to undefine TOLUA_TEMPLATE_BIND a couple of times.
2014-03-25 11:15:05 -06:00
madmaxoft 964647a900 Made pushing plain pointer to Lua a valid operation, with a warning.
This is used for exotic explosions, and the NORETURNDEBUG macro caused MSVC warnings across the entire cLuaState class (MSVC marked ALL Push() function overloads as non-returning)
2014-03-20 09:16:47 +01:00
madmaxoft 74b7f51b89 Errors in Lua don't include the error handler in the stack trace.
Fixes #817.
2014-03-19 22:55:47 +01:00
Tycho d904e89712 Merge branch 'Werror' into warnings
Conflicts:
	src/Globals.h
2014-03-12 10:12:13 -07:00
madmaxoft 5d7df54e35 Fixed Lua string return values.
Fixes #773.
2014-03-12 14:11:28 +01:00
madmaxoft 0c15fdf7b0 Moved Lua API registering into a separate function.
This will allow us to use Lua as lite-config files as well, should we want to.
2014-03-12 13:05:28 +01:00
Tycho 16b27c4b7a Fixed a load of format string errors 2014-03-11 14:16:08 -07:00
Tycho b480148116 Fixed warnings 2014-03-07 10:26:07 -08:00
madmaxoft ecfe17b096 cLuaState: Made public the GetStackValue() functions. 2014-03-04 21:55:24 +01:00
andrew 68b75f7b7a Manually exported g_Block tables 2014-03-02 11:12:29 +02:00
madmaxoft aaddc98b46 Attempted fix for several GCC warnings. 2014-02-26 21:37:38 +01:00
madmaxoft 865ae82114 Add Lua plugin path to package.path and .cpath.
Fixes #693.
2014-02-17 23:12:46 +01:00
madmaxoft 33c84aaa4d Added cLuaState::CheckParamFunctionOrNil().
Also fixed error reporting for the two function-checking functions.
2014-02-11 15:03:35 +01:00
madmaxoft b41bb3bb44 Fixed nested plugin function calls. 2014-02-11 08:52:14 +01:00
madmaxoft 589a4839df cLuaState: Stack traces don't include ghost 0-th element. 2014-02-10 22:44:56 +01:00
madmaxoft 310a25c456 cLuaState::cRef can be unbound and re-bound.
This will allow us to store Lua references as member variables in classes and initialize those later than in the constructor.
2014-02-09 18:39:22 +01:00
madmaxoft 010e64be11 Removed a useless check in cLuaState. 2014-02-04 22:24:03 +01:00
madmaxoft 3dc1452790 Fixed calling plugins with userdata params. 2014-02-04 14:26:36 +01:00
madmaxoft 1dbfd7eb76 Removed a leftover debug message. 2014-02-04 11:37:34 +01:00
madmaxoft 69c85e5169 Fixed error handling in cPluginManager:CallPlugin() API.
Fixed: When the called function malfunctioned, the entire plugin's call was aborted.
2014-02-04 10:29:10 +01:00
madmaxoft aa19f4fd04 Improved error resistance in cPluginManager:CallPlugin().
Fixed: If the call failed, all the next plugin calls would fail as well.
2014-02-04 09:18:32 +01:00
madmaxoft b61a74d6a2 Lua: Fixed an error in table-functions callbacks. 2014-01-29 22:56:38 +01:00
madmaxoft 2a018cfa49 Implemented cPluginManager:CallPlugin() API.
This function supersedes cPlugin:Call(), is safer to use in regards to multithreading and once again removes the need for the cPlugin class being exported at all.
2014-01-21 23:00:35 +01:00
madmaxoft 4a01879911 cLuaState can now check function params. 2014-01-19 23:45:26 +01:00
madmaxoft 332c1c59eb cCreeper is no longer available in API.
Has been replaced by cMonster.
2014-01-13 17:25:16 +01:00
madmaxoft 023ba17688 Lua errors display stack trace.
Fixes #418.
2014-01-11 23:10:40 +01:00
madmaxoft b2b7e45757 Removed internal methods from public cLuaState interface.
PushFunction(), CallFunction() and GetReturn() are not to be called independently, but rather only by using the Call() templated overrides.
Push() needs to be left in the public part, it is used for pushing results in the ManualBindings.

Preparation for #418.
2014-01-11 22:51:10 +01:00
madmaxoft bcd41dc1aa LuaState can push strings with embedded NULs.
This also marginally improves performance, since a strlen() isn't called (inside lua_pushstring()), the string length is stored in the AString object directly.
2014-01-07 17:07:48 +01:00
STRWarrior 020a8b457d implemented the recommendations Xoft gave. 2013-12-31 14:53:10 +01:00
madmaxoft 1cf6502be2 Made cmake compilation possible on Windows. 2013-12-27 11:51:08 +01:00