Add new fungus tree schematics

This commit is contained in:
cora 2022-06-18 14:28:05 +02:00
parent 01eea4ab8a
commit fefb15f2a8
11 changed files with 81 additions and 21 deletions

View File

@ -212,7 +212,7 @@ minetest.register_node("mcl_crimson:stripped_warped_hyphae", {
description = S("Stripped warped hyphae"), description = S("Stripped warped hyphae"),
_doc_items_longdesc = S("The stripped hyphae of a warped fungus"), _doc_items_longdesc = S("The stripped hyphae of a warped fungus"),
_doc_items_hidden = false, _doc_items_hidden = false,
tiles = {"warped_stem_stripped_top.png", "crimson_stem_warped_top.png", "warped_stem_stripped_side.png"}, tiles = {"warped_stem_stripped_top.png", "warped_stem_stripped_top.png", "warped_stem_stripped_side.png"},
paramtype2 = "facedir", paramtype2 = "facedir",
on_place = mcl_util.rotate_axis, on_place = mcl_util.rotate_axis,
groups = {handy = 1, axey = 1, tree = 1, building_block = 1, material_wood = 1}, groups = {handy = 1, axey = 1, tree = 1, building_block = 1, material_wood = 1},
@ -349,7 +349,7 @@ minetest.register_node("mcl_crimson:crimson_hyphae", {
sounds = mcl_sounds.node_sound_wood_defaults(), sounds = mcl_sounds.node_sound_wood_defaults(),
_mcl_blast_resistance = 2, _mcl_blast_resistance = 2,
_mcl_hardness = 2, _mcl_hardness = 2,
_mcl_stripped_variant = stripped_variant, _mcl_stripped_variant = "mcl_crimson:stripped_crimson_hyphae",
}) })
--Stem bark, stripped stem and bark --Stem bark, stripped stem and bark

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1567,7 +1567,7 @@ local function register_dimension_biomes()
}) })
minetest.register_decoration({ minetest.register_decoration({
deco_type = "simple", deco_type = "simple",
place_on = {"mcl_nether:netherrack","mcl_nether:glowstone"}, place_on = {"mcl_nether:netherrack","mcl_nether:glowstone","mcl_blackstone:nether_gold","mcl_nether:quartz_ore","mcl_core:gravel","mcl_nether:soul_sand"},
sidelen = 16, sidelen = 16,
fill_ratio = 10, fill_ratio = 10,
biomes = { "CrimsonForest" }, biomes = { "CrimsonForest" },
@ -1594,7 +1594,7 @@ local function register_dimension_biomes()
}) })
minetest.register_decoration({ minetest.register_decoration({
deco_type = "simple", deco_type = "simple",
place_on = {"mcl_nether:netherrack","mcl_nether:glowstone"}, place_on = {"mcl_nether:netherrack","mcl_nether:glowstone","mcl_blackstone:nether_gold","mcl_nether:quartz_ore","mcl_core:gravel","mcl_nether:soul_sand"},
sidelen = 16, sidelen = 16,
fill_ratio = 10, fill_ratio = 10,
biomes = { "WarpedForest" }, biomes = { "WarpedForest" },
@ -4115,16 +4115,44 @@ local function register_dimension_decorations()
}) })
minetest.register_decoration({ minetest.register_decoration({
deco_type = "schematic", deco_type = "schematic",
name = "mcl_biomes:warped_tree", name = "mcl_biomes:warped_tree1",
place_on = {"mcl_crimson:warped_nylium"}, place_on = {"mcl_crimson:warped_nylium"},
sidelen = 16, sidelen = 16,
fill_ratio = 0.022, fill_ratio = 0.007,
biomes = {"WarpedForest"},
y_min = mcl_vars.mg_lava_nether_max + 1,
y_max = mcl_vars.mg_nether_max - 15,
flags = "all_floors, place_center_x, place_center_z",
schematic = mod_mcl_crimson.."/schematics/warped_fungus_1.mts",
size = {x = 5, y = 11, z = 5},
rotation = "random",
})
minetest.register_decoration({
deco_type = "schematic",
name = "mcl_biomes:warped_tree2",
place_on = {"mcl_crimson:warped_nylium"},
sidelen = 16,
fill_ratio = 0.005,
biomes = {"WarpedForest"}, biomes = {"WarpedForest"},
y_min = mcl_vars.mg_lava_nether_max + 1, y_min = mcl_vars.mg_lava_nether_max + 1,
y_max = mcl_vars.mg_nether_max - 10, y_max = mcl_vars.mg_nether_max - 10,
flags = "all_floors, place_center_x, place_center_z", flags = "all_floors, place_center_x, place_center_z",
schematic = mod_mcl_crimson.."/schematics/warped_mushroom.mts", schematic = mod_mcl_crimson.."/schematics/warped_fungus_2.mts",
size = {x = 5, y = 8, z = 5}, size = {x = 5, y = 6, z = 5},
rotation = "random",
})
minetest.register_decoration({
deco_type = "schematic",
name = "mcl_biomes:warped_tree3",
place_on = {"mcl_crimson:warped_nylium"},
sidelen = 16,
fill_ratio = 0.003,
biomes = {"WarpedForest"},
y_min = mcl_vars.mg_lava_nether_max + 1,
y_max = mcl_vars.mg_nether_max - 14,
flags = "all_floors, place_center_x, place_center_z",
schematic = mod_mcl_crimson.."/schematics/warped_fungus_3.mts",
size = {x = 5, y = 12, z = 5},
rotation = "random", rotation = "random",
}) })
minetest.register_decoration({ minetest.register_decoration({
@ -4177,15 +4205,43 @@ local function register_dimension_decorations()
name = "mcl_biomes:crimson_tree", name = "mcl_biomes:crimson_tree",
place_on = {"mcl_crimson:crimson_nylium"}, place_on = {"mcl_crimson:crimson_nylium"},
sidelen = 16, sidelen = 16,
fill_ratio = 0.022, fill_ratio = 0.008,
biomes = {"CrimsonForest"}, biomes = {"CrimsonForest"},
y_min = mcl_vars.mg_lava_nether_max + 1, y_min = mcl_vars.mg_lava_nether_max + 1,
y_max = mcl_vars.mg_nether_max - 10, y_max = mcl_vars.mg_nether_max - 10,
flags = "all_floors, place_center_x, place_center_z", flags = "all_floors, place_center_x, place_center_z",
schematic = mod_mcl_crimson.."/schematics/crimson_mushroom.mts", schematic = mod_mcl_crimson.."/schematics/crimson_fungus_1.mts",
size = {x = 5, y = 8, z = 5}, size = {x = 5, y = 8, z = 5},
rotation = "random", rotation = "random",
}) })
minetest.register_decoration({
deco_type = "schematic",
name = "mcl_biomes:crimson_tree2",
place_on = {"mcl_crimson:crimson_nylium"},
sidelen = 16,
fill_ratio = 0.006,
biomes = {"CrimsonForest"},
y_min = mcl_vars.mg_lava_nether_max + 1,
y_max = mcl_vars.mg_nether_max - 15,
flags = "all_floors, place_center_x, place_center_z",
schematic = mod_mcl_crimson.."/schematics/crimson_fungus_2.mts",
size = {x = 5, y = 12, z = 5},
rotation = "random",
})
minetest.register_decoration({
deco_type = "schematic",
name = "mcl_biomes:crimson_tree3",
place_on = {"mcl_crimson:crimson_nylium"},
sidelen = 16,
fill_ratio = 0.004,
biomes = {"CrimsonForest"},
y_min = mcl_vars.mg_lava_nether_max + 1,
y_max = mcl_vars.mg_nether_max - 20,
flags = "all_floors, place_center_x, place_center_z",
schematic = mod_mcl_crimson.."/schematics/crimson_fungus_3.mts",
size = {x = 7, y = 13, z = 7},
rotation = "random",
})
minetest.register_decoration({ minetest.register_decoration({
deco_type = "simple", deco_type = "simple",
place_on = {"mcl_crimson:crimson_nylium"}, place_on = {"mcl_crimson:crimson_nylium"},
@ -4321,10 +4377,17 @@ if mg_name ~= "singlenode" then
-- Overworld decorations for v6 are handled in mcl_mapgen_core -- Overworld decorations for v6 are handled in mcl_mapgen_core
local deco_id_crimson_tree =minetest.get_decoration_id("mcl_biomes:crimson_tree") local deco_ids_fungus ={
local deco_id_warped_tree =minetest.get_decoration_id("mcl_biomes:warped_tree") minetest.get_decoration_id("mcl_biomes:crimson_tree1"),
minetest.set_gen_notify({decoration=true}, { deco_id_crimson_tree }) minetest.get_decoration_id("mcl_biomes:crimson_tree2"),
minetest.set_gen_notify({decoration=true}, { deco_id_warped_tree }) minetest.get_decoration_id("mcl_biomes:crimson_tree3"),
minetest.get_decoration_id("mcl_biomes:warped_tree1"),
minetest.get_decoration_id("mcl_biomes:warped_tree2"),
minetest.get_decoration_id("mcl_biomes:warped_tree3")
}
for _,f in pairs(deco_ids_fungus) do
minetest.set_gen_notify({decoration=true}, { f })
end
if deco_id_chorus_plant or deco_id_crimson_tree or deco_id_warped_tree then if deco_id_chorus_plant or deco_id_crimson_tree or deco_id_warped_tree then
mcl_mapgen_core.register_generator("chorus_grow", nil, function(minp, maxp, blockseed) mcl_mapgen_core.register_generator("chorus_grow", nil, function(minp, maxp, blockseed)
if minp.y > -26900 then return end if minp.y > -26900 then return end
@ -4341,11 +4404,10 @@ if mg_name ~= "singlenode" then
end end
end end
if minp.y > mcl_vars.mg_nether_max then return end if minp.y > mcl_vars.mg_nether_max then return end
for _, pos in ipairs(gennotify["decoration#"..deco_id_crimson_tree] or {}) do for _,f in pairs(deco_ids_fungus) do
for _, pos in ipairs(gennotify["decoration#"..f] or {}) do
minetest.fix_light(vector.offset(pos,-8,-8,-8),vector.offset(pos,8,8,8)) minetest.fix_light(vector.offset(pos,-8,-8,-8),vector.offset(pos,8,8,8))
end end
for _, pos in ipairs(gennotify["decoration#"..deco_id_warped_tree] or {}) do
minetest.fix_light(vector.offset(pos,-8,-8,-8),vector.offset(pos,8,8,8))
end end
end) end)
end end

View File

@ -76,10 +76,8 @@ mcl_structures.register_structure("geode",{
flags = "absvalue", flags = "absvalue",
}, },
flags = "place_center_x, place_center_z, force_placement", flags = "place_center_x, place_center_z, force_placement",
biomes = ocean_biomes,
y_max = -24, y_max = -24,
y_min = mcl_vars.mg_overworld_min, y_min = mcl_vars.mg_overworld_min,
filenames = schems,
y_offset = function(pr) return pr:next(-4,-2) end, y_offset = function(pr) return pr:next(-4,-2) end,
place_func = function(pos,def,pr) place_func = function(pos,def,pr)
local p = vector.new(pos.x + pr:next(-30,30),pos.y,pos.z + pr:next(-30,30)) local p = vector.new(pos.x + pr:next(-30,30),pos.y,pos.z + pr:next(-30,30))