From 2272753652998a45f12dead96f1d4f92b35c0acf Mon Sep 17 00:00:00 2001 From: kay27 Date: Thu, 6 May 2021 00:41:20 +0400 Subject: [PATCH] [mapgen] [mcl_ocean_monument] Reorder check loops to make it work faster, add random rotation --- mods/MAPGEN/mcl_ocean_monument/init.lua | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/mods/MAPGEN/mcl_ocean_monument/init.lua b/mods/MAPGEN/mcl_ocean_monument/init.lua index 385e342df..8b34f2c6c 100644 --- a/mods/MAPGEN/mcl_ocean_monument/init.lua +++ b/mods/MAPGEN/mcl_ocean_monument/init.lua @@ -1,3 +1,6 @@ + +-- Check it: `/tp 14958,8,11370` @ world seed `1` + local mcl_mapgen_get_far_node = mcl_mapgen.get_far_node local minetest_log = minetest.log local minetest_place_schematic = minetest.place_schematic @@ -14,9 +17,9 @@ mcl_mapgen.register_chunk_generator(function(minp, maxp, seed) local x, z = minp.x, minp.z local pr = PseudoRandom(seed) for i = 1, pr:next(10,100) do - local pos = {x=pr:next(0,79)+x, y=1, z=pr:next(0,79)+z} + local pos = {x=pr:next(15,64)+x, y=pr:next(0,25)-25, z=pr:next(15,64)+z} local node_name = mcl_mapgen_get_far_node(pos).name - if node_name ~= water and node_name ~= ice then return end + if node_name ~= water then return end end for i = 1, pr:next(10,100) do local pos = {x=pr:next(0,79)+x, y=2, z=pr:next(0,79)+z} @@ -24,16 +27,15 @@ mcl_mapgen.register_chunk_generator(function(minp, maxp, seed) if node_name ~= air then return end end for i = 1, pr:next(10,100) do - local pos = {x=pr:next(15,64)+x, y=pr:next(0,25)-25, z=pr:next(15,64)+z} + local pos = {x=pr:next(0,79)+x, y=1, z=pr:next(0,79)+z} local node_name = mcl_mapgen_get_far_node(pos).name - if node_name ~= water then return end + if node_name ~= water and node_name ~= ice then return end end --- minetest_place_schematic(minp, path, tostring(pr:next(0,3)*90), nil, true) - minetest_place_schematic(minp, path, 0, nil, true) + minetest_place_schematic(minp, path, tostring(pr:next(0,3)*90), nil, true) minetest_log("action", "[mcl_ocean_monument] Placed at " .. minetest_pos_to_string(minp)) - ---- TODO: SET UP SPECIAL NODES... + ---- TODO: SET UP SOME NODES? end, mcl_mapgen.priorities.OCEAN_MONUMENT)