Any players which still have leaves in their inventory from before this update would have had those leaves rot if someone were to break any log withing 6 nodes of the leaves if they were placed. This commit adds an `after_place_node` callback which makes sure that any leaves placed by the player, become non-rotting player leaves.
Basically renaming anything related to leaves in the new function to something more broad such as foliage, so vines aren't indirectly considered leaves. An aesthetic change, basically.
Simply put, this commit changes some code so that leaves don't use `param2` to see if they rot or not, and will now use the biome colours.
This commit also makes it so vines do the same (use biome colours).
* Add craftitem for ":mcl_bone_meal:bone_meal" to mcl_dye (temporarily.)
* Add crafting recipe for bone meal.
* Add texture for white dye item.
* Merge craftitem registration for "mcl_dye:white" with generic dyes.
* Add crafting recipe for white dye.
* Add legacy conversion recipe.
* Update dyes table.
* Update translations.
* Update mcl_crimson and sweet berry on_rightclick handlers.
* Update composter output, both as freestanding and to hoppers.
* Update bone block crafting recipes.
* Update tropical fish, cod and salmon mob drops.
* This group is no longer used and is removed from leaves node groups.
* Since it was never added to GROUPS.md, nothing needs changed there.
* Remove the `leafdecay_distance` parameter from node registrations.
* The leaf decay ABM no longer scans all leaves nodes. Now only
"orphaned" leaves are decayed. These nodes are placed by callbacks
in tree trunk nodes upon their destruction.
* This commit also removes the tree trunk node caching system and an
abm throttling mechanism and its associated globalstep function.
* Add "orphaned" leaves nodes, these are copies of the regular leaves
nodes whose sole purpose is to replace leaves nodes when no more tree
trunks are present nearby. The orphaned nodes are swapped in by a
callback on destruction of tree trunk nodes and will be decayed by a
dedicated abm that processes all nodes in `group:leaves_orphan`.
* Add `mcl_core.update_leaves()` function, a `after_destruct` callback
handler for tree trunk nodes. The function finds leaves nodes nearby
destroyed tree trunk nodes and swaps these for orphaned leaves nodes
if no other tree trunk nodes remain near them.
* Add `after_destruct` callbacks to tree trunk node registrations in
mcl_core/nodes_trees.lua and mcl_mangrove/init.lua to update orphaned
leaves.
* Add entry for group `leaves_orphan` to GROUPS.md
* Also add entry for group `leaves` to GROUPS.md (it was missing).
The minetest world is already so small that you can reach world
border from spawn in about 2 hours. I think the regen and fire
resistance are good enough to make them special.
This enables the feature of unsticky pistons. This allows
for some nodes to be unpullable, but otherwise pushable or diggable.
A certain selection of nodes that can never be moved.
And, stops certain entities from being pushed if they shouldn't move.
Along with this change; I've also updated the rules regarding
pushing, and pulling of nodes & objects to be more accurate to MC.
Now allowing for more complex redstone circuits to be built.
If a player wants to make a path when there is no dirt with grass on the
ground it means they need to either have silk touch to collect dirt with
grass or place dirt beside dirt with grass and wait for the grass cover
to spread before they can create the new paths …
Since the former is not possible early in the game and the latter is not
easy, this patch imitates Minecraft 1.17 behaviour; the following nodes
can now be turned into path nodes by right-clicking them with a shovel:
• Dirt (mcl_core:dirt)
• Coarse Dirt (mcl_core:coarse_dirt)
• Dirt with Grass (mcl_core:dirt_with_grass)
• Mycelium (mcl_core:mycelium)
• Podzol (mcl_core:podzol)
A group “path_creation_possible” has been added to mark nodes that can
be turned into a dirt path with a shovel. One obvious objection to that
addition might be that the “dirt” group already exists. Even though all
existing nodes that can be turned into a dirt path do indeed belong to
the “dirt” group, it is not a good idea: Changing what “dirt” means to
“any node that can be turned into a dirt path” would make it harder to
maintain the code.
* Check if node has a definition table before attempting to evaluate its
attributes.
* Define local variable to cache multiple accesses to `registered_nodes[]`
and improve readability.