Better biomes
This commit is contained in:
parent
7b969e0009
commit
f4e6c52f2f
5 changed files with 149 additions and 35 deletions
18
danglers.lua
18
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
|
||||
})
|
||||
|
|
138
deco.lua
138
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")
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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",
|
||||
})
|
||||
|
|
|
@ -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 = {}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue