| Commit message (Collapse) | Author | Age |
| |
|
| |
|
| |
|
| |
|
|
|
| |
Sometimes you need to be able to do removal-related cleanup, such as removing files from disk, or entries from a database. staticdata obviously isn't suitable for large data. The data shouldn't be removed if the entity is unloaded, only if it is removed.
|
| |
|
| |
|
|
|
|
| |
fixes #11975
|
| |
|
| |
|
| |
|
|
|
|
| |
This fixes 'minetest.get_inventory' calls to players or nodes during the load phase.
|
|
|
|
| |
closes #11840
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This limits the logged deprecation messages to the mods that are loaded
Unifies the mod naming convention check for CSM & SSM
|
|
|
|
|
| |
when minetest.remove_detached_inventory is called on script init, the environment is yet not set up,
hence m_env is still nullptr until all scripts are loaded
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
The server must have authority about attachments. This commit ignores any player movement packets as long they're attached.
|
| |
|
| |
|
|
|
| |
Co-authored-by: Zughy <4279489-marco_a@users.noreply.gitlab.com>
|
|
|
| |
Co-authored-by: rubenwardy <rw@rubenwardy.com>
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
The callback is only run when a change in HP is to be expected.
Following cases will not trigger the callback:
* Dead player damaged further
* Healing full-health player
* Change of 0 HP
|
|
|
|
| |
(#10485)
|
|
|
|
| |
property (#10443)
|
|
|
|
|
|
| |
Fixes some other third person camera specific attachments.
Implements a single new flag for entities to be forced visible in first person mode.
Old mods do not need to be updated to use the new flag and are fully backwards compatible.
|
|
|
|
|
|
|
| |
This commit clarifies the maximal length of the serialized strings.
It will avoid accidental use of serializeString() when a larger string can be expected.
Removes unused Wide String serialization functions
|
| |
|
| |
|
|
|
|
|
|
| |
Better header sorting by topic
Make UnitSAO-specific parameters private
Skip redundant recursive entity sending code (since ~5.2.0)
|
|
|
|
|
| |
AO_CMD_UPDATE_NAMETAG_ATTRIBUTES was deprecated in
9eee3c3f465c071bb9908749cf48be3c131a1bdf (0.4.14)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Server::overrideDayNightRatio doesn't require to return bool
There is no sense to sending null player, the caller should send a valid object
* Server::init: make private & cleanup
This function is always called before start() and loads some variables which can be loaded in constructor directly.
Make it private and call it directly in start
* Split Server inventory responsibility to a dedicated object
This splits permit to found various historical issues:
* duplicate lookups on player connection
* sending inventory to non related player when a player connects
* non friendly lookups on detached inventories ownership
This reduce the detached inventory complexity and also increased the
lookup performance in a quite interesting way for servers with thousands
of inventories.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
* Optimize getObjectsInsideRadius calls
our previous implementation calls the ActiveObjectMgr to return ids and then lookup those ids in the same map and test each object
Instead now we call the global map to return the pointers directly and we ask filtering when building the list using lamba.
This drop double looping over ranges of active objects (and then filtered one) and drop x lookups on the map regarding the first call results
|
|
|
|
|
|
|
| |
Move LuaEntitySAO to a new dedicated file
Drop TestSAO (useless object)
Drop the old static startup initialized SAO factory, which was pretty useless.
This factory was using a std::map for 2 elements, now just use a simple condition owned by ServerEnvironment, which will be lightweight, that will also drop a one time useful test on each LuaEntitySAO creation. This should reduce server load on massive SAO creation
|
| |
|
| |
|
|
|
|
|
| |
Move serverobject.{cpp,h} to server/serveractiveobject.{cpp,h}
Move UnitSAO class to dedicated files
|
|
|
|
| |
Hide some unnecessarily verbose ones behind --trace or disable them entirely.
Remove duplicate ones. Improve their contents in some places.
|