summaryrefslogtreecommitdiffstats
path: root/src/Bindings (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-10-18cBlockInfo: further cleanup (#5001)Tiger Wang1-121/+0
* cBlockInfo: further cleanup + Use switch statements instead of lookup in dynamically initialised arrays - Remove some deprecated bindings * Update Stubs removing references to BlockInfoArray
2020-10-01Enchanting table shows detail on hover. Enchanting is deterministic. (#4937)KingCol131-1/+29
* Use lapis for enchanting, subtract correct number of levels, ClientHandle now selects from pregenerated list. Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2020-09-30C++17 stuffTiger Wang2-2/+2
2020-09-28Plugin reload <plugin_name> feature (#4942)[IPSA] Chris de Claverie3-25/+66
+ Add `reload <pluginname>` * Fixes #365 Co-authored-by: Alexander Harkness <me@bearbin.net> Co-authored-by: pwnOrbitals <c.de-claverie@pm.me> Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2020-09-23TABS OUT OF BED! TABS IN THE CORRIDORS!Tiger Wang2-2/+2
2020-09-23Limit fortune level, style fixesTiger Wang2-2/+2
2020-09-21Implement Dropspenser Hook (#4903)KrystilizeNevaDies5-2/+28
* Implement Dropspenser Hook Implemented a hook for dropspensing. HOOK_DROPSPENSE When plugin callback returns true then dropspense is cancelled * Update src/Bindings/PluginManager.h Co-authored-by: peterbell10 <peterbell10@live.co.uk> * Create OnDropSpense.lua * Fix indent * Forgot include Forgot to include the plugin manager. Although now im confused why it was working on my end without including the plugin manager * Update plugins.lua with dropspense * fix typos * haha notepad++ go brr Co-authored-by: peterbell10 <peterbell10@live.co.uk>
2020-09-05Use pitch lookup in noteblock block entity (#4826)12xx121-0/+106
- Removed the calculation in the noteblock block entity I did the calculation in python if anyone is interested where the numbers are from Co-authored-by: 12xx12 <12xx12100@gmail.com>
2020-08-27Changed tree-growing functions in cWorld to use Vector3i coords.Mattes D1-2/+119
2020-08-01Replaced cpp14::make_unique<> with std::make_unique<>.Mattes D3-9/+9
2020-07-23Update submodulesTiger Wang1-2/+2
2020-05-16Upgrade to C++17 [CMake] (#4717)Tiger Wang2-138/+16
* Make our CMake slightly less insane
2020-05-16Avoid a copy when logging lua stringsPeter Bell1-18/+15
2020-05-16Update logging code to reduce unnecessary string copying:Peter Bell1-4/+5
* Write into a single fmt::memory_buffer * Use string_view instead of AString for listener callbacks * Also collapsed vFLOG and vLOG functions into one per formatting type
2020-05-15Enable some more clang-tidy linter checks (#4738)peterbell107-15/+15
* Avoid inefficient AString -> c_str() -> AString round trip * Avoid redundant string init expressions * Avoid unnecessary return, continue, etc. * Add .clang-format to help with clang-tidy fix-its * Avoid unnecessary passing by value * Avoid unnecessary local copying * Avoid copying in range-for loops * Avoid over-complicated boolean expressions * Some violations missed by my local clang-tidy * Allow unnecessary continue statements * Add brackets * Another expression missed locally * Move BindingsProcessor call into clang-tidy.sh and add space * Fix pushd not found error * Different grouping of CheckBlockInteractionRate
2020-05-10Cleanup unneeded globals (#4736)peterbell101-3/+3
2020-05-09Update submodules (#4727)peterbell102-4/+5
Closes #4708 This updates jsoncpp, mbedtls, TCLAP and SQLiteCpp to their latest stable release. A few additional changes were needed: * jsoncpp deprecated Reader, FastWriter and StyledWriter which I've replaced with some helper functions in JsonUtils.cpp * SQLiteCpp changed how it builds with external sqlite libraries, now expecting them to be installed. The simplest path was to remove sqlite from cuberite's submodule and just use SQLiteCpp's internal version.
2020-05-08Use Vector3 for cLineBlockTracer and cBlockTracer (#4715)mBornand1-51/+167
* cLineBlockTracer uses Vector
2020-05-07Remove old Android leftovers (#4722)Mat2-4/+4
2020-05-05Update fmt to 6.2.0 (#4718)peterbell104-6/+10
* Update fmt to 6.2.0
2020-05-04Fix incorrect formatter invocationTiger Wang1-1/+1
2020-04-17More Vector3 in cBlockHandler (#4644)Mattes D1-0/+38
* cBlockHandler.OnUpdate uses Vector3 params. Also slightly changed how block ticking works.
2020-04-16Using Super.Mattes D8-19/+18
2020-04-15Fixed Lua Vector unification. (#4652)Mattes D3-5/+35
2020-04-14Bindings: Allow coercion between Vector3 subtypes. (#4646)Mattes D7-167/+177
In manually bound functions, allows one to use any Vector3<T> value, as well as a {x, y, z} table, in Lua as any Vector3<T> parameter. Has example in Debuggers' /vector command. Unfortunately doesn't work in auto-bindings.
2020-04-03Removed the obsolete cTracer class. (#4594)Mattes D3-48/+0
2020-04-03Pulled the BlockID and BlockInfo headers from Globals.h. (#4591)Mattes D4-2/+4
The BlockID.h file was removed from Globals.h and renamed to BlockType.h (main change) The BlockInfo.h file was removed from Globals.h (main change) The ENUM_BLOCK_ID and ENUM_ITEM_ID enum names were replaced with ENUM_BLOCK_TYPE and ENUM_ITEM_TYPE (cosmetics) The various enums, such as eDimension, eDamageType and eExplosionSource were moved from BlockType.h to Defines.h, together with the helper functions for converting between them and strings (StringToDimension et al.) (minor) Many inline functions were moved from headers to their respective cpp files, so that BlockType.h could be included only into the cpp file, rather than the header. That broke our tests a bit, since they pick bits and pieces out of the main code and provide stubs for the rest; they had to be re-stubbed and re-verified. eMonsterType values are no longer tied to E_ITEM_SPAWN_EGG_META_* values
2020-04-01Fix off-by-one error and clean error messages in manual bindings for BlockArea (#4549)Alexander Harkness1-68/+73
* Correct off-by-one error in manual bindings for FillRelCuboid Fixes #4454 * Fix inconsistent error messages in manual bindings for BlockArea * Generate error if invalid coords passed to FillRelCuboid
2020-03-31Prevent player from being destroyed by plugins (#4584)Alexander Harkness1-0/+32
* Prevent player from being destroyed by plugins Add manual binding, bails out with error message if attempted entity to destroy is player. * Improve warnings and documentation, remove automatic binding * Remove old and unnecessary deprecated function
2020-03-27Updated plugin list format (#4557)Mat1-7/+26
2020-03-27 Lock hopper when powered by redstone (#4347)Bond-0091-0/+1
* Lock hopper when powered by redstone * Add to manual bindings * Add hopper API documentation Co-authored-by: Mat <mail@mathias.is>
2020-03-23Manual merge of #4498.Alexander Harkness5-9/+37
Credit to @MeMuXin Closes #4498
2020-03-21Wrong overload of function push() got called when pushing a cEntity*. (#4512)Max Luchterhand2-0/+11
* Now having two funcs, Push(cEntity* ..) and Push(const cEntity* ...). For now, the const function just casts away the const qualifier and passes to the other. Co-authored-by: mluchterhand <mluchterhand@max.de>
2020-03-05Stabilise MoveToWorld (#4004)Mat1-1/+2
* Stabilise MoveToWorld * Fix comments and deprecate ScheduleMoveToWorld * Enhanced thread safety for m_WorldChangeInfo * Return unique_ptr from cAtomicUniquePtr::exchange * cWorld now calls entity cEntity::OnAddToWorld and cEntity::OnRemoveFromWorld. Allows broadcasting entities added to the world from the world's tick thread. This also factors out some common code from cEntity::DoMoveToWorld and cEntity::Initialize. As a consequence, cEntity::Destroy(false) (i.e. Destroying the entity without broadcasting) is impossible. This isn't used anywhere in Cuberite so it's now deprecated. * Update entity position after removing it from the world. Fixes broadcasts being sent to the wrong chunk. * Fix style * cEntity: Update LastSentPosition when sending spawn packet * Add Wno-deprecated-declarations to the lua bindings * Kill uses of ScheduleMoveToWorld
2019-10-16Refactored block-to-pickup conversion. (#4417)Mattes D5-8/+27
2019-09-29Refactored more of Entities and BlockEntities to use Vector3. (#4403)Mattes D1-7/+6
2019-09-20Added missing closing } in message outputLukas Pioch1-1/+1
2019-09-06Separated chunk generator from world / plugin interfaces.Mattes D1-2/+2
The generator now only takes care of servicing synchronous "GetChunk(X, Y)" and "GetBiomes(X, Y)" requests.
2019-08-11Added null check for position (#4366)Lukas Pioch1-0/+5
2019-08-10Improved CMake generator (#4365)Mattes D1-1/+1
2019-08-09Removed coord-based API from cCuboid. (#4362)Mattes D1-0/+134
2019-07-28Check for nil in cWorld:SpawnSplitExperienceOrbs binding (#4354)Mark Asp1-1/+6
Adds explicit nil check for 'position' parameter to prevent crashes if invalid. Fixes #4352
2019-06-11Respect return value of cLuaWindow's OnClicked handler (#4322)DaPorkchop_1-1/+2
2019-05-07Buckets: Be able to place fluids through other fluids. (#4331)Zach DeCook1-1/+1
2018-09-24Add a formatting function for Vector3 (#4282)peterbell104-48/+53
* Vector3: Add custom fmt compatible formatter. * cLuaState: Add fmt version of ApiParamError * Use vector formatting in manual bindings * Always log vectors with FLOG
2018-08-29Force all headers other than "Globals.h" to be included with relative paths (#4269)peterbell105-11/+7
Closes #4236 CMake now creates a header file in the build directory under the path "include/Globals.h" which just includes "src/Globals.h" with an absolute path. Then instead of adding "src/" to the include directories, it adds "include/". #include "Globals.h" still works by including the build generated file and any other src-relative path will not work.
2018-08-02Experience orb (#4259)changyong guo1-0/+80
* Replace cWorld::FindClosesPlayer with cWorld::DoWithClosestPlayer * Implement experience reward splitting into the orb sizes used in vanilla * Modified speed calculation in cExpOrb::Tick to make the orbs fly towards the player Fixes #4216
2018-07-27cWorld: Manually bind deprecated broadcast functions (#4265)peterbell101-53/+266
Ref: https://github.com/cuberite/cuberite/pull/4264#discussion_r204769193
2018-07-26CheckBasicStyle: Check number of empty lines between functions (#4267)peterbell107-6/+9
Add check for number of empty lines between functions and fix the corresponding failures
2018-07-24Broadcast refactor (#4264)peterbell101-2/+1
* Move Broadcast functions from cChunkMap to cBroadcaster - Remove cBroadcastInterface in favour of cBroadcaster. - cChunk: Remove broadcast functions. * resurect broadcast interface * Absorb cBroadcaster into cWorld. Removes the need for forwarding the function calls. * Improve const-correctness * Use Int8 instead of char + Comment `ForClients` functions * Improve comments * Broadcaster: Rename ForClients functions
2018-07-19cBlockArea: Write all present data types by default (#4252)peterbell101-11/+21
cBlockArea::Write now defaults to use GetDataTypes() instead of assuming all data types are present. Fixes cuberite/WorldEdit#130
2018-05-02Prefer static_cast to reinterpret_cast (#4223)peterbell106-48/+48
* Change reinterpret_cast -> static_cast wherever possible * Remove more unnecessary `const_cast`s. reinterpret_casts should be avoided for the same reason as c-style casts - they don't do any type-checking. reinterpret_cast was mainly being used for down-casting in inheritance hierarchies but static_cast works just as well while also making sure that there is actually an inheritance relationship there.
2018-04-27tolua++ bindings use nullptr. (#4219)peterbell101-4/+1
Fixes compilation with -Wzero-as-null-pointer-constant.
2018-03-02Add cPluginManager::GenericCallHook (#4027)peterbell102-632/+252
Replace repetitive CallHook functions with a generic implementation. Also converts some loops to range-based for. Related to #1134
2018-02-20cBlockInfo: Deprecate direct access to variables. (#4184)peterbell101-9/+55
2018-02-05Deal with covered switches consistently (#4161)peterbell101-0/+1
* Fixes a number of "<function>: not all control paths return a value" warnings on MSVC. * Introduces the UNREACHABLE global macro and uses it instead of conditionally compiled switch defaults. * Move cNBTParseErrorCategory from FastNBT.h into FastNBT.cpp to prevent bad calls to message()
2018-01-23Removed cBlockInfo.m_IsSnowable (#4105)Bond-0091-0/+39
* Removed cBlockInfo.m_IsSnowable * Return IsSnowable from deprecated variable binding m_IsSnowable.
2018-01-14Rename cEntity swim states (#3996)Alexander Harkness1-4/+52
* Replace cEntity:m_IsSubmerged with m_IsHeadInWater * Replace cEntity:m_IsSwimming with m_IsInWater * Add API documentation for new symbols * Apply SetSwimState to all entities, not just mobs and players * Pickups now use IsOnFire to check if they are on fire before destruction Fixes #3987
2018-01-03Add the fmt library (#4065)peterbell105-26/+11
* Replaces AppendVPrintf with fmt::sprintf * fmt::ArgList now used as a type safe alternative to varargs. * Removed SIZE_T_FMT compatibility macros. fmt::sprintf is fully portable and supports %zu. * Adds FLOG functions to log with fmt's native formatting style.
2018-01-03cLuaState: Update `Push` for entities. (#4128)peterbell101-47/+35
Fixes #4127 Some classes were exported but were only pushed as a cEntity meaning exported functions were inaccessible. This brings cLuaState::Push(cEntity *) up to date with all exported entities.
2017-12-22Fix Travis build (#4101)peterbell101-1/+1
Stop using gdb on osx - was breaking the build Add clang 3.5 build as travis now defaults to 5.0 Fix unknown-warning-option errors on AppleClang ProtoProxy: Use nullptr UrlClientTest: add override to callback destructor Update jsoncpp to use nullptr
2017-12-21Fixed Clang 5.0 compile errors (#4085)bibo385-4/+23
* Fixed Clang 5.0 compile errors * Fixed wrong comment * Only disable warnings in Clang 5 or higher * Added a CMake condition for the Clang 5 no-zero-as-null-pointer-constant warning * Now using the use_nullptr branch of the Cuberite specific SQLiteCpp fork
2017-09-19Removed UTF-8 BOM (#4033)Lukas Pioch3-3/+3
2017-09-14Fix switch warnings (#4013)peterbell101-1/+0
* Fix switch warnings * Fix a variety of -Wswitch and -Wswitch-enum warnings * Remove unneeded -Wno-error flags * Reorganise some eMonsterType switches * Alpha sort eMonsterType cases in WriteMobMetadata and in cNBTChunkSerializer::AddMonsterEntity * List all mob types in protocol 1.12 and NBTChunkSerializer * cStructGenTrees::GetNumTrees: remove switch default * cWSSAnvil::LoadOldMinecartFromNBT: Log unhandled minecart type
2017-09-11Replace ItemCallbacks with lambdas (#3993)peterbell109-258/+94
2017-09-02Revert "Replace ItemCallbacks with lambdas (#3948)"LogicParrot9-95/+259
This reverts commit 496c337cdfa593654018c171f6a74c28272265b5.
2017-09-01Replace ItemCallbacks with lambdas (#3948)peterbell109-259/+95
2017-08-30Update mbedtls to 2.5.1 (#3964)peterbell102-9/+9
* Renaming changes: * macro prefix "POLARSSL" -> "MBEDTLS" * functions now prefixed with "mbedtls_" * rename PolarSSL++ -> mbedTLS++ * rename polarssl submodule * Use mbedtls' AES-CFB8 implementation. * Add cSslConfig to wrap mbedtls_ssl_config * Update cTCPLink and cBlockingSslClientSocket to use cSslConfig * Use cSslConfig in cHTTPServer * Use cSslConfig for cMojangAPI::SecureRequest * CI Fixes * Set -fomit-frame-pointer on the right target
2017-08-28Cleanup Vector3 constructors and Abspeterbell101-4/+4
2017-08-27Implement Forge protocol handshake support (#3869)satoshinm6-0/+91
2017-08-25Add cUUID class (#3871)peterbell107-65/+432
2017-08-24Minor changes (#3909)mathiascode1-1/+1
2017-08-21Fully implemented leashes (#3798)Pablo Beltrán3-0/+3
2017-08-18Represent cItem::m_Lore as an AStringVector (#3882)peterbell104-10/+154
* Replace cItem::m_Lore with AStringVector * Reword deprecation warning * Fix lua bindings
2017-08-17Add cLuaWindow OnClicked Callback (#3901)Lane Kolbly10-1/+94
2017-08-17Changed int parameters to vector parameters in cCuboid and simulators (#3874)Lane Kolbly1-4/+7
2017-08-07cBlockInfo: Deprecate place soundpeterbell101-0/+61
2017-08-06Removed unneeded includes (#3902)Lukas Pioch1-1/+0
2017-08-04Fixed compilation for clang 4.0 & gcc 7.1Dan Čermák1-0/+3
2017-08-03Remove double includes part 2 (#3890)peterbell105-6/+0
2017-08-03Removed unused forward declarations (#3888)Lukas Pioch3-8/+0
2017-08-02Removed double includes (#3885)Lukas Pioch1-1/+0
2017-07-21Remove smart pointer macrospeterbell105-13/+13
2017-07-12Lua plugin cColor (#3833)Lane Kolbly3-0/+24
2017-07-12Remove double delete of PrepareChunk lua callback (#3844)peterbell101-29/+16
2017-07-07Added bed entity (#3823)Lukas Pioch3-0/+3
* Added bed entity * Export cBedEntity to lua * Set color of bed through item damage value * Added bed entity to APIDoc * NBT: Added loading and saving * Crafting recipes for the colored beds
2017-07-07Changed Lua plugins to only execute files ending in .lua (#3831)Lane Kolbly1-1/+2
2017-06-29Update tolua and export EffectIDpeterbell103-2/+37
2017-06-26cNetwork bindings: Use ApiParamError and CheckParam(Static)Self.Mattes D1-226/+91
2017-06-26Moved ApiParamError into cLuaState.Mattes D5-114/+144
2017-06-26Corrected APIDoc for cBlockArea and exported missing functions (#3808)Lukas Pioch1-1/+102
2017-06-26Added check if datatype is present in block area (#3811)Lukas Pioch1-0/+6
2017-06-24cBlockArea supports block entities. (#3795)Mattes D6-338/+1158
2017-06-22NetworkSingleton: Fixed a throw warning in VS2017. (#3792)Mattes D1-3/+3
Also fixed the misleading name.
2017-06-19LuaState: Fixed VS2017's throw warnings for destructors. (#3779)Mattes D1-3/+3
2017-06-09Fixed handling Lua errors in nested callbacks (#3755)Mattes D2-3/+42
2017-06-05Fixes problems with windows:Lukas Pioch2-1/+22
- Changed cPlayer:OpenWindow to accept a ref, tolua adds a nil check - Close open lua window in destructor, to avoid dangling pointers
2017-05-28Minor cBrewingRecipes cleanup (#3731)peterbell101-1/+2
2017-05-24Exported boatLukas Pioch2-0/+2
- 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-21Clang 5.0 fixesLukas Pioch6-6/+6
- Added override keyword - Removed inherited member variables
2017-05-11Tracer replacement (#3704)Mattes D2-2/+250
* Replaced cTracer usage with cLineBlockTracer. * Exported new cLineBlockTracer utility functions to Lua API.
2017-05-09Exported cFallingBlock and cExpOrb (#3700)Lukas Pioch2-0/+4
2017-05-09Fixed Lua bindings for const objects.Mattes D4-102/+9
2017-05-04Removed binary ToLua++ from build.Mattes D1-2/+2
A local Lua executable is used instead.
2017-05-01Don't return const ref params and removed functions fromLukas Pioch1-87/+0
ManualBindings.cpp
2017-04-05API: Removed function GetChar (#3664)Lukas Pioch1-5/+0
2017-03-19Removed development plugins from settings filemathiascode1-3/+0
2017-03-16Removed unnecessary check for lower and upper folderLukas Pioch1-1/+1
2017-02-24Removed a few default plugins (#3580)mathiascode1-2/+0
2017-02-22Add support for alternate config file locations (#3578)Gareth Nelson1-1/+1
2017-01-18DeadlockDetect now lists some tracked CS's stats.Mattes D6-24/+64
2017-01-17DeadlockDetect: Provide more information for debugging.Mattes D1-0/+21
2017-01-15LuaState: Fixed untracking references.Mattes D2-6/+9
One thread may untrack a ref while another thread was closing the LuaState, which had emptied the tracked refs.
2017-01-13Fixed race conditions and forgotten clear in Lua ref tracking. (#3530)Mattes D2-13/+22
This fixes occasional crashes on plugin reload.
2017-01-09LuaState: Fixed race condition in ref tracking. (#3529)Mattes D4-18/+70
2016-12-25Refactored to put URL Encoding / Decoding in a single place. (#3491)Mattes D1-18/+67
2016-12-12Use CMake's Android generators to crosscompileTiger Wang1-1/+1
2016-12-10Export GetPosition and GetSpeed from cEntity as a copy instead of a pointer to lua.Lukas Pioch1-0/+46
2016-11-10LuaState: Fixed stack balance when calling functions (#3428)Mattes D2-8/+83
2016-10-27LuaJson: Report serialization errors instead of crashing.Mattes D1-3/+82
2016-10-06Fixed cRankManager API docs.Mattes D1-47/+40
2016-09-26LuaAPI: Fixed possible crashes in HTTPRequest bindings.Mattes D1-35/+36
2016-09-25Fixed cCompositeChat's constructor LuaAPI bindings.Mattes D1-2/+102
The tolua-generated constructor would return an extra string value.
2016-09-08Bindings: Fixed some function signatures comments.Mattes D1-4/+6
2016-09-08APIDump: Removed trailing whitespace.Mattes D1-28/+28
2016-09-05PluginLua: Removed unneeded assignment.Mattes D1-1/+0
Duplicated in SetLoadError().
2016-08-23cUrlClient: Exported to Lua API.Mattes D3-0/+369
2016-08-22cTCPLink supports TLS out of the box.Mattes D2-299/+25
2016-08-22cLuaState: Moved function param counting to PushCallPop() template.Mattes D3-28/+2
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-22cLuaState: Added direct support for pushing a nil constant.Mattes D5-26/+29
2016-08-22cLuaState: Added support for optional params and AStringMap values.Mattes D2-4/+111
2016-08-21cLuaState: Added template to push multiple values in a single call. (#3331)Mattes D4-44/+23
2016-08-18Fix cWorld:QueueTask() Lua's bindingElNounch1-2/+1
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-14Fixed cWorld:ChunkStay bindings. (#3319)Mattes D6-77/+219
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-13Converted cLuaState::cTableRef to use cTrackedRef.Mattes D12-463/+457
This makes the table-based callbacks resistent to LuaState unloads and safer to use.
2016-08-11Removed debug log message.Mattes D1-1/+0
Ref.: #3308
2016-08-11Fixed LuaAPI library registrations. (#3308)Mattes D1-1/+18
lsqlite3 didn't clean up the stack properly. lxp didn't register itself properly.
2016-08-06Fixed cFile API bindings.Mattes D1-16/+16
2016-08-06Commented out code_out.cpp generating.Mattes D1-0/+4
Fixes #3296.
2016-08-04Fixed RasPi builds of unit tests.Mattes D2-16/+15
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-07-21CMake: Fix system Lua usage for non-5.1 versions. (#3271)Mattes D1-1/+1
2016-07-18CMake: Remove needless minimum version specifications.Mattes D1-1/+0
2016-07-18Use system Lua, if available, to generate bindings.Mattes D1-12/+15
Closes #1031.
2016-07-18DiffAPIDesc: Support optional params in desc.Mattes D1-12/+12
2016-07-18LuaAPI: Fixed bindings for cChunkDesc:GetBlockTypeMetaMattes D1-0/+32
2016-07-18Bindings: Added a script to generate a diff between APIDesc and ToLua.Mattes D2-3/+553
This allows a simple copy operation from the DoxyComments into APIDesc.
2016-07-18Bindings: Don't generate docs for private symbols, mark static symbols.Mattes D1-13/+35
2016-07-18Bindings: Output description is valid Lua file.Mattes D1-3/+7
2016-07-18Bindings: Extract unexported DoxyComments.Mattes D1-15/+134
2016-07-18Bindings: Extract DoxyCommentsMattes D1-18/+187
2016-07-18Added a Pure-Lua implementation for bindings generation.Mattes D2-2/+508
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-10Fixed Lua Json serializing a bool.Mattes D1-0/+10
Fixes #3257.
2016-07-02Bindings: Added missing dependencies.Mattes D1-0/+12
Fixes #3245
2016-07-02CircleCI: Check for missing Bindings dependenciesMattes D1-0/+108
This commit fails the CircleCI tests on purpose, so that we know that the check works.
2016-06-27Converted cLuaState::cCallbackPtr into a UniquePtr.Mattes D9-24/+39
2016-06-27Removed dead code related to callbacks.Mattes D4-43/+3
2016-06-27cPluginManager: Use a callback for command handler registration.Mattes D7-200/+141
2016-06-27LuaState: Implemented proper locking for cCallback.Mattes D11-115/+151
2016-06-27Changed cLuaWindow callbacks to use cLuaState::cCallback.Mattes D5-179/+239
2016-06-27Removed the cPluginLua::cResettable class.Mattes D2-82/+1
The functionality provided by that class has been superseded by cLuaState::cCallback, with better multithreading support.
2016-06-27Changed world tasks to use cLuaState::cCallback.Mattes D1-67/+38
2016-06-27Changed plugin hook registrations to use cLuaState::cCallback.Mattes D5-1008/+190
2016-06-27Removed cWebPlugin, WebAdmin uses cLuaState::cCallback.Mattes D9-354/+263
2016-06-27Added cLuaState::cCallback for representing (resettable) Lua callbacks.Mattes D2-7/+231
2016-06-10Normalized Vector3 API to use the same capitalization as all else.Mattes D1-0/+58
2016-06-05Bindings: Fixed cBoundingBox API.Mattes D1-0/+80
2016-06-05Bindings: Add a const-ptr variant to all stack getter functionsMattes D2-0/+16
2016-05-31LuaState: Inter-plugin calls now support simple tables. (#3220)Mattes D2-54/+140
2016-05-29Added GetTeamNames to cScoreboard (#3217)PlasmaPower1-0/+25
Resolves #3210
2016-03-21Revert "Lua callback"Mattes D14-934/+1669
2016-03-17Changed cLuaWindow callbacks to use cLuaState::cCallback.Mattes D5-178/+238
2016-03-17Removed the cPluginLua::cResettable class.Mattes D2-82/+1
The functionality provided by that class has been superseded by cLuaState::cCallback, with better multithreading support.
2016-03-17Changed world tasks to use cLuaState::cCallback.Mattes D1-67/+38
2016-03-17Changed plugin hook registrations to use cLuaState::cCallback.Mattes D5-1008/+190
2016-03-17Removed cWebPlugin, WebAdmin uses cLuaState::cCallback.Mattes D9-354/+263
2016-03-17Added cLuaState::cCallback for representing (resettable) Lua callbacks.Mattes D2-7/+231
2016-03-01Renamed HTTPServer folder to HTTP.Mattes D1-1/+1
It contains client code as well.
2016-02-21LuaTCPLink: Report data received via SSL just before connection closed.Mattes D1-2/+10
2016-02-05Bulk clearing of whitespaceLogicParrot17-503/+503
2016-02-02Fix TabAutoCompleteMarvin Kopf1-1/+21
For tab on '/command s' the server now returns 'subcommand' instead of '/command subcommand'.
2016-01-02Fix typo (ammount)Arnaud Meuret1-3/+3
2016-01-01Renamed leftover strings to Cuberite / Server, as needed.Mattes D1-1/+1
Also upgraded the user setting file for MSVC to 2013.
2015-12-25Added the cUrlParser class, exported to Lua API.Mattes D2-1/+160
2015-12-24Added a Json parser and serializer to Lua API.Mattes D4-0/+351
2015-12-19Fixes for clang-3.7Lukas Pioch1-1/+1
2015-12-19Added HTTPS links wherever they are supported.Alexander Harkness1-1/+1
2015-12-18Revised the explosion-related Lua API and docs.Mattes D4-88/+192
Fixes #2746.
2015-12-15Fixed warning regarding an uninitialized valueJulian Laubstein1-1/+1
2015-12-15Fixed warning regarding an uninitialized valueJulian Laubstein1-1/+1
2015-12-01Added PieceStructures generator.Mattes D2-8/+92
2015-11-03Implemented brewingLukas Pioch8-0/+148
2015-10-08Fixed bindings for cTCPLink:StartTLSClient().Mattes D1-12/+2
The bindings used to enforce client cert, now it's optional.
2015-10-04Fixed a race condition between chunk loader and generator.Mattes D1-2/+2
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-09-28Added LuaState tracker and memory stats logging.Mattes D2-0/+109
2015-09-28Made Lua API check strings strictly.Mattes D1-1/+4
Previously nil was accepted as a string in cLuaState::CheckParamString(), now it's reported as an error.
2015-09-26Extended and fixed the cFile API.Mattes D3-4/+419
2015-09-25Prepared ScheduleTask for threading refactorTiger Wang1-44/+11
* Llama-ified and condensed Schedule/QueueTask - Removed hackery done with piston animations
2015-09-25Maked it compileable for clang-3.7Lukas Pioch3-8/+8
2015-09-25Compile.sh namechange to cuberiteSafwat Halaby2-3/+3
2015-09-25Namechange to CuberiteMattes D2-3/+3
2015-09-24fixed casttycho1-1/+1
2015-09-24Add new "ForEach" function: ForEachLoadedChunk.tycho1-0/+54
2015-08-20Use container-based infrastructure for TravisTiger Wang1-1/+1
2015-08-18Some warning fixesJulian Laubstein5-35/+64
2015-08-12Fix old style casts and implicit conversionsMatti Hänninen2-1/+4
2015-08-07Refactored code to use cLuaStateSamuel Barney2-34/+29
Fixes #2377.
2015-07-31Unified the doxy-comment format.Mattes D3-16/+14
2015-07-29Silenced and fixed many warning messages across multiple files.Samuel Barney11-201/+208
2015-06-24Buttons no longer click on when already on. Buttons now play sound when clicking off.Hax521-1/+1
2015-06-20Added basic support for loading village prefabs from files.Mattes D1-1/+5
2015-06-19Externalized cPrefabPiecePool self-test.Mattes D2-4/+7
2015-06-17LuaState: Added support for config-style usage.Mattes D2-36/+196
Globals and table values can be queried from the Lua state easily. Use perfect forwarding.
2015-06-13Added HOOK_KILLEDNounours Heureux5-0/+47
2015-06-05Added Build info to the cRoot API.Mattes D1-4/+54
2015-05-31ManualBindings: Fixed DoWithXYZ and ForEachInChunk signatures.Mattes D1-4/+6
Fixes forum report http://forum.mc-server.org/showthread.php?tid=1993
2015-05-30Made cLightingThread own its callbackstycho1-2/+1
2015-05-28Fix commentstycho1-5/+5
2015-05-25Only add default plugins if there are not any pluginsworktycho1-1/+1
Fixes #2082
2015-05-24Fix commentstycho1-1/+1
2015-05-24Made -Weverything an error.tycho3-4/+9
2015-05-23Fixed missing overrides and added a ignore flag for reserved macro for clang version 3.6 and higher.Lukas Pioch1-1/+1
2015-05-23TryGetHeight returns a boolAlexander Harkness1-1/+1
should fix #2099
2015-05-21Renamed hook HOOK_ENTITY_CHANGE_WORLDLukas Pioch5-10/+10
2015-05-19Make -Werror disabling file onlytycho1-0/+4
Ad fix a load of warnings
2015-05-19Added LuaState support for all integral typestycho8-69/+71
All so added error handling for out of range values
2015-05-18Added hooks HOOK_ENTITY_CHANGE_WORLD and HOOK_ENTITY_CHANGED_WORLDLukas Pioch5-0/+94
Fixes #1435.
2015-05-16Lua: Break into ZBS debugger on API errors.Mattes D2-0/+29
2015-05-16Initial implementation of IniFile overloadingtycho2-25/+24
2015-05-14Fixed cPluginManager:ForEachCommand() and ForEachConsoleCommand()Mattes D1-93/+54
The functions would leak one value on the Lua stack for each enumerated command. Fixes #2017.
2015-05-13All in-game commands go through the OnExecuteCommand hook.Mattes D1-0/+7
Everything that has a slash at the beginning, doesn't matter if it is a registered command or not.
2015-05-13Moved cWorld manual bindings out into a separate file.Mattes D7-1217/+1253
2015-05-12ToLua now generates cLuaState::Push() and GetStackValue()Mattes D9-497/+193
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-11AllToLua: Removed unneeded virtual method hooks.Mattes D1-481/+7
2015-05-10OnExecuteCommand hook can override the command result (crXXX).Mattes D7-17/+35
2015-05-10Exported cPluginManager:ExecuteConsoleCommand() to Lua API.Mattes D2-2/+41
Fixes #1999.
2015-05-10Call HOOK_EXECUTE_COMMAND even for unknown console commands.Mattes D1-0/+2
This allows plugins such as Aliases to intercept even unknown commands.
2015-05-10Added the EntireCommand parameter to HOOK_EXECUTE_COMMAND.Mattes D5-9/+9
Fixes #1996.
2015-05-09CheckBasicStyle: checks spaces around * and &.Mattes D2-9/+9
2015-05-09More style checking.Mattes D2-3/+3
Spaces around some operators are checked.
2015-05-09Fixed some Visual Studio warningsTiger Wang3-5/+18
2015-05-07Fixed inter-plugin calls.Mattes D2-9/+9
When an inter-plugin call failed due to function not found, the server would maul the LuaState and "yield". Fixes #1959.
2015-05-07Added support for additional data in the ParticleEffect Packettycho3-1/+104
Also started refactoring how broadcasts are handled
2015-05-02Update submodulesTiger Wang1-1/+1
2015-04-30Fixed bindings for cFile:ReadWholeFile().Mattes D1-7/+38
Fixes #1914
2015-04-29Added cBlockArea:GetNonAirCropRelCoords() API function.Mattes D3-1/+74
Fixes #1915.
2015-04-25cPlayer now checks restrictions.Mattes D1-0/+32
Fixes #1331.
2015-04-25Added player restrictions to the DB and API.Mattes D1-35/+283
2015-04-25Plugin removes its command registrations and webtabs when unloaded.Mattes D1-0/+5
Fixes #1890.
2015-04-23Refactored ManualBindings' callbacks using templates.Mattes D3-365/+259
This is a bit easier to read, has better error reporting and fixes a few subtle bugs. Fixes #1889.
2015-04-23Implemented cPluginManager:DoWithPlugin(), fixed ForEachPlugin().Mattes D3-170/+294
Both functions are exported as static.
2015-04-19Added cPluginManager:IsPluginLoaded() API, better load error msgs.Mattes D2-5/+42
2015-04-19Refactored cWebPlugin for C++11 style and proper WebTab clearing.Mattes D5-101/+147
2015-04-19Split the plugin names and plugin folders to avoid confusing them.Mattes D7-364/+458
Ref.: http://forum.mc-server.org/showthread.php?tid=1877
2015-04-13Removed HOOK_MAX and HOOK_NUM_HOOKS from Lua API.Mattes D1-2/+3
2015-04-10Fixed plugin hook calls when unloading plugins.Mattes D1-1/+248
If a plugin installs any hooks in its Initialize method and then causes the Lua runtime to abort, the server asserted because the hooks were called while the plugin was being unloaded.
2015-03-21Changed cEntity::m_UniqueID to UInt32.Mattes D1-1/+5
2015-03-20cPluginLua:cResettable no longer shares CS with plugin.Mattes D2-10/+13
This fixes locking the resettable while the plugin is already gone. Hopefully no deadlocks.
2015-03-20Added cPluginLua::cResettable interface, used for scheduled tasks.Mattes D3-59/+134
This allows plugins to register objects that can "survive" the plugin unloading - they will simply bail out if the plugin is already unloaded, instead of referencing bad plugin data. Fixes #1556.
2015-03-19Removed unwanted base classes from Lua API.Mattes D1-2/+4
2015-03-19AllToLua: Fixed cMonster inheritance.Mattes D1-2/+2
2015-03-19Improved DoWithID bindings.Mattes D1-3/+3
2015-03-19AllToLua: Removed an unneeded class declaration.Mattes D2-8/+2
It's perfectly possible to declare a class in ManualBindings without the need for declaration in AllToLua.pkg.
2015-03-19AllToLua: Fixed the parse order for bindings generation.Mattes D1-26/+45
Fixes #1789.
2015-03-11Fixed coding conventions for Pull Request #1807flx54-23/+26
2015-03-11Fixes #493 and #490flx56-12/+28
2015-03-05Added OnTeleportEntity hook for plugins.joshi075-0/+43
Plugins may or may not allow teleport to the new position. Updated the HookNotify plugin with it.
2015-03-03Lua API: Fixed md5 and sha1 hex formatting.Mattes D1-4/+4
std::setw() is only valid for one output operation and needs to be set again in each loop repetition.
2015-02-23Fixed operatorsSTRWarrior1-6/+6
2015-02-23Added forgotten indentSTRWarrior1-2/+2
2015-02-23Replaced lua_isXYZ with cLuaState::CheckParamXYZSTRWarrior1-12/+13
2015-02-23Exported all compression functions in a new class.STRWarrior1-16/+129
2015-02-22Exported CompressString and UncompressString to LuaSTRWarrior1-0/+37
2015-02-22cNetwork: Added EnumLocalIPAddresses() function.Mattes D1-5/+30
2015-02-21Added cCryptoHash namespace to Lua API.Mattes D1-2/+107
2015-02-20cNetwork: Added UDP API.Mattes D6-31/+620
2015-02-20Fixed crash when logging nil values.Matyas Dolak1-0/+32
Ref.: http://forum.mc-server.org/showthread.php?tid=1798
2015-02-14Fixed Linux compilation.Mattes D2-2/+2
2015-02-13Exported TLS server start on cTCPLink to Lua API.Mattes D3-7/+188
2015-02-13Exported cTCPLink:Close and :Shutdown() to Lua API.Mattes D1-13/+83
2015-02-12Fixed Linux compilation.Mattes D1-1/+1
std::make_unique is not available in C++11.
2015-02-12LuaAPI: Added client TLS support for TCP links.Mattes D5-5/+321
2015-02-06APIDump: Added cNetwork documentation.Mattes D1-1/+1
2015-02-04LuaServerHandle: Removed debugging output.Mattes D1-4/+0
2015-02-04Exported cServerHandle and cNetwork:Listen to Lua.Mattes D9-14/+609
Also added an example to the NetworkTest plugin.
2015-02-04cNetwork: Exported lookup functions to Lua API.Mattes D5-3/+219
Also added an example in the NetworkTest plugin.
2015-02-04cNetwork: Exported the Connect() method and cTCPLink class to Lua.Mattes D8-1/+614
2015-01-31Switched LuaState to use sizeof...tycho1-15/+1
2015-01-18Fixed type-conversion warnings.Mattes D1-1/+1
2015-01-17Fixed CppCheck: (performance) Function parameter should be passed by reference.Kirill Kirilenko2-4/+4
2015-01-11Initial convertion of a_Dt to std::chronoTycho7-5/+13
also refactored cWorld::m_WorldAge and cWorld::m_TimeOfDay
2014-12-24Refactored all player block placing to go through hooks.Mattes D5-15/+25
Fixes #1618.
2014-12-17C++11 and function rename.Howaner2-0/+19
2014-12-12Exported cWorld:PrepareChunk to Lua API, test in Debuggers.Mattes D1-0/+67
2014-12-05BasicStyle: Added missing braces to control statements.Mattes D2-2/+21
2014-12-04Fixed the CRAFTING_NO_RECIPE hook call.Mattes D5-5/+5
It used a pointer-to-pointer-to-cCraftingRecipe, which the Lua bindings didn't know how to handle, and emitted a warning message at runtime. Fixes #1641.
2014-12-03clearing CheckBasicStyle.lua messagesp-mcgowan1-2/+2
2014-11-29Mark StringToMobType() as deprecated. Use cMonster:StringToMobType() insteadHowaner1-0/+38
2014-11-29Many api fixes, add vanilla names to mob type -> string functions and mob spawner fixes.Howaner1-0/+1
2014-11-17Use cLuaState's stack trace.Howaner1-48/+27
2014-11-17Added UpdateSign() method to DeprecatedBindings.cppHowaner2-3/+88
2014-11-15Fixed a security problem with signs.Howaner1-1/+1
2014-11-05renamed FindAndDoWithUUID to DoWithPlayerByUUID, fixed style and comments, added description to APIDumpLukas Pioch1-2/+2
2014-11-02Added FindAndDoWithUUIDLukas Pioch1-0/+2
2014-10-31cLuaState: Fixed errors on non-existent callbacks.Mattes D1-1/+5
This mostly affected table-based callbacks, such as the cLineBlockTracer. If a callback didn't exist, the code would still push its arguments on the stack, breaking the next callback.
2014-10-23Merged IniFile into main MCS sources.Mattes D2-2/+2
2014-10-23En masse NULL -> nullptr replaceTiger Wang11-221/+221
2014-10-22LuaState: Projectiles are pushed using their full class.Mattes D1-1/+1
2014-10-21Properly exported cItemFrame and cHangingEntity to Lua.Mattes D2-0/+4
2014-10-21Exported individual projectile classes to Lua API.Mattes D2-104/+114
They used to be exported, but then they were moved to separate files and those werent' added to the ToLua processing list.
2014-10-21cLuaState: cEntity is pushed with specific type.Mattes D1-7/+48
2014-10-20En masse NULL -> nullptr replaceTiger Wang11-221/+221
2014-10-20Fixed a potential crash in cEntity bindings.Mattes D1-2/+6
2014-10-20Found it!Julian Laubstein1-1/+1
2014-10-20Added error messageJulian Laubstein1-9/+0
2014-10-20Added error handling to load <plugin> commandJulian Laubstein1-1/+11
2014-10-19Fixed minor style issues.Mattes D1-1/+1
2014-10-19cLuaState: cMonster descendants don't push their specific type.Mattes D1-1/+10
The individual mob types aren't exported to Lua, so pushing them would crash the server.
2014-10-19cLuaState: cBlockEntity descendants are pushed with proper class type.Mattes D1-1/+1
2014-10-19LuaState: Pushing a cEntity pushes the correct class name.Mattes D1-1/+3
This makes Lua scripts easier, as they don't need to cast values from cEntity to the specific descendant.
2014-10-19Bindings: Removed obsolete codegen files.Mattes D3-237/+0
LuaState_Call.inc is no longer needed, it was replaced with variadic templates.
2014-10-18Fixed failure for cRankManager to restartTiger Wang1-34/+34
2014-10-17LuaChunkStay: Fixed a crash on unused callback.Mattes D1-2/+6
2014-10-16Use universal referencesworktycho1-4/+4
2014-10-15cLuaState::Call() uses variadic templates.Mattes D1-3/+75
(doesn't compile)
2014-10-15Functions in cPluginManager get references instead of pointers.Mattes D5-124/+122
2014-10-10Moved a few objects to unique_ptrtycho1-1/+1
2014-10-06Fixed crash in ForEachEntityInBox API.madmaxoft3-6/+18
Fixes #1511.
2014-10-05Fixed eMonsterType Lua API mismatch.madmaxoft1-0/+1
2014-10-01Bindings: Fixed binding for cPlayer::PermissionMatches().madmaxoft1-10/+4
2014-09-29Renamed GetAllPlayers() to GetAllPlayerUUIDs()Howaner1-5/+5
2014-09-28Fixed SetDefaultRank() return value.Howaner1-1/+1
2014-09-28cRankManager: Added ClearPlayerRanks()Howaner1-0/+22
2014-09-28cRankManager: Added GetAllPlayers() and GetPlayerName()Howaner1-0/+61
2014-09-26Update Plugin.hworktycho1-2/+0
2014-09-26Removed more unessicary includesTycho2-2/+0
2014-09-26Removed a few unnessicary includesTycho10-21/+16
2014-09-17Added first test to show the object can be createdTycho1-0/+2
2014-09-03LuaState: Fixed class value-getting off the stack.madmaxoft1-4/+4
2014-09-03LuaState: Fixed referenced function pushing.madmaxoft2-1/+9
The references are no longer destroyed by the call.
2014-09-03Exported ForEachEntityInBox() to Lua API.madmaxoft1-0/+70
2014-09-03Added cWorld::ForEachEntityInBox()madmaxoft2-0/+36
2014-08-31Rewrited furnace.txt loading.Howaner1-1/+1
2014-08-28Fixed spaces after "template" keyword.Mattes D1-6/+6
2014-08-28remove y-coord from chunksLO1ZB1-1/+1
2014-08-24RankMgr: Exported the default-rank functions.Mattes D1-0/+55
2014-08-23RankMgr: Unified function signature comments in the bindings.Mattes D2-28/+36
2014-08-22Fixed cPlugin::OnPlayerMoving signature.Mattes D3-3/+3
2014-08-22cLuaState: Fixed Vector3<> names pushed to Lua.Mattes D2-5/+44
2014-08-21Sorted the generated param count.Mattes D1-1/+1
2014-08-21Fixed a compile-time warning in MSVC.Mattes D1-1/+1
2014-08-21RankMgr: Added cRankManager::RemovePlayerRank().Mattes D1-0/+30
2014-08-21Removed Group.h from Bindings' dependencies.Mattes D1-1/+0
2014-08-21Removed cGroup and cGroupManager.Mattes D1-1/+0
2014-08-21cMojangAPI: Fixed MakeUUID___() bindings.Mattes D1-0/+58
ToLua would generate a shadow return value for the input strings.
2014-08-20Renamed a_Motd to a_ServerDescription.Howaner5-7/+7
2014-08-20Added a_ClientHandle to the HOOK_SERVER_PING hook.Howaner6-8/+9
2014-08-20RankMgr bindings: fixed GetRankVisuals return value.Mattes D1-18/+22
2014-08-20RankMgr: Fixed an ignored return value in the API.Mattes D1-2/+2
2014-08-20Cleaned up code.Howaner2-847/+1
2014-08-20Added HOOK_SERVER_PINGHowaner6-7/+854
2014-08-19cPlayer reads ranks from cRankManager.Mattes D1-39/+54
2014-08-16Better OnPlayerMoving hook.Howaner5-7/+7
2014-08-16First implementation of HOOK_SERVER_PING.Howaner5-0/+43
2014-08-12Fix messing renameTycho1-1/+1
2014-08-12Renamed LoggersTycho1-5/+5
2014-08-11Fixed unchecked return values.madmaxoft1-3/+6
2014-08-10Fixed circular dependecy luaState_Call.incTycho1-1/+1
2014-08-10First Implementatation of new Loggin frameworkTycho2-6/+6
2014-08-09WebAdmin: Manually exported string conversion functions.madmaxoft1-1/+59
ToLua generated an extra return value for GetHTMLEscapedString() and GetURLEncodedString(), making them difficult to use.
2014-08-09WebAdmin: Manually exported string conversion functions.madmaxoft1-1/+59
ToLua generated an extra return value for GetHTMLEscapedString() and GetURLEncodedString(), making them difficult to use.
2014-08-09RankMgr: Added GetRankVisuals() function.madmaxoft1-2/+38
2014-08-08Exported cRankManager to LuaAPI.madmaxoft4-1/+891
2014-08-08cLuaState: Added GetStackValues() auto-generated templates.madmaxoft1-0/+27
These will read consecutive values off the stack, each value of a type independent of the other values. Auto-generated because we don't have variadic templates in C++03.
2014-08-07Removed debug message.Howaner1-1/+0
2014-08-05Made lua clamp() compatible with all number types.Howaner1-4/+4
2014-08-05Added api documentation for Clamp()Howaner1-2/+2
2014-08-05Added Clamp() function to the lua api.Howaner1-0/+28
2014-08-04Made AllToLua output consistentTiger Wang1-2/+2
2014-08-04CheckBasicStyle: multi-level indent change.madmaxoft1-0/+2
2014-08-03cMojangAPI: Added UUID-to-Name lookup.madmaxoft1-1/+97
Also fixed the bindings, now all functions are static-like.
2014-07-31MojangAPI: Added a UseCachedOnly param to GetUUIDsFromPlayerNames().madmaxoft1-5/+14
2014-07-30Exported the beacon.Howaner3-0/+4
2014-07-30ManualBindings: Fixed alignment.madmaxoft1-3/+3
2014-07-30Exported cMojangAPI to Lua.madmaxoft2-3/+7
2014-07-30Added a cMojangAPI class for PlayerName -> UUID lookups, with cache.madmaxoft1-1/+1
The cache is persisted into a SQLite DB file on server shutdown.
2014-07-30Fixed "Dependency" typosarchshift1-2/+2
2014-07-29Slight cleanup after portalsTiger Wang1-5/+3
2014-07-28Added cClientHandle:GetUUIDsFromPlayerNames() to Lua API.madmaxoft1-3/+62
2014-07-27Fixed plugin count and fixed plugin loading, when settings.ini was regenerated.Howaner1-16/+30
2014-07-24Removed redundant semicolons and re-added warningarchshift1-2/+2
2014-07-22Fixed Bindings generation in MSVC.madmaxoft1-2/+2
The bindings weren't regenerated because of the typo in the dependencies cmake variable.
2014-07-21Style: Normalized to no spaces before closing parenthesis.madmaxoft11-51/+51
2014-07-21Style: Normalized spaces after if, for and while.madmaxoft3-17/+17
2014-07-19Fixed style: spaces after commas.madmaxoft3-34/+33
2014-07-19Fixed MSVC bindings generation.madmaxoft1-1/+1
2014-07-19Renamed AllToLua_lua script.madmaxoft1-0/+0
Fixes #1222.
2014-07-19Moved Windows custom command to src/CMakeLists.txtarchshift1-15/+1
2014-07-19CMakeLists: Moved Bindings-specific code to subdirarchshift1-0/+111
2014-07-19CMake: Add Bindings library from subdirectoryarchshift1-0/+6
2014-07-19src/CMakeLists.txt: Replaced glob with list of filesarchshift1-0/+32
On MSVC, CMake will traverse all the CMakeLists and add their source and header files to one conglomerate SOURCE list.
2014-07-17Fixed issues relating to saplings and leavesTiger Wang1-27/+0
- Removed cBlockInfo::RequiresSpecialTool * Fixes #1195 * Fixes #1201
2014-07-17Basic style fixes.madmaxoft7-46/+50
2014-07-17Normalized comments.madmaxoft10-22/+22
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-16Resolved backwards compatibility issuesTiger Wang5-7/+7
2014-07-12For now, removed creator member from Entity Effect for pointer safetyarchshift5-7/+7
2014-07-04cPluginManager: Reformatted the switch statement.madmaxoft1-7/+34
2014-07-04Moved sending error messages to cPluginManager:CallHookChatSTRWarrior1-4/+6
2014-07-04Tailored death messagesTiger Wang5-7/+7
2014-07-03Changed OnWeatherChanging hook to always read the returned weather.madmaxoft3-4/+18
Ref.: http://forum.mc-server.org/showthread.php?tid=1512
2014-07-02Removed foodlevel-change possibility. Plugins can cancel the event and use cPlayer:SetFoodLevel()Howaner5-6/+6
2014-07-01Tolua generates LuaState_Call.inc file.madmaxoft3-622/+22
2014-07-01Initial codegen for LuaState_Call.inc.madmaxoft1-0/+196
2014-07-01Fixed a possibly unused variable.madmaxoft1-1/+1
2014-06-30Fixes.Howaner1-1/+1
2014-06-30Add new hook: HOOK_PLAYER_FOOD_LEVEL_CHANGEHowaner5-0/+43
2014-06-28Fixed doxycommentsSTRWarrior1-3/+3
2014-06-28Fixed a silly path error in #include.Mattes D1-1/+1
2014-06-27Removed the md5 library, obsoleted by PolarSSL.Mattes D1-5/+6
Fixes #1130.
2014-06-19Nullify deleted pointers.archshift3-0/+3
2014-06-19EntityEffects.x -> EntityEffect.x, Object-Oriented effectsarchshift1-1/+1
Changed effect map to take a pointer of the effect as a result.
2014-06-18(Force)ExecuteCommand returns the CommandResult enumsSTRWarrior2-8/+8
Exported and documented the CommandResult enums
2014-06-17Added the OnEntityAddEffect hook.madmaxoft5-0/+46
2014-06-17Moved Effects.h to EntityEffects.h, added initial implarchshift1-1/+1
2014-06-17Added crBlocked and crNoPermissionSTRWarrior2-2/+4
2014-06-17HandleCommand now returns an CommandResult enum.STRWarrior2-23/+19
2014-06-17Fixed possible confusion.STRWarrior2-2/+8
If a command handler gets an error then the player will receive an unknown command error. This can be confusing for players.
2014-06-14Fixed bindings generation for Win64 builds.Mattes D2-0/+1
Fixes #1092.
2014-06-14Reduced cPluginManager code duplicationTiger Wang1-286/+178
2014-06-12automaticlly build tolua and generate bindings as part of build.tycho1-0/+0
2014-06-11Added cBlockArea:GetCoordRange to Lua API.madmaxoft1-0/+32
2014-06-09ToLua can now be run in pure-lua mode.madmaxoft1-0/+27
See the src/Bindings/AllToLua_lua.bat for usage example.
2014-06-03Fixed OnProjectileHitBlock bindings.madmaxoft3-82/+111
Also sorted the various cLuaState::Push() functions.
2014-06-01Made a_BlockHitPos a referenceSTRWarrior5-6/+6
2014-05-31Used recommendationsSTRWarrior5-7/+7
2014-05-30Fixed bindings for cCompositeChat:SetMessageType().madmaxoft1-2/+2
2014-05-11Statistic Managerandrew1-0/+1
2014-05-10Fixed the console saying no plugins are loaded.STRWarrior1-1/+1
2014-05-09Fixed MSVC 64-bit build warnings.Mattes D2-5/+6
2014-05-08Fixed MSVC 64-bit build warnings.Mattes D2-5/+6
2014-05-02HOOK_DISCONNECT has cClientHandle as its first parameter.madmaxoft5-7/+7
Ref.: #655.
2014-05-01Fixed warnings in ManualBindings.madmaxoft1-20/+20
2014-05-01Fixed warnings in Lua helpers.madmaxoft2-3/+3
2014-04-27Fixed OnPluginMessage hook not exiting early.Tycho1-1/+1
OnPluginMessage hook would call all plugins even after one returned true. Fixes CID 43512
2014-04-26Fixed a memory leak in tolua_cWorld_ChunkStay. (CID 43618)jfhumann1-1/+4
2014-04-06Updated the tolua executable for Windows.madmaxoft1-0/+0
2014-04-03Removed the bindings to set old g_BlockXXX arrays.Mattes D1-297/+65
Those were supposed to be read-only; there's no point in writing to them anyway. Also fixed MSVC type warnings in the code.
2014-04-01Exported the Base64 encoding and decoding functions to Lua API.madmaxoft1-0/+46
2014-04-01LOG() API reads the LogLevel from the cCompositeChat's MessageType.madmaxoft1-4/+13
2014-03-31Console logging supports cCompositeChat as its parameters.madmaxoft1-12/+34
2014-03-30Using recommendations (I think)STRWarrior5-5/+5
2014-03-30Added a BlockHitPos parameter to OnProjectileHitBlockSTRWarrior5-7/+7
2014-03-30Added a blockface parameter to the OnProjectileHitBlock hook.STRWarrior5-7/+7
2014-03-29Renamed lua dll for tolua++.exe.madmaxoft1-0/+0
Fixes #843.
2014-03-29Added HOOK_PROJECTILE_HIT_BLOCK.STRWarrior5-0/+45
2014-03-29Fixed error when the hook gets called.STRWarrior2-0/+14
2014-03-29Added HOOK_PROJECTILE_HIT_ENTITYSTRWarrior5-0/+48
2014-03-28Fixed non-virtual destructors warnings.madmaxoft1-0/+2
2014-03-27Add SpreadSourceHowaner5-7/+7
2014-03-27Add HOOK_BLOCK_SPREADHowaner5-0/+46
2014-03-25More 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.Samuel Barney6-2/+10
Also had to undefine TOLUA_TEMPLATE_BIND a couple of times.
2014-03-23Updated the ToLua windows executable.madmaxoft1-0/+0
2014-03-20Updated the tolua++ executable for Win builds.madmaxoft1-0/+0
2014-03-20Made pushing plain pointer to Lua a valid operation, with a warning.madmaxoft2-3/+4
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-19Errors in Lua don't include the error handler in the stack trace.madmaxoft2-7/+7
Fixes #817.
2014-03-19LuaChunkStay: Removed a debugging output.madmaxoft1-3/+0
2014-03-14Added Noreturn attribtes to a couple of functions and made a missing noreturn an errorTycho1-1/+1
2014-03-14cPlugin:BindConsoleCommand can be called statically.madmaxoft1-1/+4
This has been documented before it was written.
2014-03-14cPluginManager:Bind[Console]Command returns true on success.madmaxoft1-2/+4
Fixes #801.
2014-03-12Fixed Lua string return values.madmaxoft1-4/+0
Fixes #773.
2014-03-12The entire unknown command is echoed back to the user on error.madmaxoft1-1/+1
2014-03-12Moved Lua API registering into a separate function.madmaxoft3-2/+16
This will allow us to use Lua as lite-config files as well, should we want to.
2014-03-11Fixed a load of format string errorsTycho1-1/+3
2014-03-11Unified Matrix4 codeandrew1-1/+0
2014-03-11Unified Vector classesandrew2-4/+9
2014-03-07Fixed cBlockArea schematic string saving signature.madmaxoft1-3/+7
2014-03-07Fixed warningsTycho1-0/+1
2014-03-07Fixed a typo.madmaxoft1-4/+4
2014-03-07Add Lua Bindings for FlowerPotEntity.h and add documentation.Howaner2-1/+3
2014-03-07Added cBlockArea serialization to string.madmaxoft1-6/+67
Fixes #665.
2014-03-07Add Flower PotsHowaner1-0/+2
2014-03-04Manually exported cCompositeChat modifiers.madmaxoft1-0/+258
This adds chaining support to them. Fixes #755.
2014-03-04cLuaState: Made public the GetStackValue() functions.madmaxoft2-54/+61
2014-03-02Fixed MSVC warnings in DeprecatedBindings.madmaxoft1-8/+76
2014-03-02GetById => Getandrew1-9/+9
2014-03-02Removed g_BlockXXX arraysandrew1-0/+4
2014-03-02Manually exported g_Block tablesandrew3-0/+444
2014-03-02Exported cBlockInfoandrew1-0/+1
2014-03-01Exported cScoreboard::ForEachTeamandrew1-0/+1
2014-03-01Exported cScoreboard::ForEachObjectiveandrew1-0/+4
2014-03-01Exported and documented cScoreboardandrew1-0/+1
2014-02-26Attempted fix for several GCC warnings.madmaxoft2-2/+14
2014-02-24Fixed tolua export for Byte.madmaxoft1-0/+7
No longer treated as an unknown class.
2014-02-23Fixed bindings for cBlockArea:Get(Rel)BlockTypeMeta().madmaxoft1-29/+104
They no longer require the ghost output params.
2014-02-23Rename SkullEntity to MobHeadEntityHowaner1-2/+2
2014-02-23Add Heads completelyHowaner1-0/+2
2014-02-23Added cBlockArea:GetSize() and :GetOrigin() to Lua API.madmaxoft1-0/+64
These don't have a direct C++ equivalent, but are rather useful for the plugins.
2014-02-23Manually exported DoWithMapandrew1-0/+4
2014-02-23Documented and exported cMapManagerandrew1-0/+1
2014-02-22Documented and exported cMapandrew1-0/+1
2014-02-20Fixed bindings for cBlockArea:Get(Rel)BlockTypeMeta().madmaxoft1-29/+104
They no longer require the ghost output params.
2014-02-19Rename SkullEntity to MobHeadEntityHowaner1-2/+2
2014-02-18Add Heads completelyHowaner1-0/+2
2014-02-18Properly exported and documented paintingsTiger Wang1-0/+1
2014-02-17Added cPluginManager:GetPluginsPath() to the Lua API.madmaxoft2-1/+5
2014-02-17Add Lua plugin path to package.path and .cpath.madmaxoft3-0/+37
Fixes #693.
2014-02-15Implemented cCompositeChat.madmaxoft1-0/+1
This allows plugins to send composite chat messages, containing URLs, commands to run and cmdline suggestions. Fixes #678.
2014-02-14Send map when selectedandrew1-0/+1
2014-02-11cWorld:ChunkStay() accepts nils as callbacks.madmaxoft1-5/+3
Also removed leftover debug logging.
2014-02-11Added cLuaState::CheckParamFunctionOrNil().madmaxoft2-2/+37
Also fixed error reporting for the two function-checking functions.
2014-02-11Fixed nested plugin function calls.madmaxoft1-6/+9
2014-02-10Rewritten Lua ChunkStay API into a single function, cWorld:ChunkStay().madmaxoft4-64/+172
This fixes problems with indeterminate class object lifespan (Lua-GC) and forgetting to disable it or keep it until ready.
2014-02-10cLuaState: Stack traces don't include ghost 0-th element.madmaxoft1-1/+1
2014-02-10Added cPluginLua::cOperation.madmaxoft1-1/+27
This class should be used to lock-and-access the plugin's LuaState. cPluginLua::GetLuaState() is unsafe and by this commit obsolete.
2014-02-09First working version of cLuaChunkStay.madmaxoft3-16/+91
It works, but has random failures, probably due to threading issues.
2014-02-09Initial Lua cChunkStay export.madmaxoft3-0/+112
2014-02-09cLuaState::cRef can be unbound and re-bound.madmaxoft2-9/+60
This will allow us to store Lua references as member variables in classes and initialize those later than in the constructor.
2014-02-08Fixed cWorld:TryGetHeight() API.madmaxoft1-1/+5
2014-02-06Server internally uses new functionsTiger Wang1-2/+2
2014-02-05Simplified shutdownTycho1-4/+0
2014-02-05Added support to start up MCServer and then immediatly sut it down in travisTycho1-0/+4
2014-02-05Fixed most of the reordering warningsTycho1-2/+2
2014-02-05Added cPluginManager:LogStackTrace() to the Lua API.madmaxoft1-0/+11
Fixes #637.
2014-02-04Fixed a gcc warning in ManualBindings.madmaxoft1-2/+2
Constructor member order...
2014-02-04Removed a useless check in cLuaState.madmaxoft1-3/+1
2014-02-04Fixed calling plugins with userdata params.madmaxoft1-0/+1
2014-02-04Removed a leftover debug message.madmaxoft1-1/+0
2014-02-04Fixed error handling in cPluginManager:CallPlugin() API.madmaxoft1-2/+5
Fixed: When the called function malfunctioned, the entire plugin's call was aborted.
2014-02-04Improved error resistance in cPluginManager:CallPlugin().madmaxoft1-0/+8
Fixed: If the call failed, all the next plugin calls would fail as well.
2014-02-01Removed "player destroying" hookdaniel09165-45/+0
2014-01-31Fixed cLineBlockTracer:Trace() signature.madmaxoft1-13/+27
2014-01-31Added cPluginManager:BindCommand() form to the API.madmaxoft1-1/+4
That's the canonical way to call static functions.
2014-01-29Lua: Fixed an error in table-functions callbacks.madmaxoft1-1/+5
2014-01-29Plugin files are loaded in alphabetical order.madmaxoft1-17/+35
Except for the Info.lua file which gets loaded always last. Implements #597.
2014-01-26Reduced unnecessary echoes (thanks xoft)Tiger Wang1-5/+3
2014-01-25Improved AllToLua UI experienceTiger Wang1-2/+8
2014-01-25Stupid Mistake fixedTycho1-2/+2
2014-01-25Fixed exportsTycho2-3/+0
2014-01-25Added "player destroying" and "player destroyed" hooksdaniel09165-0/+90
Hooks: HOOK_PLAYER_DESTROYING HOOK_PLAYER_DESTROYED Idea from: https://github.com/mc-server/MCServer/issues/473
2014-01-23BugfixesTycho1-10/+0
2014-01-23added dependecies for bindings regenTycho1-14/+0
2014-01-23Fixed crash while calling disabled plugins.madmaxoft1-1/+1
2014-01-22Fixed spelling errorTycho2-2/+2
2014-01-22Added manual bindings for moved functionsTycho2-0/+67
2014-01-21Implemented cPluginManager:CallPlugin() API.madmaxoft7-214/+471
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-19Changed the cWorld::ScheduleTask() signature.madmaxoft1-10/+14
Now it takes the delay in ticks as an argument, and a cTask descendant as the task to run. Lua API has been updated similarly.
2014-01-19cLuaState can now check function params.madmaxoft2-0/+37
2014-01-19Exported cFloater to the Lua API.STRWarrior1-0/+1
2014-01-18Command blocks: Execute()andrew1-10/+12
2014-01-16Fixed whitespace in previous commit.madmaxoft1-1/+1
2014-01-16Finished exporting cWorld:ScheduleTask() to Lua API.madmaxoft1-1/+15
2014-01-14added cWorld::ScheduleTask FunctionTycho1-4/+58
ScheduleTask schedules a SceduledTask object to be run x ticks in the future. In is exported to lua, fixes #150
2014-01-13Generating the bindings outputs a message at the end.madmaxoft1-0/+8
2014-01-13cCreeper is no longer available in API.madmaxoft3-14/+1
Has been replaced by cMonster.
2014-01-12Fixed settings plugin generation after IniFileTiger Wang1-3/+3
2014-01-12Disabled a useless MSVC warning in Bindings.cpp.madmaxoft1-0/+6
2014-01-11Lua errors display stack trace.madmaxoft2-3/+27
Fixes #418.
2014-01-11Removed internal methods from public cLuaState interface.madmaxoft3-119/+103
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-11Removed an unused file.madmaxoft2-130/+0
2014-01-11Removed unused variables.madmaxoft1-2/+0
The Lua API calls had no side-effects, either.
2014-01-09Move biome definition to separate filesBill Derouin1-0/+1
2014-01-09Exported cClientHandle::SendPluginMessage() to Lua.madmaxoft1-0/+30
2014-01-08A couple touchupsBill Derouin1-2/+3
2014-01-07Add missing plugin errorBill Derouin1-0/+12
Previously, if a plugin was included but the folder had no lua files, the error given was ambiguous. Now, it explicitly describes lack of lua files. See issue #512 P.S. This probably isn't the best way, but this is where the fix can be made.
2014-01-07Plugin messages are received and handed to plugins.madmaxoft5-1/+57
Note that MCS doesn't currently handle any channel registrations, this will come later on.
2014-01-07Removed a debugging log output in cPluginManager:AddHook().madmaxoft1-1/+0
2014-01-07LuaState can push strings with embedded NULs.madmaxoft1-1/+1
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-05Fixed cPluginManager:AddHook() binding.madmaxoft1-6/+13
Fixes #401. Old formats are still accepted, for compatibility reasons.
2014-01-01OnPlayerFishing doesn't have a const cItems anymoreSTRWarrior5-5/+5
2013-12-31implemented the recommendations Xoft gave.STRWarrior7-12/+25
2013-12-30Implented OnPlayerFishing and OnPlayerFished.STRWarrior5-0/+90
2013-12-28Added support for out-of-source builds.madmaxoft1-9/+14
2013-12-27Made cmake compilation possible on Windows.madmaxoft1-2/+2
2013-12-23Replaced esCreeper with esMonster.madmaxoft1-1/+1
Any monster will be able to explode, and also this fixes #425.
2013-12-22merged in warnings changesTycho Bickerstaff2-1/+22
2013-12-29Added HOOK_PLUGINS_LOADED.madmaxoft6-3/+64
This fixes #482.
2013-12-22converted commneted paramater names to the unused macroTycho Bickerstaff1-20/+41
2013-12-21Bindings regen script updated.madmaxoft1-11/+6
The Bindings.cpp / .h files are no longer stored in the git repo.
2013-12-21Root is now warnings cleanTycho Bickerstaff2-21/+21
2013-12-20fixed include of math on windowstycho1-1/+1
2013-12-19added expat as lua bindings dependincyTycho Bickerstaff1-1/+1
2013-12-19added all cpp files to bindingsTycho Bickerstaff1-1/+4
2013-12-19fixed bindings generationTycho Bickerstaff1-8/+2
2013-12-19bindings regenration logicTycho Bickerstaff3-32240/+8
2013-12-18Prettified command error messagesTiger Wang2-9/+23
Using the magic of overlords (overloads) and standards compliance.
2013-12-18Renamed back EntityAnimation to PlayerAnimationTiger Wang7-14/+50
This fixes #411 and partially reverts 30ead790490f04248b861db79fddde9148b552f4
2013-12-16Fixed multiple inheritance in ToLua++.madmaxoft3-16/+107
This fixes #422.
2013-12-15Exported to LuaSTRWarrior2-10/+10
2013-12-15This adds a function that allows you to 'shoot' a player towards a direction.STRWarrior2-2/+36
2013-12-15Exported Set and Get functions to Lua.STRWarrior2-2/+136
2013-12-14Added tolua++ redirection include.madmaxoft1-0/+13
This is needed because ToLua++ regenerates the Bindings file with bad #include, and it would be too difficult to fix ToLua++; this is an easier solution. Should fix PR #431.
2013-12-14Exported E_EFFECTS_<Effect> to lua. Forgot to commit Globals.h.STRWarrior3-3/+28
2013-12-14Implemented note block playing and fixed wireTiger Wang1-0/+2
Game of Thrones music in Minecraft, here I come!
2013-12-14Exported the cTNTEntitySTRWarrior3-7/+79
2013-12-11Added a HOOK_WORLD_STARTED hook and a cRoot::CreateAndInitializeWorld function for plugins.STRWarrior7-2/+79
2013-12-10added tolua++ command and removed stackwalker from buildTycho Bickerstaff1-4/+6
2013-12-10more cmake changesTycho Bickerstaff1-0/+7
2013-12-10more cmakeTycho Bickerstaff1-1/+1
2013-12-10started work on cmakeTycho Bickerstaff1-0/+7
2013-12-08Fixed tolua++ compilation.madmaxoft7-192/+5
Duplicate files, wrong includes, const-incorrect code...
2013-12-08Fixed VS2008 compilation after those huge changes.madmaxoft2-5/+7
2013-12-08Fixed normalizing large angles.madmaxoft2-2/+32
2013-12-08Moved bindings-related to a Bindings subfolder.madmaxoft25-0/+41155
Ref.: #407
2013-12-09Fix Undefined behavior at Bindings/LuaWindow line 32worktycho1-1/+4