From 3c04ce7f7dbf1aad8a5bfc81dda8080d922b17d4 Mon Sep 17 00:00:00 2001 From: FaceDeer Date: Tue, 21 Mar 2017 23:34:44 -0600 Subject: [PATCH] adapt to stalagmite changes --- biomes/level1.lua | 45 +++++++++++++++++++++++++++------------------ biomes/level2.lua | 22 +++++++++++----------- biomes/level3.lua | 22 +++++++++++----------- config.lua | 10 +++++----- 4 files changed, 54 insertions(+), 45 deletions(-) diff --git a/biomes/level1.lua b/biomes/level1.lua index a301063..bc22c5d 100644 --- a/biomes/level1.lua +++ b/biomes/level1.lua @@ -9,6 +9,9 @@ local c_cobble_fungus = minetest.get_content_id("dfcaverns:cobble_with_floor_fun local c_dead_fungus = minetest.get_content_id("dfcaverns:dead_fungus") -- param2 = 0 local c_cavern_fungi = minetest.get_content_id("dfcaverns:cavern_fungi") -- param2 = 0 +local c_wet_flowstone = minetest.get_content_id("subterrane:wet_flowstone") +local c_dry_flowstone = minetest.get_content_id("subterrane:dry_flowstone") + local subsea_level = (dfcaverns.config.level1_min - dfcaverns.config.ymax) * 0.3 + dfcaverns.config.level1_min local level_1_tower_cap_floor = function(area, data, ai, vi, bi, param2_data) @@ -25,11 +28,12 @@ local level_1_tower_cap_floor = function(area, data, ai, vi, bi, param2_data) local drip_rand = subterrane:vertically_consistent_random(vi, area) if math.random() < 0.1 then dfcaverns.place_shrub(data, vi, param2_data) + elseif drip_rand < 0.0025 then + elseif drip_rand < 0.1 then - --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) elseif math.random() < 0.005 then dfcaverns.spawn_tower_cap_vm(vi, area, data) end @@ -40,11 +44,12 @@ local level_1_moist_ceiling = function(area, data, ai, vi, bi, param2_data) return end local drip_rand = subterrane:vertically_consistent_random(vi, area) - if drip_rand < 0.075 then - --subterrane:stalactite(ai, area, data, 6, 20, c_stone, c_stone, c_stone) + if drip_rand < 0.0025 then + subterrane:giant_stalactite(ai, area, data, 6, 15, c_wet_flowstone, c_wet_flowstone, c_wet_flowstone) + elseif drip_rand < 0.075 then local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.075 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, -height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, -height, true) elseif math.random() < 0.03 then dfcaverns.glow_worm_ceiling(area, data, ai, vi, bi) end @@ -65,11 +70,12 @@ local level_1_dry_floor = function(area, data, ai, vi, bi, param2_data) end local drip_rand = subterrane:vertically_consistent_random(vi, area) - if drip_rand < 0.05 then - --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) + if drip_rand < 0.001 then + subterrane:giant_stalagmite(bi, area, data, 6, 15, c_dry_flowstone, c_dry_flowstone, c_dry_flowstone) + elseif drip_rand < 0.05 then local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.05 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, false) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, false) end end @@ -91,15 +97,15 @@ local level_1_wet_floor = function(area, data, ai, vi, bi, param2_data) local drip_rand = subterrane:vertically_consistent_random(vi, area) - if drip_rand < 0.05 then - --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) + if drip_rand < 0.001 then + subterrane:giant_stalagmite(bi, area, data, 6, 15, c_wet_flowstone, c_wet_flowstone, c_wet_flowstone) + elseif drip_rand < 0.05 then local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.05 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) end end - local level_1_underwater_floor = function(area, data, ai, vi, bi, param2_data) if data[bi] ~= c_stone then return @@ -112,11 +118,12 @@ local level_1_dry_ceiling = function(area, data, ai, vi, bi, param2_data) return end local drip_rand = subterrane:vertically_consistent_random(vi, area) - if drip_rand < 0.075 then - --subterrane:stalactite(ai, area, data, 6, 20, c_stone, c_stone, c_stone) + if drip_rand < 0.001 then + subterrane:giant_stalactite(ai, area, data, 6, 15, c_dry_flowstone, c_dry_flowstone, c_dry_flowstone) + elseif drip_rand < 0.075 then local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.075 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, -height, false) + subterrane:stalagmite(vi, area, data, param2_data, param2, -height, false) end end @@ -136,11 +143,13 @@ local level_1_fungiwood_floor = function(area, data, ai, vi, bi, param2_data) if math.random() < 0.1 then dfcaverns.place_shrub(data, vi, param2_data) + elseif drip_rand < 0.001 then + subterrane:giant_stalagmite(bi, area, data, 6, 15, c_wet_flowstone, c_wet_flowstone, c_wet_flowstone) elseif drip_rand < 0.1 then --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) elseif math.random() < 0.005 then dfcaverns.spawn_fungiwood_vm(vi, area, data) end @@ -171,7 +180,7 @@ local level_1_cave_floor = function(area, data, ai, vi, bi, param2_data) if drip_rand < 0.075 then local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.075 * 4) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) end end @@ -185,7 +194,7 @@ local level_1_cave_ceiling = function(area, data, ai, vi, bi, param2_data) if drip_rand < 0.1 then local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, -height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, -height, true) end end diff --git a/biomes/level2.lua b/biomes/level2.lua index c37e67d..1f8ad98 100644 --- a/biomes/level2.lua +++ b/biomes/level2.lua @@ -36,7 +36,7 @@ local level_2_tower_cap_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) elseif math.random() < 0.005 then dfcaverns.spawn_tower_cap_vm(vi, area, data) end @@ -51,7 +51,7 @@ local level_2_moist_ceiling = function(area, data, ai, vi, bi, param2_data) --subterrane:stalactite(ai, area, data, 6, 20, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.075 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, -height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, -height, true) elseif math.random() < 0.03 then dfcaverns.glow_worm_ceiling(area, data, ai, vi, bi) end @@ -76,7 +76,7 @@ local level_2_dry_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.05 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, false) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, false) end end @@ -102,7 +102,7 @@ local level_2_wet_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.05 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) end end @@ -123,7 +123,7 @@ local level_2_dry_ceiling = function(area, data, ai, vi, bi, param2_data) --subterrane:stalactite(ai, area, data, 6, 20, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.075 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, -height, false) + subterrane:stalagmite(vi, area, data, param2_data, param2, -height, false) end end @@ -147,7 +147,7 @@ local level_2_fungiwood_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) elseif math.random() < 0.005 then dfcaverns.spawn_fungiwood_vm(vi, area, data) end @@ -172,7 +172,7 @@ local level_2_tunnel_tube_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) elseif math.random() < 0.05 then dfcaverns.spawn_tunnel_tube_vm(vi, area, data, param2_data) end @@ -197,7 +197,7 @@ local level_2_spore_tree_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) elseif math.random() < 0.05 then dfcaverns.spawn_spore_tree_vm(vi, area, data) end @@ -222,7 +222,7 @@ local level_2_goblin_cap_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) elseif math.random() < 0.025 then dfcaverns.spawn_goblin_cap_vm(vi, area, data) end @@ -252,7 +252,7 @@ local level_2_cave_floor = function(area, data, ai, vi, bi, param2_data) if drip_rand < 0.075 then local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.075 * 4) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) end end @@ -266,7 +266,7 @@ local level_2_cave_ceiling = function(area, data, ai, vi, bi, param2_data) if drip_rand < 0.1 then local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, -height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, -height, true) end end diff --git a/biomes/level3.lua b/biomes/level3.lua index c792de7..9337359 100644 --- a/biomes/level3.lua +++ b/biomes/level3.lua @@ -37,7 +37,7 @@ local level_3_blood_thorn_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.05 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, false) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, false) elseif math.random() < 0.05 then dfcaverns.spawn_blood_thorn_vm(vi, area, data, param2_data) end @@ -52,7 +52,7 @@ local level_3_moist_ceiling = function(area, data, ai, vi, bi, param2_data) --subterrane:stalactite(ai, area, data, 6, 20, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.075 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, -height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, -height, true) elseif math.random() < 0.03 then dfcaverns.glow_worm_ceiling(area, data, ai, vi, bi) end @@ -77,7 +77,7 @@ local level_3_dry_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.05 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, false) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, false) end end @@ -103,7 +103,7 @@ local level_3_wet_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.05 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) end end @@ -124,7 +124,7 @@ local level_3_dry_ceiling = function(area, data, ai, vi, bi, param2_data) --subterrane:stalactite(ai, area, data, 6, 20, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.075 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, -height, false) + subterrane:stalagmite(vi, area, data, param2_data, param2, -height, false) end end @@ -148,7 +148,7 @@ local level_3_nether_cap_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) elseif math.random() < 0.005 then dfcaverns.spawn_nether_cap_vm(vi, area, data) end @@ -174,7 +174,7 @@ local level_3_tunnel_tube_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) elseif math.random() < 0.05 then dfcaverns.spawn_tunnel_tube_vm(vi, area, data, param2_data) end @@ -199,7 +199,7 @@ local level_3_spore_tree_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) elseif math.random() < 0.05 then dfcaverns.spawn_spore_tree_vm(vi, area, data) end @@ -224,7 +224,7 @@ local level_3_goblin_cap_floor = function(area, data, ai, vi, bi, param2_data) --subterrane:stalagmite(bi, area, data, 6, 15, c_stone, c_stone, c_stone) local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) elseif math.random() < 0.025 then dfcaverns.spawn_goblin_cap_vm(vi, area, data) end @@ -254,7 +254,7 @@ local level_3_cave_floor = function(area, data, ai, vi, bi, param2_data) if drip_rand < 0.075 then local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.075 * 4) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, height, true) end end @@ -268,7 +268,7 @@ local level_3_cave_ceiling = function(area, data, ai, vi, bi, param2_data) if drip_rand < 0.1 then local param2 = drip_rand*1000000 - math.floor(drip_rand*1000000/4)*4 local height = math.floor(drip_rand/0.1 * 5) - subterrane:small_stalagmite(vi, area, data, param2_data, param2, -height, true) + subterrane:stalagmite(vi, area, data, param2_data, param2, -height, true) end end diff --git a/config.lua b/config.lua index 9ac6f87..5ed3459 100644 --- a/config.lua +++ b/config.lua @@ -66,9 +66,9 @@ end setting("bool", "light_kills_fungus", true, "Light kills fungus") setting("int", "ymax", -300, "Upper limit of level 1") -setting("int", "level1_min", -600, "Upper limit of level 2") -setting("int", "level2_min", -1000, "Upper limit of level 3") -setting("int", "level3_min", -1400, "Upper limit of lava sea") -setting("int", "lava_sea_min", -1600, "Upper limit of underworld") -setting("int", "ymin", -2000, "Lower limit of underworld") +setting("int", "level1_min", -900, "Upper limit of level 2") +setting("int", "level2_min", -1500, "Upper limit of level 3") +setting("int", "level3_min", -2100, "Upper limit of lava sea") +setting("int", "lava_sea_min", -2700, "Upper limit of underworld") +setting("int", "ymin", -3500, "Lower limit of underworld")