From 137179ac8e4e55e8098d37b549f35e6007cb1d4e Mon Sep 17 00:00:00 2001 From: FossFanatic Date: Thu, 29 Dec 2022 14:13:50 +0000 Subject: [PATCH] revert 3afb42b2f771e9bd33f5e15cd7bd7fb9117b9480 revert Add a LBM to fix grass palette indexes on older worlds --- mods/MAPGEN/mcl_mapgen_core/init.lua | 53 ++-------------------------- 1 file changed, 2 insertions(+), 51 deletions(-) diff --git a/mods/MAPGEN/mcl_mapgen_core/init.lua b/mods/MAPGEN/mcl_mapgen_core/init.lua index 1ed97555f..51604b38f 100644 --- a/mods/MAPGEN/mcl_mapgen_core/init.lua +++ b/mods/MAPGEN/mcl_mapgen_core/init.lua @@ -289,27 +289,6 @@ local function set_palette(minp,maxp,data2,area,biomemap,nodes) return lvm_used end -local function set_palette(minp,maxp,data2,area,biomemap,nodes) -- Like set_palette, but to fix already set palletes. - -- Flat area at y=0 to read biome 3 times faster than 5.3.0.get_biome_data(pos).biome: 43us vs 125us per iteration: - if not biomemap then return end - local aream = VoxelArea:new({MinEdge={x=minp.x, y=0, z=minp.z}, MaxEdge={x=maxp.x, y=0, z=maxp.z}}) - local nodes = minetest.find_nodes_in_area(minp, maxp, nodes) - for n=1, #nodes do - local n = nodes[n] - local p_pos = area:index(n.x, n.y, n.z) - local b_pos = aream:index(n.x, 0, n.z) - local bn = minetest.get_biome_name(biomemap[b_pos]) - if bn then - local biome = minetest.registered_biomes[bn] - if biome and biome._mcl_biome_type then - data2[p_pos] = biome._mcl_grass_palette_index - lvm_used = true - end - end - end - return lvm_used -end - -- Below the bedrock, generate air/void local function world_structure(vm, data, data2, emin, emax, area, minp, maxp, blockseed) local biomemap --ymin, ymax @@ -370,8 +349,8 @@ local function block_fixes(vm, data, data2, emin, emax, area, minp, maxp, blocks local lvm_used = false local pr = PseudoRandom(blockseed) if minp.y <= mcl_vars.mg_overworld_max and maxp.y >= mcl_vars.mg_overworld_min then - -- Set param2 (=color) of nodes that currently use the grass colour palette. - lvm_used = set_palette(minp,maxp,data2,area,biomemap,{"mcl_core:dirt_with_grass", "mcl_flowers:tallgrass", "mcl_flowers:double_grass", "mcl_flowers:double_grass_top", "mcl_flowers:fern", "mcl_flowers:double_fern", "mcl_flowers:double_fern_top", "mcl_core:reeds", "mcl_core:dirt_with_grass_snow"}) + -- Set param2 (=color) of sugar cane and grass + lvm_used = set_palette(minp,maxp,data2,area,biomemap,{"mcl_core:reeds","mcl_core:dirt_with_grass","mcl_core:dirt_with_grass_snow"}) end return lvm_used end @@ -438,31 +417,3 @@ mcl_mapgen_core.register_generator("structures",nil, function(minp, maxp, blocks end return false, false, false end, 100, true) - -local DEFAULT_INDEX = 0 -minetest.register_lbm({ - label = "Fix grass palette indexes", - name = "mcl_mapgen_core:fix_grass_palette_indexes", - nodenames = {"mcl_core:dirt_with_grass", "mcl_flowers:tallgrass", "mcl_flowers:double_grass", "mcl_flowers:double_grass_top", "mcl_flowers:fern", "mcl_flowers:double_fern", "mcl_flowers:double_fern_top", "mcl_core:reeds", "mcl_core:dirt_with_grass_snow"}, - run_at_every_load = true, - action = function(pos, node) - local biome_data = minetest.get_biome_data(pos) - if biome_data then - local biome = biome_data.biome - local biome_name = minetest.get_biome_name(biome) - local reg_biome = minetest.registered_biomes[biome_name] - if reg_biome then - node.param2 = reg_biome._mcl_grass_palette_index - -- Fall back to default palette index - if not node.param2 then - node.param2 = DEFAULT_INDEX - end - minetest.set_node(pos, node) - return - end - end - node.param2 = DEFAULT_INDEX - minetest.set_node(pos, node) - return - end, -})