aboutsummaryrefslogtreecommitdiff
path: root/builtin/game/item.lua
AgeCommit message (Collapse)Author
2016-03-11Introduce "protection_bypass" privilege.Auke Kok
This privilege allows map protection bypassing for server operators and world moderators. Initially I had thought that bypassing protection mods would have been something that could entirely be done inside mods and minetest_game, but the concept of protection is defined in core, in the code of core.is_protected(). I don't feel that it would be logical to introduce a protection concept in core, but not some way around that for server operators to maintain map parts that need fixing, de-griefing or cleanup. Others had noticed the same problems, and proposed a patch to minetest_game. That patch is fine by itself, but it fails to add protection bypass functionality for digging normal nodes and placing nodes. So, instead, we indroduce the new priv "protection_bypass" in core, and modify 'on_place_node' and 'node_dig' to allow bypassing node protections if the player holds this priv. This priv was tested with protector redo by tenplus1. A followup patch to Minetest Game will include allowing special checks for doors, trapdoors, chests in Minetest Game. Protection mods will likely want to mimic the changes in their relevant code sections.
2016-02-11Initialize facedir and wallmounted tables only once.Diego Martinez
This makes the functions a bit faster since they don't have to recreate the tables every invocation, and makes the code more readable. Also, document `wallmounted_to_dir`. The function was implemented but not documented in `lua_api.txt`.
2016-01-07Liquids: Flow into and destroy 'floodable' nodesparamat
Add new node property 'floodable', default false Define "air" as floodable = true in C++ and lua
2015-12-20Fix missing localization for objHybridDog
2015-12-02Add on_secondary_use when right clicking an item in the airAlex Ford
2015-11-12Add the player name to dropped itemsRobert Zenz
The player name is now added in the field "dropped_by" on the created entity.
2015-10-04Added minetest.wallmounted_to_dirFernando Carmona Varo
2015-09-29Some map border related fixesest31
1. Check for entity addition success in spawn_item implementation 2. Check for success in item_drop callback, so that the player doesn't lose the item if they are outside bounds and try to drop it. 3. When existing player joins game, check that their position is inside map bounds. If not, set their position to the return value of findSpawnPos(). 4. Make findSpawnPos() respect the border 2 fixes a lua crash if a player drops an item outside map bounds. 3 fixes an assertion crash if a player leaves when being outside map bounds, and then rejoins.
2015-08-12SAPI: Track last executed mod and include in error messageskwolekr
2015-02-16Fix minetest.item_eat's replace_with_item, fixes #2292rubenwardy
2014-06-10New feature: drop a item instead a stack while...Lord89James
sneaking
2014-05-26Add item eat callbackrubenwardy
2014-05-08Use "core" namespace internallyShadowNinja
2014-05-07Organize builtin into subdirectoriesShadowNinja