| Commit message (Collapse) | Author | Files | Lines |
|
* Implemented cServer::ScheduleTask() and cServer::TickQueuedTasks()
* Fixed formatting and added ScheduleTask to APIDesc
* Added feyokorenhof to contributors
* Added ExperienceAmount variable to all the hook calls.
* Made ExperienceAmount int reference instead of int in HOOK_PLAYER_FISHING. Fixed bug: a_Reward is now a reference
* Add documentation, change ItemFishingRod to pass in experience
Co-authored-by: Alexander Harkness <me@bearbin.net>
|
|
+ Use libdeflate
+ Use std::byte
* Fix passing temporary to string_view
+ Emulate make_unique_for_overwrite
|
|
+ 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>
|
|
* 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>
|
|
|
|
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
|
|
Credit to @MeMuXin
Closes #4498
|
|
|
|
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.
|
|
Replace repetitive CallHook functions with a generic implementation.
Also converts some loops to range-based for.
Related to #1134
|
|
|
|
This reverts commit 496c337cdfa593654018c171f6a74c28272265b5.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fixes #1435.
|
|
|
|
|
|
Fixes #1999.
|
|
Fixes #1996.
|
|
|
|
Ref.: http://forum.mc-server.org/showthread.php?tid=1877
|
|
|
|
|
|
Plugins may or may not allow teleport to the new position.
Updated the HookNotify plugin with it.
|
|
|
|
also refactored cWorld::m_WorldAge and cWorld::m_TimeOfDay
|
|
Fixes #1618.
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Exported and documented the CommandResult enums
|
|
|
|
|
|
|
|
If a command handler gets an error then the player will receive an unknown command error. This can be confusing for players.
|
|
|
|
|
|
|
|
|
|
Ref.: #655.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Hooks:
HOOK_PLAYER_DESTROYING
HOOK_PLAYER_DESTROYED
Idea from: https://github.com/mc-server/MCServer/issues/473
|
|
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.
|
|
Note that MCS doesn't currently handle any channel registrations, this will come later on.
|
|
|
|
|
|
|
|
|
|
This fixes #482.
|
|
|
|
Using the magic of overlords (overloads) and standards compliance.
|
|
This fixes #411 and partially reverts
30ead790490f04248b861db79fddde9148b552f4
|
|
|
|
Ref.: #407
|
|
Renamed BroadcastPlayerAnimation to BroadcastEntityAnimation. Not just
players can have animations, you know.
|
|
|
|
|
|
- Reverted changes to WebAdmin.cpp IPv6 ports and Server.cpp server
description
+ Added default value explicitly for HardCore value
* Split PluginManager plugin defaults write to new function
- Removed a commented block from BlockTorch and...
+ Added g_BlockIsTorchPlaceable to Defines.h
|
|
Fixes issue #75
|
|
Multiple hooks per plugin can be added. The cPluginManager.AddHook() has four available signatures, the recommended one is cPluginManager.AddHook(HOOK_TYPE, CallbackFunction)
|
|
|
|
Triggerred for each world every time it ticks, parameters are the cWorld and the previous tick length (a_Dt)
|
|
Requested in FS 412, slightly modified the params.
|
|
Initial patch by @STR_Warrior, updated to account for different animation packets.
|
|
As requested in FS 413, with extra parameters:
World, BlockX, BlockY, BlockZ, Size, CanCauseFire, Source, SourceData
OnExploding() can return 3 values:
StopHook, CanCauseFire, ExplosionSize
|
|
As requested in FS 418.
|
|
Fixes FS 425
|
|
Each command is reported only if the player has the permission to use it.
|
|
This only handles the network comm and the overall design logic, the actual completion is not yet implemented, only dummy values are returned for now.
|
|
Fixes FS #297 and part of FS #403.
Added sizes to all entities.
Moved all damage-related functions from cPawn to cEntity
API change: renamed cPawn:TeleportTo() to cEntity:TeleportToCoords()
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1635 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
RCON authentication is now required before executing commands.
Console command handlers now return two values, bool (IsHandled) and string (CommandOutput).
API change: removed cRoot:ExecuteConsoleCommand(), added cRoot:QueueExecuteConsoleCommand().
API change: removed cPluginManager:ExecuteConsoleCommand(), use cRoot:QueueExecuteConsoleCommand() instead
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1631 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
FS #376
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1622 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1519 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
Note that built-in console commands are exempt to this hook - they are always performed and the hook is not called. Also note that, for reasons unknown, the HookNotify plugin doesn't list the callback arguments.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1221 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
FS #300
Most console commands are now implemented in the Core plugin.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1214 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1212 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
http://www.mc-server.org/support/index.php?do=details&task_id=299
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1210 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
http://forum.mc-server.org/showthread.php?tid=464&pid=6312#pid6312
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1193 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
As specified in http://forum.mc-server.org/showthread.php?tid=765 , commands are now bound using a single function, cPluginManager:BindCommand().
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1183 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
Also tweaked the mechanics so that plugins may revive without dropping other plugins out of the picture.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1182 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1180 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
Note that cItems is used in the function signature but not yet exported in the API, TODO!
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1176 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
-ING means the event is being processed and may be refused by a plugin, -ED means it has already happenned and the plugin cannot do anything about it.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1174 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
Splitting off the Composable generator and fiddling with LuaChunk / ChunkDesc is good, other generators not good yet.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1171 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
http://forum.mc-server.org/showthread.php?tid=464&pid=6163#pid6163
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1158 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1139 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
http://forum.mc-server.org/showthread.php?tid=625
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1087 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
It has been crashing the server. http://forum.mc-server.org/showthread.php?tid=610
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1024 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
Removed cPlugin_Lua, obviously
cPluginManager stores plugins by their (folder)name
cPluginManager now scans the Plugins folder for potential plugins and adds them as non-loaded plugins
Added a DisablePlugin and LoadPlugin to disable and load plugins on a per-plugin basis instead of all at once
cPluginManager::FindPlugins refreshes the plugin list by removing non-existing plugins and adding new plugins
Made it incredibly easy to use new plugins from the WebAdmin
Exposed some food/hunger related functions in cPlayer to Lua
git-svn-id: http://mc-server.googlecode.com/svn/trunk@959 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@887 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
More info: http://forum.mc-server.org/showthread.php?tid=555
git-svn-id: http://mc-server.googlecode.com/svn/trunk@836 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@814 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
Also, Lua API change, OnCollectItem -> OnCollectPickup; first param is cPlayer to match other callbacks.
git-svn-id: http://mc-server.googlecode.com/svn/trunk@786 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
Got rid of cWebPlugin_Lua
cPlugin_Lua is also a cWebPlugin now, so plugins don't need a separate cWebPlugin object
Changed some stuff to use AString instead of char*
git-svn-id: http://mc-server.googlecode.com/svn/trunk@777 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@761 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
Again, API change! cPlugin:OnChat() has had its parameters swapped, to match all the other callbacks - Player first, Message second
git-svn-id: http://mc-server.googlecode.com/svn/trunk@751 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
This breaks plugin API! Plugins need to modify their hook functions to match those used in the Core plugin
git-svn-id: http://mc-server.googlecode.com/svn/trunk@750 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
Added AddCommand / BindCommand for Squirrel Plugins
git-svn-id: http://mc-server.googlecode.com/svn/trunk@652 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@622 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@610 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@609 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@606 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@605 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@602 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@598 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@561 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@558 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
/pluginlist now also shows the number of active plugins
Fixed crash caused by lingering bound Lua commands http://forum.mc-server.org/showthread.php?tid=212&pid=2541#pid2541
Added error messages when binding commands to an invalid plugin
git-svn-id: http://mc-server.googlecode.com/svn/trunk@440 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@251 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
In SquirrelBindings.h use #define USE_SQUIRREL 1 to enable squirrel
git-svn-id: http://mc-server.googlecode.com/svn/trunk@76 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@6 0a769ca7-a7f5-676a-18bf-c427514a06d6
|
|
git-svn-id: http://mc-server.googlecode.com/svn/trunk@3 0a769ca7-a7f5-676a-18bf-c427514a06d6
|