1
0
Commit Graph

91 Commits

Author SHA1 Message Date
Mattes D
e05ca49459 Moved ApiParamError into cLuaState. 2017-06-26 10:52:59 +02:00
Mattes D
fe42538349 cBlockArea supports block entities. (#3795) 2017-06-24 11:58:06 +02:00
Mattes D
ea6660721b NetworkSingleton: Fixed a throw warning in VS2017. (#3792)
Also fixed the misleading name.
2017-06-22 21:10:41 +02:00
Mattes D
801084c38c LuaState: Fixed VS2017's throw warnings for destructors. (#3779) 2017-06-19 11:08:08 +02:00
Mattes D
3c4e443ddc Fixed handling Lua errors in nested callbacks (#3755) 2017-06-09 12:16:31 +02:00
Mattes D
3d5ee3e5c7 Fixed Lua bindings for const objects. 2017-05-09 14:10:53 +02:00
Mattes D
7cc3fb098d DeadlockDetect now lists some tracked CS's stats. 2017-01-18 09:03:05 +01:00
Mattes D
e9547101b1 LuaState: Fixed untracking references.
One thread may untrack a ref while another thread was closing the LuaState, which had emptied the tracked refs.
2017-01-15 12:54:58 +01:00
Mattes D
fb0fc07579 Fixed race conditions and forgotten clear in Lua ref tracking. (#3530)
This fixes occasional crashes on plugin reload.
2017-01-13 10:31:05 +01:00
Mattes D
f62711f97c LuaState: Fixed race condition in ref tracking. (#3529) 2017-01-09 15:56:16 +01:00
Mattes D
9af17f7c39 LuaState: Fixed stack balance when calling functions (#3428) 2016-11-10 16:46:31 +01:00
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
d4aff474c2 cLuaState: Added template to push multiple values in a single call. (#3331) 2016-08-21 11:03:10 +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
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
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
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
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
ad57ce5f99 Extended and fixed the cFile API. 2015-09-26 22:54:18 +02:00
Samuel Barney
804805d35a Silenced and fixed many warning messages across multiple files. 2015-07-29 09:49:30 -06:00
Mattes D
8df31067d4 Externalized cPrefabPiecePool self-test. 2015-06-19 16:15:59 +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
dae9e5792a Made -Weverything an error. 2015-05-24 12:56:56 +01: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
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
218010cd96 Fixed some Visual Studio warnings 2015-05-08 23:32:02 +01: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