1
0
Commit Graph

619 Commits

Author SHA1 Message Date
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
Lukas Pioch
7922e6addb Fixes problems with windows:
- Changed cPlayer:OpenWindow to accept a ref, tolua adds a nil check
- Close open lua window in destructor, to avoid dangling pointers
2017-06-05 15:14:23 +02:00
peterbell10
ad4172d21c Minor cBrewingRecipes cleanup (#3731) 2017-05-28 20:08:23 +02:00
Lukas Pioch
73a3c4e3be Exported boat
- NBT: Added saving / loading of material
- Added the material in the item handler of the boat
- Drop the correct boat if destroyed
- APIDoc: Added desc and functions
2017-05-24 19:02:18 +02:00
Lukas Pioch
e35ac1bfb9 Clang 5.0 fixes
- Added override keyword
- Removed inherited member variables
2017-05-21 12:19:06 +02:00
Mattes D
2c3c1f1527 Tracer replacement (#3704)
* Replaced cTracer usage with cLineBlockTracer.

* Exported new cLineBlockTracer utility functions to Lua API.
2017-05-11 13:34:36 +01:00
Lukas Pioch
7c4576a025 Exported cFallingBlock and cExpOrb (#3700) 2017-05-09 14:24:41 +02:00
Mattes D
3d5ee3e5c7 Fixed Lua bindings for const objects. 2017-05-09 14:10:53 +02:00
Mattes D
0de705eb99 Removed binary ToLua++ from build.
A local Lua executable is used instead.
2017-05-04 17:38:05 +02:00
Lukas Pioch
74e6f41958 Don't return const ref params and removed functions from
ManualBindings.cpp
2017-05-01 11:10:21 +02:00
Lukas Pioch
6c420ce557 API: Removed function GetChar (#3664) 2017-04-05 22:31:42 +01:00
mathiascode
4656be19b7 Removed development plugins from settings file 2017-03-19 21:54:01 +01:00
Lukas Pioch
4b1bc1cc5c Removed unnecessary check for lower and upper folder 2017-03-16 17:50:19 +01:00
mathiascode
330d66097f Removed a few default plugins (#3580) 2017-02-24 10:11:38 +01:00
Gareth Nelson
1c31cb7eec Add support for alternate config file locations (#3578) 2017-02-22 14:10:32 +01:00
Mattes D
7cc3fb098d DeadlockDetect now lists some tracked CS's stats. 2017-01-18 09:03:05 +01:00
Mattes D
a52de8e8cd DeadlockDetect: Provide more information for debugging. 2017-01-17 18:35:12 +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
b3b723b453 Refactored to put URL Encoding / Decoding in a single place. (#3491) 2016-12-25 18:29:21 +01:00
Tiger Wang
8c6d0b51c7 Use CMake's Android generators to crosscompile 2016-12-12 14:32:32 +00:00
Lukas Pioch
0c10704d1f Export GetPosition and GetSpeed from cEntity as a copy instead of a pointer to lua. 2016-12-10 13:32:11 +01:00
Mattes D
9af17f7c39 LuaState: Fixed stack balance when calling functions (#3428) 2016-11-10 16:46:31 +01:00
Mattes D
9eff6f390d LuaJson: Report serialization errors instead of crashing. 2016-10-27 23:47:36 +02:00
Mattes D
e0f158bba9 Fixed cRankManager API docs. 2016-10-06 21:24:31 +02:00
Mattes D
b1530bb28e LuaAPI: Fixed possible crashes in HTTPRequest bindings. 2016-09-26 12:47:40 +02:00
Mattes D
e169043a84 Fixed cCompositeChat's constructor LuaAPI bindings.
The tolua-generated constructor would return an extra string value.
2016-09-25 12:42:05 +02:00
Mattes D
c83b051c1a Bindings: Fixed some function signatures comments. 2016-09-08 23:06:38 +02:00
Mattes D
d3cf47cc5d APIDump: Removed trailing whitespace. 2016-09-08 23:05:52 +02:00
Mattes D
08110ae91b PluginLua: Removed unneeded assignment.
Duplicated in SetLoadError().
2016-09-05 15:05:25 +02:00
Mattes D
5ca371bb9a cUrlClient: Exported to Lua API. 2016-08-23 13:20:43 +02:00
Mattes D
641cb063bc cTCPLink supports TLS out of the box. 2016-08-22 23:44:36 +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
ElNounch
787173351d Fix cWorld:QueueTask() Lua's binding
Manual binding expect three parameters : self, a number, a function
And then read self and a function...
Removing the extra check for the broken second argument
2016-08-17 23:27:26 +00: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
778b29b6f4 Fixed cFile API bindings. 2016-08-06 22:08:18 +02:00
Mattes D
f07dc71648 Commented out code_out.cpp generating.
Fixes #3296.
2016-08-06 18:28:57 +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
fc5fb03fec CMake: Fix system Lua usage for non-5.1 versions. (#3271) 2016-07-21 10:46:31 +01:00
Mattes D
8eaa8613da CMake: Remove needless minimum version specifications. 2016-07-18 22:11:42 +02:00
Mattes D
430b623223 Use system Lua, if available, to generate bindings.
Closes #1031.
2016-07-18 22:11:41 +02:00
Mattes D
abf35f3976 DiffAPIDesc: Support optional params in desc. 2016-07-18 22:11:39 +02:00
Mattes D
f0c53dbad4 LuaAPI: Fixed bindings for cChunkDesc:GetBlockTypeMeta 2016-07-18 22:11:38 +02:00
Mattes D
b11605e951 Bindings: Added a script to generate a diff between APIDesc and ToLua.
This allows a simple copy operation from the DoxyComments into APIDesc.
2016-07-18 22:11:38 +02:00
Mattes D
984c0a2cef Bindings: Don't generate docs for private symbols, mark static symbols. 2016-07-18 22:11:38 +02:00
Mattes D
61f76dd7a5 Bindings: Output description is valid Lua file. 2016-07-18 22:11:37 +02:00
Mattes D
751d0d0736 Bindings: Extract unexported DoxyComments. 2016-07-18 22:11:36 +02:00
Mattes D
c5714f6e4b Bindings: Extract DoxyComments 2016-07-18 22:11:36 +02:00
Mattes D
1a30c2262b Added a Pure-Lua implementation for bindings generation.
The BindingsProcessor.lua script can be opened in ZeroBraneStudio and debugged from there, it invokes the entire ToLua++ processing.
Also added docs-generation to the ToLua++ processor.
2016-07-18 22:11:35 +02:00
Mattes D
5095a9f48b Fixed Lua Json serializing a bool.
Fixes #3257.
2016-07-10 08:16:44 +02:00
Mattes D
a184f57eb3 Bindings: Added missing dependencies.
Fixes #3245
2016-07-02 00:30:22 +02:00
Mattes D
0eea5c9fc5 CircleCI: Check for missing Bindings dependencies
This commit fails the CircleCI tests on purpose, so that we know that the check works.
2016-07-02 00:30:22 +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
a473725121 Removed the cPluginLua::cResettable class.
The functionality provided by that class has been superseded by cLuaState::cCallback, with better multithreading support.
2016-06-27 20:51:50 +02:00
Mattes D
b7e1a66815 Changed world tasks to use cLuaState::cCallback. 2016-06-27 20:51:49 +02:00
Mattes D
4489a89fde Changed plugin hook registrations to use cLuaState::cCallback. 2016-06-27 20:51:49 +02:00
Mattes D
af8c96026d Removed cWebPlugin, WebAdmin uses cLuaState::cCallback. 2016-06-27 20:51:48 +02:00
Mattes D
1f75d45222 Added cLuaState::cCallback for representing (resettable) Lua callbacks. 2016-06-27 20:51:48 +02:00
Mattes D
ce30e3f666 Normalized Vector3 API to use the same capitalization as all else. 2016-06-10 17:59:33 +02:00
Mattes D
c2759186c0 Bindings: Fixed cBoundingBox API. 2016-06-05 18:23:16 +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
PlasmaPower
b4d9732fe9 Added GetTeamNames to cScoreboard (#3217)
Resolves #3210
2016-05-29 19:12:18 +02: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
5dfcc15d1f Removed the cPluginLua::cResettable class.
The functionality provided by that class has been superseded by cLuaState::cCallback, with better multithreading support.
2016-03-17 19:29:02 +01:00
Mattes D
d0a04a7a82 Changed world tasks to use cLuaState::cCallback. 2016-03-17 19:29:02 +01:00
Mattes D
eb044e140e Changed plugin hook registrations to use cLuaState::cCallback. 2016-03-17 19:29:01 +01:00
Mattes D
62d81eb763 Removed cWebPlugin, WebAdmin uses 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
Mattes D
fea556ca1b Renamed HTTPServer folder to HTTP.
It contains client code as well.
2016-03-01 16:19:56 +01:00
Mattes D
98d3bdebb4 LuaTCPLink: Report data received via SSL just before connection closed. 2016-02-21 10:44:34 +01:00
LogicParrot
ca6ef58b1e Bulk clearing of whitespace 2016-02-05 23:50:18 +02:00
Marvin Kopf
9840cc8218 Fix TabAutoComplete
For tab on '/command s' the server now returns 'subcommand' instead of '/command subcommand'.
2016-02-02 18:59:50 +01:00
Arnaud Meuret
e19109465d Fix typo (ammount) 2016-01-02 22:02:02 +01:00
Mattes D
80e1eb37dd Renamed leftover strings to Cuberite / Server, as needed.
Also upgraded the user setting file for MSVC to 2013.
2016-01-01 21:05:09 +01:00
Mattes D
958df6ad91 Added the cUrlParser class, exported to Lua API. 2015-12-25 18:50:25 +01: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
Alexander Harkness
8b851d5048 Added HTTPS links wherever they are supported. 2015-12-19 14:30:32 +00:00
Mattes D
086c8b1834 Revised the explosion-related Lua API and docs.
Fixes #2746.
2015-12-18 12:40:34 +01:00
Julian Laubstein
5af10b8cd3 Fixed warning regarding an uninitialized value 2015-12-15 17:20:34 +01:00
Julian Laubstein
8d5f4f2160 Fixed warning regarding an uninitialized value 2015-12-15 17:06:32 +01:00
Mattes D
b8fbba5eb9 Added PieceStructures generator. 2015-12-01 10:35:07 +01:00
Lukas Pioch
9749c3aac9 Implemented brewing 2015-11-03 18:00:55 +01:00
Mattes D
6c7f51a008 Fixed bindings for cTCPLink:StartTLSClient().
The bindings used to enforce client cert, now it's optional.
2015-10-08 16:14:50 +02:00
Mattes D
9da404ea2d Fixed a race condition between chunk loader and generator.
When using ChunkWorx to generate multiple chunks, the server would sometimes fail an assert because it would generate a chunk even when it was successfully loaded. This was caused by chunks queued in cWorld's m_SetChunkDataQueue and thus being marked as "InQueue" although they were already loaded.

Solved by adding a new parameter to chunk coord callbacks specifying whether the operation succeeded or failed, and using that instead of the chunk presence flag to decide whether to generate or not.
2015-10-04 14:06:37 +02:00
Mattes D
1c8e60f91a Added LuaState tracker and memory stats logging. 2015-09-28 21:30:31 +02:00