diff --git a/mods/ITEMS/mcl_ocean/kelp.lua b/mods/ITEMS/mcl_ocean/kelp.lua index a0a2d76d2..0049499a5 100644 --- a/mods/ITEMS/mcl_ocean/kelp.lua +++ b/mods/ITEMS/mcl_ocean/kelp.lua @@ -384,8 +384,16 @@ function kelp.remove_kelp_below_structure(minp, maxp) local kelp_node = core.get_node(kelp_pos) -- Convert kelp back to normal node - kelp_node.name = core.registered_nodes[kelp_node.name].node_dig_prediction - core.swap_node(kelp_pos, kelp_node) + local dig_pos,_,new_height = kelp.find_unsubmerged(kelp_pos, kelp_node) + if dig_pos then + new_height = new_height - 1 + if new_height <= 0 then + kelp_node.name = core.registered_nodes[kelp_node.name].node_dig_prediction + else + kelp_node.param2 = 16 * new_height + end + core.swap_node(kelp_pos, kelp_node) + end end end diff --git a/mods/MAPGEN/mcl_biomes/init.lua b/mods/MAPGEN/mcl_biomes/init.lua index 0d890a37b..4c3a3787c 100644 --- a/mods/MAPGEN/mcl_biomes/init.lua +++ b/mods/MAPGEN/mcl_biomes/init.lua @@ -3460,8 +3460,8 @@ local corals = { local function clear_kelp(t, minp, maxp, blockseed) for _,pos in pairs(t) do - local pos_minp = vector.offset(pos, -4, -4, -4) - local pos_maxp = vector.offset(pos, 4, 2, 4) + local pos_minp = vector.offset(pos, -8, -4, -8) + local pos_maxp = vector.offset(pos, 8, 2, 8) mcl_ocean.kelp.remove_kelp_below_structure(pos_minp, pos_maxp) end end diff --git a/mods/MAPGEN/mcl_structures/shipwrecks.lua b/mods/MAPGEN/mcl_structures/shipwrecks.lua index 67a432818..e90dce275 100644 --- a/mods/MAPGEN/mcl_structures/shipwrecks.lua +++ b/mods/MAPGEN/mcl_structures/shipwrecks.lua @@ -173,8 +173,8 @@ mcl_structures.register_structure("shipwreck",{ } }, after_place = function(pos) - local minp = vector.offset(pos, -10, -4, 10) - local maxp = vector.offset(pos, 10, 2, 10) + local minp = vector.offset(pos, -20, -8, 20) + local maxp = vector.offset(pos, 20, 2, 20) mcl_ocean.kelp.remove_kelp_below_structure(minp, maxp) end, }) @@ -211,8 +211,8 @@ mcl_structures.register_structure("ocean_temple",{ mcl_structures.spawn_mobs("mobs_mc:guardian_elder",spawnon,p1,p2,pr,1,true) mcl_structures.construct_nodes(p1,p2,{"group:wall"}) - local minp = vector.offset(p, -10, -4, 10) - local maxp = vector.offset(p, 10, 2, 10) + local minp = vector.offset(p, -20, -4, 20) + local maxp = vector.offset(p, 20, 4, 20) mcl_ocean.kelp.remove_kelp_below_structure(minp, maxp) end, loot = {