1
0
Fork 0
Commit Graph

103 Commits

Author SHA1 Message Date
Mattes D 5ca371bb9a cUrlClient: Exported to Lua API. 2016-08-23 13:20:43 +02:00
Mattes D 11682d1386 cLuaState: Moved function param counting to PushCallPop() template.
The Push() functions can be used not only for function params, but also returns or temporaries, so it doesn't make sense to count the params there.
2016-08-22 20:10:48 +02:00
Mattes D 9493488e48 cLuaState: Added direct support for pushing a nil constant. 2016-08-22 20:09:56 +02:00
Mattes D 89c9c6fe46 cLuaState: Added support for optional params and AStringMap values. 2016-08-22 20:01:23 +02:00
Mattes D 0f51f7e358 Fixed cWorld:ChunkStay bindings. (#3319)
Introduced new cLuaState::cOptionalCallback for representing optional callbacks (nil from Lua side).
Introduced new cLuaState::cStackTable class for easy access to Lua table's elements.

Fixes #3305.
2016-08-14 16:26:31 +02:00
Mattes D 2d58789d66 Converted cLuaState::cTableRef to use cTrackedRef.
This makes the table-based callbacks resistent to LuaState unloads and safer to use.
2016-08-13 21:16:21 +02:00
Mattes D ec235e7120 Removed debug log message.
Ref.: #3308
2016-08-11 21:15:54 +02:00
Mattes D c4578db4df Fixed LuaAPI library registrations. (#3308)
lsqlite3 didn't clean up the stack properly.
lxp didn't register itself properly.
2016-08-11 21:04:29 +02:00
Mattes D d1dee3c909 Fixed RasPi builds of unit tests.
On RasPi with gcc 4.8.2, the asserts wouldn't compile when tests were enabled.
Enforced the assumption that ASSERT code is generated only in Debug builds.
2016-08-04 20:47:53 +02:00
Mattes D bf88312a16 Converted cLuaState::cCallbackPtr into a UniquePtr. 2016-06-27 20:51:53 +02:00
Mattes D 7a6670d1d1 Removed dead code related to callbacks. 2016-06-27 20:51:52 +02:00
Mattes D 257c5a1a54 cPluginManager: Use a callback for command handler registration. 2016-06-27 20:51:52 +02:00
Mattes D 24853397ef LuaState: Implemented proper locking for cCallback. 2016-06-27 20:51:51 +02:00
Mattes D fb4c3fc4d9 Changed cLuaWindow callbacks to use cLuaState::cCallback. 2016-06-27 20:51:50 +02:00
Mattes D 4489a89fde Changed plugin hook registrations to use cLuaState::cCallback. 2016-06-27 20:51:49 +02:00
Mattes D 1f75d45222 Added cLuaState::cCallback for representing (resettable) Lua callbacks. 2016-06-27 20:51:48 +02:00
Mattes D fbe9866524 Bindings: Add a const-ptr variant to all stack getter functions 2016-06-05 17:20:50 +02:00
Mattes D 5618e453e6 LuaState: Inter-plugin calls now support simple tables. (#3220) 2016-05-31 00:01:55 +01:00
Mattes D e3d34d9917 Revert "Lua callback" 2016-03-21 09:58:15 +01:00
Mattes D af200dfaae Changed cLuaWindow callbacks to use cLuaState::cCallback. 2016-03-17 19:29:03 +01:00
Mattes D eb044e140e Changed plugin hook registrations to use cLuaState::cCallback. 2016-03-17 19:29:01 +01:00
Mattes D 3aa7656823 Added cLuaState::cCallback for representing (resettable) Lua callbacks. 2016-03-17 19:29:00 +01:00
LogicParrot ca6ef58b1e Bulk clearing of whitespace 2016-02-05 23:50:18 +02:00
Mattes D 122d824a8a Added a Json parser and serializer to Lua API. 2015-12-24 14:00:31 +01:00
Lukas Pioch 50a908fdc9 Fixes for clang-3.7 2015-12-19 22:43:37 +01:00
Mattes D 086c8b1834 Revised the explosion-related Lua API and docs.
Fixes #2746.
2015-12-18 12:40:34 +01:00
Mattes D b8fbba5eb9 Added PieceStructures generator. 2015-12-01 10:35:07 +01:00
Mattes D 1c8e60f91a Added LuaState tracker and memory stats logging. 2015-09-28 21:30:31 +02:00
Mattes D 5614056640 Made Lua API check strings strictly.
Previously nil was accepted as a string in cLuaState::CheckParamString(), now it's reported as an error.
2015-09-28 14:53:50 +02:00
Mattes D ad57ce5f99 Extended and fixed the cFile API. 2015-09-26 22:54:18 +02:00
Lukas Pioch e56aa4032d Maked it compileable for clang-3.7 2015-09-25 17:09:19 +02:00
Tiger Wang 5751ba0c1c Use container-based infrastructure for Travis 2015-08-20 16:15:55 +01:00
Samuel Barney 804805d35a Silenced and fixed many warning messages across multiple files. 2015-07-29 09:49:30 -06:00
Mattes D e06dd8f20e Added basic support for loading village prefabs from files. 2015-06-20 15:37:41 +02:00
Mattes D c6012a95bd LuaState: Added support for config-style usage.
Globals and table values can be queried from the Lua state easily.
Use perfect forwarding.
2015-06-17 17:13:45 +02:00
tycho 480052c058 Added LuaState support for all integral types
All so added error handling for out of range values
2015-05-19 17:09:05 +01:00
Mattes D 1240c76cb4 Lua: Break into ZBS debugger on API errors. 2015-05-16 16:19:18 +02:00
Mattes D 15771e4759 Moved cWorld manual bindings out into a separate file. 2015-05-13 11:30:57 +02:00
Mattes D 4b97569b3a ToLua now generates cLuaState::Push() and GetStackValue()
For classes exported through ToLua it generates the cLuaState::Push() and cLuaState::GetStackValue() functions, as well as the supporting forward declarations and typedefs.
Renamed virtual_method_hooks.lua to BindingsProcessor.lua since it no longer provides virtual method hooks and instead does additional processing when generating the bindings.
2015-05-12 09:20:54 +02:00
Mattes D dd10ffb63a OnExecuteCommand hook can override the command result (crXXX). 2015-05-10 23:11:30 +02:00
Tiger Wang 9c490293b8 Merge remote-tracking branch 'origin/master' into warnings
Conflicts:
	src/Mobs/Monster.cpp
	src/Vector3.h
2015-05-10 12:16:20 +01:00
Mattes D c13b1931ff More style checking.
Spaces around some operators are checked.
2015-05-09 12:58:54 +02:00
Tiger Wang 218010cd96 Fixed some Visual Studio warnings 2015-05-08 23:32:02 +01:00
Mattes D fee690a3d1 Fixed inter-plugin calls.
When an inter-plugin call failed due to function not found, the server would maul the LuaState and "yield".
Fixes #1959.
2015-05-07 23:03:04 +02:00
tycho 448df85e56 Added support for additional data in the ParticleEffect Packet
Also started refactoring how broadcasts are handled
2015-05-07 03:47:46 +01:00
Mattes D fc95501f68 Added cBlockArea:GetNonAirCropRelCoords() API function.
Fixes #1915.
2015-04-29 15:14:22 +02:00
Mattes D a89d5f53fd Refactored ManualBindings' callbacks using templates.
This is a bit easier to read, has better error reporting and fixes a few subtle bugs.
Fixes #1889.
2015-04-23 22:20:31 +02:00
Mattes D 08624348f4 Implemented cPluginManager:DoWithPlugin(), fixed ForEachPlugin().
Both functions are exported as static.
2015-04-23 19:41:01 +02:00
Mattes D 9c5162041e cNetwork: Added UDP API. 2015-02-20 14:28:05 +01:00
Mattes D 16636ff6e2 LuaAPI: Added client TLS support for TCP links. 2015-02-12 20:05:55 +01:00