Browse Source

Update nodes papyrus can grow on, include default:dry_dirt (#2705)

Fixes papyrus not growing on savanna dirt.
Also updates the nodes papyrus can grow on, which were incorrect for a long time.
Paramat 3 years ago
parent
commit
b2d0f0ac8d
1 changed files with 17 additions and 2 deletions
  1. 17 2
      mods/default/functions.lua

+ 17 - 2
mods/default/functions.lua

@@ -210,7 +210,12 @@ end
 function default.grow_papyrus(pos, node)
 	pos.y = pos.y - 1
 	local name = minetest.get_node(pos).name
-	if name ~= "default:dirt_with_grass" and name ~= "default:dirt" then
+	if name ~= "default:dirt" and
+			name ~= "default:dirt_with_grass" and
+			name ~= "default:dirt_with_dry_grass" and
+			name ~= "default:dirt_with_rainforest_litter" and
+			name ~= "default:dry_dirt" and
+			name ~= "default:dry_dirt_with_dry_grass" then
 		return
 	end
 	if not minetest.find_node_near(pos, 3, {"group:water"}) then
@@ -247,7 +252,17 @@ minetest.register_abm({
 minetest.register_abm({
 	label = "Grow papyrus",
 	nodenames = {"default:papyrus"},
-	neighbors = {"default:dirt", "default:dirt_with_grass"},
+	-- Grows on the dirt and surface dirt nodes of the biomes papyrus appears in,
+	-- including the old savanna nodes.
+	-- 'default:dirt_with_grass' is here only because it was allowed before.
+	neighbors = {
+		"default:dirt",
+		"default:dirt_with_grass",
+		"default:dirt_with_dry_grass",
+		"default:dirt_with_rainforest_litter",
+		"default:dry_dirt",
+		"default:dry_dirt_with_dry_grass",
+	},
 	interval = 14,
 	chance = 71,
 	action = function(...)