- Dec 20, 2018
-
-
Ryan Nolan authored
Allow mods such as protection mods to over ride on_rightclick. Usecase is creating shared doors without the need for keys.
-
- Nov 28, 2018
-
-
rubenwardy authored
-
- Oct 09, 2018
-
-
random-geek authored
-
- Oct 04, 2018
-
-
Paramat authored
All stair/slab nodes with parent nodes that are rotatable (wood and bricks) are reverted to not having world-aligned textures, to fix the breakage of rotated stair/slab appearence in worlds. Update, and add missing documentation to, game_api.txt.
-
- Aug 28, 2018
-
-
Paramat authored
-
- Jul 13, 2018
-
-
TumeniNodes authored
Replaces 'bush' in snowy grassland.
-
- Jun 19, 2018
-
-
bell07 authored
Use a new table beds.bed_position to check if a bed is in use.
-
- Mar 28, 2018
-
-
Andrew Ward authored
-
- Mar 13, 2018
-
-
Paramat authored
-
- Feb 20, 2018
-
-
Tim authored
Avoid hard-coded player inventory lists. Expose `bones.player_inventory_lists` for mods to look up or change, which player inventory lists are being dropped or placed into bones.
-
- Jan 02, 2018
-
-
MarkuBu authored
-
- Nov 27, 2017
-
-
ForbiddenJ authored
-
- Nov 06, 2017
-
-
paramat authored
Correct the collisionbox height.
-
- Oct 27, 2017
-
-
sfan5 authored
-
- Oct 10, 2017
-
-
tenplus1 authored
This adds def, def.radius and def.damage_radius defaults to the tnt.boom() function if they aren't specified on call.
-
- Aug 26, 2017
-
-
tenplus1 authored
Add 'explode_centre' flag which when false explodes as normal and when true runs on_blast on centre node as well as dropping items.
-
- Aug 18, 2017
-
-
tenplus1 authored
-
- Aug 09, 2017
-
-
paramat authored
Split some long lines. Some nearby code cleanup.
-
- Aug 06, 2017
-
-
paramat authored
-
- Aug 01, 2017
-
-
rubenwardy authored
-
- Jul 16, 2017
-
-
SmallJoker authored
-
- Jul 02, 2017
-
-
DS-Minetest authored
-
- May 01, 2017
-
-
Fernando Carmona Varo authored
The previous behaviour is kept as fallback for compatibility, for when the on_ignite is not defined in the node.
-
- Apr 12, 2017
-
-
paramat authored
Bush saplings grow in half the time of tree saplings. Bushes do not need 'from sapling' schematic variants because only the stem node is force-placed in the mapgen schematic, so only the sapling is force-replaced. Bush leaves drop saplings with a rarity that ensures at least 1 sapling per bush on average.
-
paramat authored
Also delete nyancat API documentation from game_api.txt.
-
- Feb 25, 2017
-
-
MarkuBu authored
This implements a node-timer based leafdecay mechanism, and exposes an API to use it in mods. The API is documented in game_api.txt. `default.register_leafdecay(leafdecaydef)` `leafdecaydef` is a table, with following members: { trunks = { "default:tree"}, -- nodes considered trunks leaves = { "default:leaves", "default:apple"}, -- nodes considered leaves radius = 3, -- activates leafdecay this far from the trunk } The algorithm will drop `leaves` items in the area if no `trunks` are found in the `trunk_radius` sized area around the position of the leaf. If a node listed in `leaves` has a group `leafdecay_drop > 0`, then the item is dropped, otherwise the item is removed but not dropped. The algorithm also implements a value `default.leafdecay_speed` (default 15) which can be modified to increase or decrease of the leaf decay. The algorithm will vary the actual speed a bit to introduce randomness. Leaf decay is randomized by 0.1 seconds to reduce the chance that decay happens many times on the same second interval. This requires nodetimer_interval to be set to values lower than 1.0 to have an effect. The leaves will decay between 2 and 10 seconds after digging the trunk, and happen at non-integer second intervals. -- The API was added by sofar.
-
- Feb 11, 2017
-
-
rubenwardy authored
-
- Jan 26, 2017
-
-
rubenwardy authored
-
- Dec 05, 2016
-
-
rubenwardy authored
Also sets creative:all as default inventory page Fixes #1423
-
- Nov 27, 2016
-
-
rubenwardy authored
-
- Nov 25, 2016
-
-
Auke Kok authored
This code adds the key concept to minetest_game, and integrates it with lockable nodes. Currently supported lockable items are the Steel Door, the Steel Trapdoor, and the Locked Chest. The goal of this modification is to introduce a fine-grained multi- player permission system that is intuitive and usable without any console or chat commands, and doesn't require extra privileges to be granted or setup. Keys can also physically be conveyed to other players, adding to gameplay and adding some personality that is preferable to console commands or editing formspecs. A skeleton key can be crafted with 1 gold ingot. Skeleton keys can then be matched to a lockable node by right-clicking the skeleton key on a lockable node, which changes the skeleton key to a "key". Gold was chosen as it's currently a not-so very useful item, and therefore it's likely that players have some, but aren't really using it for any purpose. This key can subsequently used by any player to open or access that lockable node, including retrieving items from Locked Chests, or putting items in them. They key is programmed to fit only the particular locked node it is programmed to. This is achieved by storing a secret value in both key and locked node. If this secret value doesn't match, the key will not open the locked node. This allows many keys to be created for one chest or door, but a key will only fit one node ever. The secrets are stored in node, and item meta for the key. If a locked node is removed, all keys that opened it are no longer valid. Even if a new door/chest is placed in exactly the same spot, the old keys will no longer fit that node. Keys can be smelted back in gold ingots if they are no longer useful. The method of storing a secret in nodemeta and itemstackmeta is secure as there is no way for the client to create new items on the server with a particular secret metadata value. Even if you could possible create such an itemstack on the client, the server does not ever read itemstackmeta from a client package. The patch adds an API that allows other nodes and nodes added by mods to use the same keys as well. The method how to implement this is described in game_api.txt. The mod should add 2 callbacks to it's node definition. Example code is given. Textures are from PixelBOX, thanks to Gambit.
-
- Nov 21, 2016
-
-
Auke Kok authored
This is all the working code from SmallJoker's boost_cart, poored into a more suitable form for minetest_game. - Mesecons and moreores stuff was removed entirely. - Textures were all renamed and moved out of default/ - Updated license, readme.txt, attribution - Changed code license to MIT, left artwork at CC0 - removed default:rail and made aliases for it - :carts:rail is now carts:rail. - localized entity def - removed copper rail entirely - startstop rail was removed, as well as detector rail - remodeled to b3d using stujones11 excellent blend model, but sizes of cart adjusted to make pixel sizes consistent (0.625) everywhere. - slightly more complex texture map for the cart (front/side visibly different) - rail parameters are passed as a separate def table, and stored in a private list. This avoids having to call `get_meta` on every node. In return, we need the node name, though. - adds metal sounds (based on default metal sound function) and cart moving sound. - reduced cart speeds to max 7, 5 by pushing. - Added on_step() rail event handler, gets called when a cart is on a rail. - Added various rebased updates from upstream (thanks Krock) - Included a fix that removes the 'reverse jiggle' when stopping. - Included reworked textures by sofar. The mod namespace is still public, but I'm NOT declaring it an API. I'd rather see it localized instead, for now. Any public interface in this code is *experimental* at best, and should be considered non-stable and unsupported for now.
-
- Nov 07, 2016
-
-
Fernando Carmona Varo authored
Add on_ignite functions to tnt, gunpowder, coalblock.
-
- Nov 02, 2016
-
-
Fernando Carmona Varo authored
The purpose of this is to allow mods to be able to interact (e.g. fill up) an empty bucket when it is used to punch a node that's not a liquid source or when punching a custom entity (e.g. milking a cow).
-
- Oct 25, 2016
-
-
LNJ authored
-
- Oct 12, 2016
-
-
paramat authored
River water needs to be 'liquid_renewable = false' to avoid a mess caused by spreading of sources, however picking it up with a bucket then creates a hole in the river. Allow a 'force-renew' of the source node if it has a source neighbour.
-
bas080 authored
Handy for when modders want to use these definitions to extend or add to the mod
-
- Oct 10, 2016
-
-
tenplus1 authored
Pass nodename to tnt.burn function where possible to reduce use of 'get_node'. Change 'ipairs' to 'pairs'. Use 'nodeupdate_single(pos)' instead of 'nodeupdate(pos)' to avoid every node triggering recursion, the loop itself takes the place of recursion and works upwards through horizontal planes as required.
-
- Sep 10, 2016
-
-
Auke Kok authored
I've rewritten this to use connected nodeboxes, but with a caveat. In order to make flat nodes look better, I'm keeping one non-connected pane that is flat around to convert flat sections to the flat nodes instead of connected, as these look better and are easier to work with. Once more sides are needed we convert the panes on the fly to connected nodes and recalculate the shape. We don't paint any of the half-panes that the previous generation of xpanes did. There's no need and it's harder to work with. Updating the nodes also seems more natural and placement and removal works straight forward. The conversion of old panes relies on an LBM, and does a reasonable conversion job, but it's not exact, since the panes behave slightly different now. The game API documentation was wrong to begin with. We discard param nr. 2 of the API entirely, and correct the tile usage text.
-
- Aug 05, 2016
-
-
Tim authored
Other screwdriver mods, or mods that cause rotation, might operate without the screwdriver mod loaded and have `screwdriver.disallow` unavailable. This allows nodes to default to full-disallow rather than full-rotation in such a situation.
-