diff --git a/danglers.lua b/danglers.lua index bee7fda..c0730c0 100644 --- a/danglers.lua +++ b/danglers.lua @@ -81,15 +81,6 @@ mobs:register_spawn("fun_caves:dangler", {"fun_caves:stone_with_moss", "fun_cave mobs:register_egg("fun_caves:dangler", "Dangling Spider", "mobs_cobweb.png", 1) -minetest.register_abm({ - nodenames = {"mobs:cobweb"}, - interval = 500, - chance = 50, - action = function(pos, node) - minetest.set_node(pos, {name = "air"}) - end -}) - -- cobweb if not minetest.registered_nodes['mobs:cobweb'] then @@ -122,3 +113,12 @@ if not minetest.registered_nodes['mobs:cobweb'] then } }) end + +minetest.register_abm({ + nodenames = {"mobs:cobweb"}, + interval = 500, + chance = 50, + action = function(pos, node) + minetest.set_node(pos, {name = "air"}) + end +}) diff --git a/deco.lua b/deco.lua index 29a5864..f8e8681 100644 --- a/deco.lua +++ b/deco.lua @@ -13,17 +13,6 @@ minetest.register_node("fun_caves:sand_with_rocks", { drop = {max_items=2, items={{items={"fun_caves:small_rocks"}, rarity=1}, {items={"default:sand"}, rarity=1}}}, }) ---minetest.register_decoration({ --- deco_type = "simple", --- place_on = {"default:dirt_with_grass"}, --- sidelen = 80, --- fill_ratio = 0.1, --- biomes = {"rainforest", "desertstone_grassland"}, --- y_min = 1, --- y_max = 31000, --- decoration = "default:junglegrass", ---}) - minetest.register_craft({ output = "default:stick 2", recipe = { @@ -33,6 +22,133 @@ minetest.register_craft({ minetest.add_group("default:cactus", {oddly_breakable_by_hand=1}) + +local biome_mod = { + coniferous_forest_dunes = { heat_point = 35, humidity_point = 60, }, + coniferous_forest = { heat_point = 35, humidity_point = 60, }, + coniferous_forest_ocean = { heat_point = 35, humidity_point = 60, }, + deciduous_forest = { heat_point = 60, humidity_point = 60, }, + deciduous_forest_ocean = { heat_point = 60, humidity_point = 60, }, + deciduous_forest_swamp = { heat_point = 60, humidity_point = 60, }, + desert = { heat_point = 80, humidity_point = 10, }, + desert_ocean = { heat_point = 80, humidity_point = 10, }, + glacier = {}, + glacier_ocean = {}, + rainforest = { heat_point = 85, humidity_point = 70, }, + rainforest_ocean = { heat_point = 85, humidity_point = 70, }, + rainforest_swamp = { heat_point = 85, humidity_point = 70, }, + sandstone_grassland_dunes = { heat_point = 55, humidity_point = 40, }, + sandstone_grassland = { heat_point = 55, humidity_point = 40, }, + sandstone_grassland_ocean = { heat_point = 55, humidity_point = 40, }, + savanna = { heat_point = 80, humidity_point = 25, }, + savanna_ocean = { heat_point = 80, humidity_point = 25, }, + savanna_swamp = { heat_point = 80, humidity_point = 25, }, + stone_grassland_dunes = { heat_point = 35, humidity_point = 40, }, + stone_grassland = { heat_point = 35, humidity_point = 40, }, + stone_grassland_ocean = { heat_point = 35, humidity_point = 40, }, + taiga = {}, + taiga_ocean = {}, + tundra = {}, + tundra_beach = {}, + tundra_ocean = {}, +} +local rereg = {} + +for n, bi in pairs(biome_mod) do + for i, rbi in pairs(minetest.registered_biomes) do + if rbi.name == n then + rereg[#rereg+1] = table.copy(rbi) + for j, prop in pairs(bi) do + rereg[#rereg][j] = prop + end + end + end +end + +minetest.clear_registered_biomes() + +for _, bi in pairs(rereg) do + minetest.register_biome(bi) +end + +rereg = {} +for _, dec in pairs(minetest.registered_decorations) do + rereg[#rereg+1] = dec +end +minetest.clear_registered_decorations() +for _, dec in pairs(rereg) do + minetest.register_decoration(dec) +end +rereg = nil + + +minetest.register_biome({ + name = "cold_desert", + --node_dust = "", + node_top = "default:desert_sand", + depth_top = 1, + node_filler = "default:desert_sand", + depth_filler = 1, + node_stone = "default:desert_stone", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = 5, + y_max = 31000, + heat_point = 25, + humidity_point = 0, +}) + +minetest.register_biome({ + name = "cold_desert_ocean", + --node_dust = "", + node_top = "default:sand", + depth_top = 1, + node_filler = "default:sand", + depth_filler = 3, + node_stone = "default:desert_stone", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = -112, + y_max = 4, + heat_point = 25, + humidity_point = 10, +}) + +minetest.register_biome({ + name = "desertstone_grassland", + --node_dust = "", + node_top = "default:dirt_with_grass", + depth_top = 1, + node_filler = "default:dirt", + depth_filler = 1, + node_stone = "default:desert_stone", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = 6, + y_max = 31000, + heat_point = 80, + humidity_point = 55, +}) + + +minetest.register_decoration({ + deco_type = "simple", + place_on = {"default:dirt_with_grass"}, + sidelen = 80, + fill_ratio = 0.1, + biomes = {"desertstone_grassland", }, + y_min = 1, + y_max = 31000, + decoration = "default:junglegrass", +}) + + dofile(fun_caves.path.."/deco_caves.lua") --dofile(fun_caves.path.."/deco_dirt.lua") dofile(fun_caves.path.."/deco_plants.lua") diff --git a/deco_plants.lua b/deco_plants.lua index e01270d..b7dbb46 100644 --- a/deco_plants.lua +++ b/deco_plants.lua @@ -151,21 +151,19 @@ local function register_flower(name, seed, biomes) -- Let rainforest plants show up more often. local key1 = table.contains(biomes, "rainforest") - --local key2 = table.contains(biomes, "desertstone_grassland") - --if key1 or key2 then - if key1 then + local key2 = table.contains(biomes, "desertstone_grassland") + if key1 or key2 then if key1 then table.remove(param.biomes, key1) - --else - -- table.remove(param.biomes, key2) + else + table.remove(param.biomes, key2) end if #param.biomes > 0 then minetest.register_decoration(param) end local param2 = table.copy(param) - --param2.biomes = {"rainforest", "desertstone_grassland", } - param2.biomes = {"rainforest", } + param2.biomes = {"rainforest", "desertstone_grassland", } param2.noise_params.seed = param2.noise_params.seed + 20 param2.noise_params.offset = param2.noise_params.offset + 0.01 minetest.register_decoration(param2) @@ -174,11 +172,11 @@ local function register_flower(name, seed, biomes) end end -register_flower("bird_of_paradise", 8402, {"rainforest", }) -register_flower("orchid", 3944, {"sandstone_grassland", "tundra", "taiga", "stone_grassland", "coniferous_forest", "deciduous_forest", "savanna", "rainforest", "rainforest_swamp", }) -register_flower("hibiscus", 7831, {"sandstone_grassland", "deciduous_forest", "savanna", "rainforest", "rainforest_swamp", }) ---register_flower("calla_lily", 7985, {"sandstone_grassland", "stone_grassland", "deciduous_forest", "rainforest", }) -register_flower("gerbera", 1976, {"savanna", "rainforest", }) +register_flower("bird_of_paradise", 8402, {"rainforest", "desertstone_grassland", }) +register_flower("orchid", 3944, {"sandstone_grassland", "tundra", "taiga", "stone_grassland", "coniferous_forest", "deciduous_forest", "savanna", "rainforest", "rainforest_swamp", "desertstone_grassland", }) +register_flower("hibiscus", 7831, {"sandstone_grassland", "deciduous_forest", "savanna", "rainforest", "rainforest_swamp", "desertstone_grassland", }) +--register_flower("calla_lily", 7985, {"sandstone_grassland", "stone_grassland", "deciduous_forest", "rainforest", "desertstone_grassland", }) +register_flower("gerbera", 1976, {"savanna", "rainforest", "desertstone_grassland", }) do -- Water Plant @@ -187,7 +185,7 @@ do place_on = {"group:sand"}, decoration = {"fun_caves:water_plant_1_water_sand"}, --biomes = {"sandstone_grassland", "stone_grassland", "coniferous_forest", "deciduous_forest", "desert", "savanna", "rainforest", "rainforest_swamp", }, - biomes = {"sandstone_grassland", "stone_grassland", "coniferous_forest", "deciduous_forest", "savanna", "rainforest", "rainforest_swamp","sandstone_grassland_ocean", "stone_grassland_ocean", "coniferous_forest_ocean", "deciduous_forest_ocean", "desert_ocean", "savanna_ocean", }, + biomes = {"sandstone_grassland", "stone_grassland", "coniferous_forest", "deciduous_forest", "savanna", "rainforest", "rainforest_swamp","sandstone_grassland_ocean", "stone_grassland_ocean", "coniferous_forest_ocean", "deciduous_forest_ocean", "desert_ocean", "savanna_ocean", "desertstone_grassland", }, y_max = 60, } local water_plant_1_def_soil = table.copy(water_plant_1_def_sand) diff --git a/deco_rocks.lua b/deco_rocks.lua index 164bf28..9773bcd 100644 --- a/deco_rocks.lua +++ b/deco_rocks.lua @@ -52,7 +52,7 @@ for grid_count = 1,6 do sidelen = 80, place_on = {"group:soil", "group:sand"}, fill_ratio = 0.001, - biomes = {"sandstone_grassland", "tundra", "taiga", "stone_grassland", "coniferous_forest", "deciduous_forest", "desert", "savanna", "rainforest", }, + biomes = {"sandstone_grassland", "tundra", "taiga", "stone_grassland", "coniferous_forest", "deciduous_forest", "desert", "savanna", "rainforest", "desertstone_grassland", }, flags = "place_center_x, place_center_z", rotation = "random", }) diff --git a/deco_water.lua b/deco_water.lua index 650336d..6225dd4 100644 --- a/deco_water.lua +++ b/deco_water.lua @@ -3,7 +3,7 @@ local light_depth = -13 local water_level = 1 local water_lily_biomes = {} -for _, i in pairs({"rainforest_swamp", "rainforest", "savanna_swamp", "savanna", "deciduous_forest_swamp", "deciduous_forest", }) do +for _, i in pairs({"rainforest_swamp", "rainforest", "savanna_swamp", "savanna", "deciduous_forest_swamp", "deciduous_forest", "desertstone_grassland", }) do water_lily_biomes[i] = true end local coral_biomes = {}