Prevents possible item duplication with other mods. Matches the behavior of the default `__builtin:item`.
See also https://github.com/mt-mods/pipeworks/issues/130
Reviewed-on: VoxeLibre/VoxeLibre#4530
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: OgelGames <ogelgames@noreply.git.minetest.land>
Co-committed-by: OgelGames <ogelgames@noreply.git.minetest.land>
Ensuring that tables storing player data are initialized before being used.
Reviewed-on: MineClone2/MineClone2#4246
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: teknomunk <teknomunk@protonmail.com>
Co-committed-by: teknomunk <teknomunk@protonmail.com>
This PR fixes items at flowing_water edges not falling down holes.
As well as fixing items not sliding on slippery nodes like ice.
And, allows for movement starting at the source block of a
flowing water node. While ensuring regular water_source blocks
do not bug out.
* Added another special case to the item entity registration for
lodestone compasses, without this a dropped lodestone compass would
turn into a regular compass on being dropped.
* Update the compass and lodestone compass frame number to be the
stereotype frame.
Some items, like shulkers or books, can have so much metadata that the
corresponding item entity can not be serialized by the Minetest engine.
Without this patch, dropping such an item and then moving away crashes
Minetest, as it can not serialize the entity with serializeString16()
when unloading a map block.
The patch resets the overlong metadata of non-serializable item entities.
This avoids a crash and makes it possible to retrieve a “sanitized” item
without metadata when the mapblock containing the item entity is reloaded.
Originally sfan5 guessed the maximum possible item entity serialization size
that would not lead to a crash as 65530 bytes, but anon5 calculated it to be
actually 65487 bytes. This has been experimentally verified by erlehmann.