mcl_mapgen_core: Fix check for wrong mod.

This commit is contained in:
Daniel Cassidy 2022-01-06 02:10:53 +00:00
parent 2bdaa77932
commit 7c72ce1d0d
1 changed files with 142 additions and 130 deletions

View File

@ -28,7 +28,9 @@ minetest.register_alias("mapgen_clay", "mcl_core:clay")
minetest.register_alias("mapgen_lava_source", "air") -- Built-in lava generator is too unpredictable, we generate lava on our own minetest.register_alias("mapgen_lava_source", "air") -- Built-in lava generator is too unpredictable, we generate lava on our own
minetest.register_alias("mapgen_cobble", "mcl_core:cobble") minetest.register_alias("mapgen_cobble", "mcl_core:cobble")
minetest.register_alias("mapgen_mossycobble", "mcl_core:mossycobble") minetest.register_alias("mapgen_mossycobble", "mcl_core:mossycobble")
minetest.register_alias("mapgen_junglegrass", "mcl_flowers:fern") if minetest.get_modpath("mcl_flowers") then
minetest.register_alias("mapgen_junglegrass", "mcl_flowers:fern")
end
minetest.register_alias("mapgen_stone_with_coal", "mcl_core:stone_with_coal") minetest.register_alias("mapgen_stone_with_coal", "mcl_core:stone_with_coal")
minetest.register_alias("mapgen_stone_with_iron", "mcl_core:stone_with_iron") minetest.register_alias("mapgen_stone_with_iron", "mcl_core:stone_with_iron")
minetest.register_alias("mapgen_desert_sand", "mcl_core:sand") minetest.register_alias("mapgen_desert_sand", "mcl_core:sand")
@ -719,6 +721,13 @@ local function register_mgv6_decorations()
num_spawn_by = 1, num_spawn_by = 1,
}) })
-- Hack to make sure certain items only spawn in jungles
local spawn_by_in_jungle = { "mcl_core:jungletree" }
if minetest.get_modpath("mcl_flowers") then
table.insert(spawn_by_in_jungle, "mcl_flowers:fern")
end
if minetest.get_modpath("mcl_flowers") then
-- Doubletall grass -- Doubletall grass
minetest.register_decoration({ minetest.register_decoration({
deco_type = "schematic", deco_type = "schematic",
@ -756,7 +765,7 @@ local function register_mgv6_decorations()
}, },
}, },
-- v6 hack: This makes sure large ferns only appear in jungles -- v6 hack: This makes sure large ferns only appear in jungles
spawn_by = { "mcl_core:jungletree", "mcl_flowers:fern" }, spawn_by = spawn_by_in_jungle,
num_spawn_by = 1, num_spawn_by = 1,
place_on = {"group:grass_block_no_snow"}, place_on = {"group:grass_block_no_snow"},
@ -832,6 +841,7 @@ local function register_mgv6_decorations()
y_max = 0, y_max = 0,
rotation = "random", rotation = "random",
}) })
end
-- Pumpkin -- Pumpkin
minetest.register_decoration({ minetest.register_decoration({
@ -867,7 +877,7 @@ local function register_mgv6_decorations()
persist = 0.6 persist = 0.6
}, },
-- Small trick to make sure melon spawn in jungles -- Small trick to make sure melon spawn in jungles
spawn_by = { "mcl_core:jungletree", "mcl_flowers:fern" }, spawn_by = spawn_by_in_jungle,
num_spawn_by = 1, num_spawn_by = 1,
y_min = 1, y_min = 1,
y_max = 40, y_max = 40,
@ -875,6 +885,7 @@ local function register_mgv6_decorations()
}) })
-- Tall grass -- Tall grass
if minetest.get_modpath("mcl_flowers") then
minetest.register_decoration({ minetest.register_decoration({
deco_type = "simple", deco_type = "simple",
place_on = {"group:grass_block_no_snow"}, place_on = {"group:grass_block_no_snow"},
@ -907,6 +918,7 @@ local function register_mgv6_decorations()
y_max = mcl_vars.overworld_max, y_max = mcl_vars.overworld_max,
decoration = "mcl_flowers:tallgrass", decoration = "mcl_flowers:tallgrass",
}) })
end
-- Seagrass and kelp -- Seagrass and kelp
if minetest.get_modpath("mcl_ocean") then if minetest.get_modpath("mcl_ocean") then
@ -1004,7 +1016,7 @@ local function register_mgv6_decorations()
-- Wet Sponge -- Wet Sponge
-- TODO: Remove this when we got ocean monuments -- TODO: Remove this when we got ocean monuments
if minetest.get_modpath("mcl_cocoas") then if minetest.get_modpath("mcl_sponges") then
minetest.register_decoration({ minetest.register_decoration({
deco_type = "simple", deco_type = "simple",
decoration = "mcl_sponges:sponge_wet", decoration = "mcl_sponges:sponge_wet",