| Commit message (Collapse) | Author | Age |
|
|
| |
There are plenty of lines longer than 80 characters, and spliting the function declaration across two lines can be momentarily confusing.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Player data to Database
Add player data into databases (SQLite3 & PG only)
PostgreSQL & SQLite: better POO Design for databases
Add --migrate-players argument to server + deprecation warning
* Remove players directory if empty
|
|
|
|
|
|
|
|
| |
The 'sneak glitch' physics override now controls whether a player can
use the new move code replications of the old sneak side-effects:
sneak ladders and 2 node sneak jump. This completes our intention to
replicate the old sneak side-effects in new code and provide them as
an option that is disabled by default.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This callback is called if a liquid definitely floods a non-air
node on the map. The callback arguments are (pos, oldnode, newnode)
and can return a `bool` value indicating whether flooding the
node should be cancelled (`return true` will prevent the node
from flooding).
Documentation is added, the callback function was tested with a
modified minetest_game.
Note that `return true` will likely cause the node's `on_flood()`
callback to be called every second until the node gets removed,
so care must be taken to prevent many callbacks from using this
return value. The current default liquid update interval is 1.0
seconds, which isn't unmanageable.
The larger aim of this patch is to remove the lava cooling ABM,
which is a significant cost to idle servers that have lava on their
map. This callback will be much more efficient.
|
|
|
|
| |
This commit adds node overlays, which are tiles that are drawn on top of
other tiles.
|
|
|
|
|
|
|
|
|
| |
This is not really different from the light update of a voxel
manipulator. This update does not assume that the lighting was correct
before, therefore it is useful for correction.
Also expose this function to the Lua API for light correction, and
allow voxel manipulators not to update the light.
|
| |
|
|
|
|
|
|
| |
Temporary option for the old move code for specific old sneak behaviour.
Enabled by setting the added 'new move' physics override to false.
By default 'new move' is true.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Adds the possibility to colorize item stacks based on their metadata.
In the item/node definition you can specify palette (an image file)
and color (fallback color if the item has no palette or metadata).
Then you can add palette_index to the metadata.
Dropped itemstacks with different colors do not merge.
|
|
|
| |
Previously it was erroneously documented that it would save them as null.
|
| |
|
|
|
|
|
|
|
| |
Add the missing paramtype2 for param2 controlling the liquid level
inside the glasslike_framed drawtype.
Add missing documentation of the feature to lua_api.txt.
Update and improve comments for drawtype enumerations in nodedef.h.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This commit introduces a new bulk node lighting algorithm to minimize
lighting bugs during l-system tree generation, schematic placement and
non-mapgen-object lua voxelmanip light calculation.
If the block above the changed area is not loaded, it gets loaded to avoid
lighting bugs.
Light is updated as soon as write_to_map is called on a voxel manipulator,
therefore update_map does nothing.
|
|
|
|
|
|
|
|
| |
* Add minetest.spawn_falling_node(pos)
* lua_api.txt: Add minetest.spawn_falling_node(pos)
* Update minetest.spawn_falling_node(pos)
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
* mod can create a ModMetadata object where store its values and retrieve it.
* Modmetadata object can only be fetched at mod loading
* Save when modified using same time as map interval or at server stop
* add helper function to get mod storage path
* ModMetadata has exactly same calls than all every other Metadata
|
| |
|
| |
|
|
|
|
| |
Allows colorizing of textures using a color multiplication method.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* This backend permit mods to store extra players attributes to a common interface.
* Add the obj:set_attribute(attr, value) Lua call
* Add the obj:get_attribute(attr) Lua call
Examples:
* player:set_attribute("home:home", "10,25,-78")
* player:get_attribute("default:mana")
Attributes are saved as a json in the player file in extended_attributes
key
They are saved only if a modification on the attributes occurs and loaded
when emergePlayer is called (they are attached to PlayerSAO).
|
|
|
|
|
| |
These are needed to go from things like entity yaw to a vector
and vice versa.
|
|
|
|
|
| |
This function returns the box corners of the smallest box
that includes the two given coordinates.
|
|
|
|
|
|
| |
- Increase ContentFeatures serialization version
- Color property and palettes for nodes
- paramtype2 = "color", "colored facedir" or "colored wallmounted"
|
|
|
|
| |
Send texture modifier to clients connecting later too
|
|
|
|
|
| |
Introduces two functions to unregister and override chatcommands.
minetest.unregister_chatcommand("<name>") and
minetest.override_chatcommand("<name>", {<redifinition>})
|
|
|
|
|
| |
This is implemented by reusing and extending the
TileAnimation code for the methods used by particles.
|
| |
|
| |
|
|
|
|
|
| |
* Add staticdata parameter to add_entity
* Add add_entity_with_staticdata to core.features
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
"[sheet:WxH:X,Y" assumes the base image is a tilesheet with W*H tiles
on it and crops to the tile at position X,Y. Basically it works
like "[verticalframe" but in 2D.
For testing, I combined the four default_chest images into one.
|
|
|
|
|
|
|
| |
* Calculate maximum interact distance from wielded tool
* New "interacted_while_dead" cheat_type for the Lua API
* Disallow dropping items while dead
* Move player to spawn before resurrecting them
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Schematics can already be placed with a param2 value, but not
simple 1-node plant decorations of the simple type.
This adds a `param2` field to the simple deco type that is
checked to be between 0 and 255, and put to the placed node
at mapgen.
This can be used to put a degrotate value in, or e.g. a fill
value for leveltype nodes, or a place_param2 value at mapgen
placement, or vary the shape of meshoptions plantlike drawtype.
|
|
|
| |
Fixes https://github.com/minetest/minetest/issues/4832
|
| |
|
| |
|
|
|
|
|
|
|
| |
This combats the problem of sending the hundreds of
"creative" / "armor" or whatever detached invs that
exist on popular servers to each and every player
on join or on change of said invs.
|
| |
|
|
|
| |
This will only happen if the formname matches or if formname is "".
|