diff --git a/mods/MAPGEN/mcl_biomes/init.lua b/mods/MAPGEN/mcl_biomes/init.lua index 392f79038..c4e11a958 100644 --- a/mods/MAPGEN/mcl_biomes/init.lua +++ b/mods/MAPGEN/mcl_biomes/init.lua @@ -2495,9 +2495,145 @@ local function register_seagrass_decoration(grasstype, offset, scale, biomes) end end +local warm_oceans = { + "JungleEdgeM_ocean", + "Jungle_deep_ocean", + "Savanna_ocean", + "MesaPlateauF_ocean", + "Swampland_ocean", + "Mesa_ocean", + "Plains_ocean", + "MesaPlateauFM_ocean", + "MushroomIsland_ocean", + "SavannaM_ocean", + "JungleEdge_ocean", + "MesaBryce_ocean", + "Jungle_ocean", + "Desert_ocean", + "JungleM_ocean", +} +local corals = { + "brain", + "horn", + "bubble", + "tube", + "fire" +} +local function register_coral_decos(ck) + local c = corals[ck] + local noise = { + offset = -0.0085, + scale = 0.002, + spread = {x = 25, y = 120, z = 25}, + seed = 235, + octaves = 5, + persist = 1.8, + lacunarity = 3.5, + flags = "absvalue" + } + minetest.register_decoration({ + deco_type = "schematic", + place_on = {"group:sand","mcl_core:gravel"}, + sidelen = 80, + noise_params = noise, + biomes = warm_oceans, + y_min = OCEAN_MIN, + y_max = -8, + schematic = mod_mcl_structures.."/schematics/mcl_structures_coral_"..c.."_1.mts", + rotation = "random", + flags = "all_floors,force_placement", + }) + minetest.register_decoration({ + deco_type = "schematic", + place_on = {"group:sand","mcl_core:gravel"}, + noise_params = noise, + sidelen = 80, + biomes = warm_oceans, + y_min = OCEAN_MIN, + y_max = -8, + schematic = mod_mcl_structures.."/schematics/mcl_structures_coral_"..c.."_2.mts", + rotation = "random", + flags = "all_floors,force_placement", + }) + + minetest.register_decoration({ + deco_type = "simple", + place_on = {"mcl_ocean:"..c.."_coral_block"}, + sidelen = 16, + fill_ratio = 3, + y_min = OCEAN_MIN, + y_max = 1, + decoration = "mcl_ocean:"..c.."_coral", + biomes = warm_oceans, + flags = "force_placement, all_floors", + height = 1, + height_max = 1, + }) + minetest.register_decoration({ + deco_type = "simple", + place_on = {"mcl_ocean:horn_coral_block"}, + sidelen = 16, + fill_ratio = 7, + y_min = OCEAN_MIN, + y_max = 1, + decoration = "mcl_ocean:"..c.."_coral_fan", + biomes = warm_oceans, + flags = "force_placement, all_floors", + height = 1, + height_max = 1, + }) +end local function register_decorations() + -- Coral Reefs + for k,_ in pairs(corals) do + register_coral_decos(k) + end + minetest.register_decoration({ + deco_type = "simple", + place_on = {"group:sand","mcl_core:gravel"}, + sidelen = 16, + noise_params = noise, + y_min = OCEAN_MIN, + y_max = -5, + decoration = "mcl_ocean:dead_brain_coral_block", + biomes = warm_oceans, + flags = "force_placement", + height = 1, + height_max = 1, + place_offset_y = -1, + }) + + minetest.register_decoration({ + deco_type = "simple", + place_on = {"mcl_ocean:dead_brain_coral_block"}, + sidelen = 16, + fill_ratio = 10, + y_min = OCEAN_MIN, + y_max = 1, + decoration = "mcl_ocean:sea_pickle_1_dead_brain_coral_block", + biomes = warm_oceans, + flags = "force_placement, all_floors", + height = 1, + height_max = 1, + place_offset_y = -1, + }) + --rare CORAl + minetest.register_decoration({ + deco_type = "schematic", + place_on = {"group:sand","mcl_core:gravel"}, + fill_ratio = 0.0001, + sidelen = 80, + biomes = warm_oceans, + y_min = OCEAN_MIN, + y_max = -8, + schematic = mod_mcl_structures.."/schematics/coral_cora.mts", + rotation = "random", + flags = "place_center_x,place_center_z, force_placement", + }) + + -- Large ice spike minetest.register_decoration({ deco_type = "schematic", diff --git a/mods/MAPGEN/mcl_structures/schematics/coral_cora.mts b/mods/MAPGEN/mcl_structures/schematics/coral_cora.mts new file mode 100644 index 000000000..8ee971820 Binary files /dev/null and b/mods/MAPGEN/mcl_structures/schematics/coral_cora.mts differ diff --git a/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_brain_1.mts b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_brain_1.mts new file mode 100644 index 000000000..03e1ddfb6 Binary files /dev/null and b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_brain_1.mts differ diff --git a/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_brain_2.mts b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_brain_2.mts new file mode 100644 index 000000000..f40af2ec3 Binary files /dev/null and b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_brain_2.mts differ diff --git a/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_bubble_1.mts b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_bubble_1.mts new file mode 100644 index 000000000..1111368e8 Binary files /dev/null and b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_bubble_1.mts differ diff --git a/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_bubble_2.mts b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_bubble_2.mts new file mode 100644 index 000000000..c3cf1012e Binary files /dev/null and b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_bubble_2.mts differ diff --git a/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_fire_1.mts b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_fire_1.mts new file mode 100644 index 000000000..fffbfb26f Binary files /dev/null and b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_fire_1.mts differ diff --git a/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_fire_2.mts b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_fire_2.mts new file mode 100644 index 000000000..a55b3995f Binary files /dev/null and b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_fire_2.mts differ diff --git a/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_horn_1.mts b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_horn_1.mts new file mode 100644 index 000000000..03c8f0e85 Binary files /dev/null and b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_horn_1.mts differ diff --git a/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_horn_2.mts b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_horn_2.mts new file mode 100644 index 000000000..8d2ec7f2b Binary files /dev/null and b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_horn_2.mts differ diff --git a/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_tube_1.mts b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_tube_1.mts new file mode 100644 index 000000000..89d08e9ea Binary files /dev/null and b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_tube_1.mts differ diff --git a/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_tube_2.mts b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_tube_2.mts new file mode 100644 index 000000000..cd4372f95 Binary files /dev/null and b/mods/MAPGEN/mcl_structures/schematics/mcl_structures_coral_tube_2.mts differ