Add files via upload

This commit is contained in:
Shad MOrdre 2019-06-13 12:20:42 -07:00 committed by GitHub
parent 3270155eba
commit 33517a4a29
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 2663 additions and 1075 deletions

View File

@ -1,2 +1,3 @@
default?
stairs?
game?

143
init.lua
View File

@ -42,28 +42,27 @@ lib_materials.maxheight_lowland = lib_materials.maxheight_coastal + lib_material
lib_materials.maxheight_shelf = lib_materials.maxheight_lowland + lib_materials.biome_altitude_range
lib_materials.maxheight_highland = lib_materials.maxheight_shelf + lib_materials.biome_altitude_range
lib_materials.maxheight_mountain = lib_materials.maxheight_highland + lib_materials.biome_altitude_range
lib_materials.minheight_snow = 285
lib_materials.maxheight_snow = 485
lib_materials.maxheight_strato = 1250
lib_materials.minheight_snow = lib_materials.maxheight_mountain + lib_materials.biome_altitude_range
lib_materials.maxheight_snow = lib_materials.minheight_snow + (lib_materials.biome_altitude_range * 2)
lib_materials.maxheight_strato = lib_materials.maxheight_snow + (lib_materials.biome_altitude_range * (lib_materials.mgv7_mapgen_scale_factor / 2))
-- 100, 75, 50, 25, 0
-- 90, 75, 50, 25, 10
-- 90, 70, 50, 30, 10
lib_materials.temperature_hot = 90
lib_materials.temperature_warm = 70
lib_materials.temperature_hot = 100
lib_materials.temperature_warm = 75
lib_materials.temperature_temperate = 50
lib_materials.temperature_cool = 30
lib_materials.temperature_cold = 10
lib_materials.humidity_humid = 90
lib_materials.humidity_semihumid = 70
lib_materials.temperature_cool = 25
lib_materials.temperature_cold = 0
lib_materials.humidity_humid = 100
lib_materials.humidity_semihumid = 75
lib_materials.humidity_temperate = 50
lib_materials.humidity_semiarid = 30
lib_materials.humidity_arid = 10
lib_materials.humidity_semiarid = 25
lib_materials.humidity_arid = 0
-- 8, 4
--
--lib_materials.biome_vertical_blend = 4
lib_materials.biome_vertical_blend = lib_materials.biome_altitude_range / 10
lib_materials.biome_vertical_blend = lib_materials.biome_altitude_range / 5
minetest.clear_registered_biomes()
minetest.clear_registered_decorations()
@ -73,8 +72,6 @@ minetest.log(S("[MOD] lib_materials: Loading..."))
dofile(lib_materials.path.."/lib_materials_sound_defaults.lua")
dofile(lib_materials.path.."/lib_materials_utils.lua")
dofile(lib_materials.path.."/type_fluids.lua")
dofile(lib_materials.path.."/type_stone.lua")
dofile(lib_materials.path.."/type_stone_deco.lua")
@ -84,119 +81,25 @@ dofile(lib_materials.path.."/type_ice_snow.lua")
dofile(lib_materials.path.."/type_ore.lua")
dofile(lib_materials.path.."/type_glass.lua")
dofile(lib_materials.path.."/lib_materials_schematics.lua")
dofile(lib_materials.path.."/lib_materials_tools.lua")
dofile(lib_materials.path.."/lib_materials_biomes.lua")
dofile(lib_materials.path.."/lib_materials_lakes.lua")
dofile(lib_materials.path.."/lib_materials_ore_defs.lua")
dofile(lib_materials.path.."/lib_materials_ore_defs.lua")
dofile(lib_materials.path.."/lib_materials_utils.lua")
dofile(lib_materials.path.."/lib_materials_abms.lua")
dofile(lib_materials.path.."/lib_materials_chatcommands.lua")
minetest.log(S("[MOD] lib_materials: Successfully loaded."))
--[[
lib_materials.register_materials = function()
local node_defs = {}
for node, def in pairs(minetest.registered_nodes) do
local node_name = node
local node_def = table.copy(def)
if not node_def then
return false
end
local node_groups = table.copy(node_def.groups) or {}
if not node_groups then
return false
end
if not node_groups.stone then
--node_def.density = 10
--node_def.mass = 10
--node_def.hardness = 10
--node_def.melting_point = 500
--node_groups.material = 3
--node_groups.inorganic = 3
end
if not node_groups.dirt then
end
if not node_groups.glass then
end
if not node_groups.tree then
end
if not node_groups.wood then
end
if not node_groups.plant then
end
if not node_groups.crumbly then
end
if not node_groups.cracky then
end
if not node_groups.snappy then
end
if not node_groups.choppy then
end
if not node_groups.oddly_breakable_by_hand then
end
if not node_groups.soil then
end
if not node_groups.fleshy then
end
if not node_groups.bouncy then
end
if not node_groups.explody then
end
end
nod_def.groups = node_groups
minetest.override_item(node_name, nod_def)
end
--]]
--lib_materials.register_material = function(material_name, {material_def})
--local def = minetest.registered_nodes["some:name"]
--local groups = table.copy(def.groups)
--groups.my_group = 123
--minetest.override_item("some:name", { groups=groups })
--end

186
lib_materials_abms.lua Normal file
View File

@ -0,0 +1,186 @@
local S = lib_materials.intllib
--
-- Lavacooling
--
lib_materials.cool_lava = function(pos, node)
if node.name == "lib_materials:lava_source" or node.name == "lib_materials:lava_flowing" then
local rnum = math.random(1,4)
if rnum == 1 then
if node.name == "lib_materials:lava_source" then
minetest.set_node(pos, {name = "lib_materials:lava_cooling_source"})
else
minetest.set_node(pos, {name = "lib_materials:lava_cooling_flowing"})
end
else
end
minetest.sound_play("default_cool_lava", {pos = pos, max_hear_distance = 16, gain = 0.25})
end
end
lib_materials.cool_lava2 = function(pos, node)
if node.name == "lib_materials:lava_cooling_source" or node.name == "lib_materials:lava_cooling_flowing" then
local rnum = math.random(1,2)
if rnum == 1 then
minetest.set_node(pos, {name = "lib_materials:stone_cobble_hot"})
else
end
minetest.sound_play("default_cool_lava", {pos = pos, max_hear_distance = 16, gain = 0.25})
end
end
lib_materials.cool_lava3 = function(pos, node)
if node.name == "lib_materials:stone_cobble_hot" then
local rnum = math.random(1,6)
if rnum == 1 then
minetest.set_node(pos, {name = "lib_materials:stone_obsidian"})
elseif rnum == 2 then
minetest.set_node(pos, {name = "lib_materials:stone_basalt_01"})
elseif rnum == 3 then
minetest.set_node(pos, {name = "lib_materials:stone_basalt_02"})
elseif rnum == 4 then
minetest.set_node(pos, {name = "lib_materials:stone_basalt_03"})
elseif rnum == 5 then
minetest.set_node(pos, {name = "lib_materials:stone"})
else
end
minetest.sound_play("default_cool_lava", {pos = pos, max_hear_distance = 16, gain = 0.25})
end
end
if minetest.settings:get_bool("enable_lavacooling") ~= false then
minetest.register_abm({
label = "Lava cooling",
nodenames = {"lib_materials:lava_source", "lib_materials:lava_flowing"},
neighbors = {"group:cools_lava", "group:water"},
interval = 2,
chance = 2,
catch_up = false,
action = function(...)
lib_materials.cool_lava(...)
end,
})
minetest.register_abm({
label = "Lava2 cooling",
nodenames = {"lava_cooling_source", "lib_materials:lava_cooling_flowing"},
neighbors = {"group:cools_lava", "group:water"},
interval = 2,
chance = 2,
catch_up = false,
action = function(...)
lib_materials.cool_lava2(...)
end,
})
minetest.register_abm({
label = "Lava3 cooling",
nodenames = {"lib_materials:stone_cobble_hot"},
neighbors = {"group:cools_lava", "group:water"},
interval = 2,
chance = 2,
catch_up = false,
action = function(...)
lib_materials.cool_lava3(...)
end,
})
end
--
-- Convert dirt to something that fits the environment
--
minetest.register_abm({
label = "Grass spread",
nodenames = {"default:dirt"},
neighbors = {
"air",
"group:grass",
"group:dry_grass",
"default:snow",
},
interval = 6,
chance = 50,
catch_up = false,
action = function(pos, node)
-- Check for darkness: night, shadow or under a light-blocking node
-- Returns if ignore above
local above = {x = pos.x, y = pos.y + 1, z = pos.z}
if (minetest.get_node_light(above) or 0) < 13 then
return
end
-- Look for spreading dirt-type neighbours
local p2 = minetest.find_node_near(pos, 1, "group:spreading_dirt_type")
if p2 then
local n3 = minetest.get_node(p2)
minetest.set_node(pos, {name = n3.name})
return
end
-- Else, any seeding nodes on top?
local name = minetest.get_node(above).name
-- Snow check is cheapest, so comes first
if name == "default:snow" then
minetest.set_node(pos, {name = "default:dirt_with_snow"})
-- Most likely case first
elseif minetest.get_item_group(name, "grass") ~= 0 then
minetest.set_node(pos, {name = "default:dirt_with_grass"})
elseif minetest.get_item_group(name, "dry_grass") ~= 0 then
minetest.set_node(pos, {name = "default:dirt_with_dry_grass"})
end
end
})
--
-- Grass and dry grass removed in darkness
--
minetest.register_abm({
label = "Grass covered",
nodenames = {"group:spreading_dirt_type"},
interval = 8,
chance = 50,
catch_up = false,
action = function(pos, node)
local above = {x = pos.x, y = pos.y + 1, z = pos.z}
local name = minetest.get_node(above).name
local nodedef = minetest.registered_nodes[name]
if name ~= "ignore" and nodedef and not ((nodedef.sunlight_propagates or
nodedef.paramtype == "light") and
nodedef.liquidtype == "none") then
minetest.set_node(pos, {name = "default:dirt"})
end
end
})
--
-- Moss growth on cobble near water
--
minetest.register_abm({
label = "Moss growth",
nodenames = {"default:cobble", "stairs:slab_cobble", "stairs:stair_cobble", "walls:cobble"},
neighbors = {"group:water"},
interval = 16,
chance = 200,
catch_up = false,
action = function(pos, node)
if node.name == "default:cobble" then
minetest.set_node(pos, {name = "default:mossycobble"})
elseif node.name == "stairs:slab_cobble" then
minetest.set_node(pos, {name = "stairs:slab_mossycobble", param2 = node.param2})
elseif node.name == "stairs:stair_cobble" then
minetest.set_node(pos, {name = "stairs:stair_mossycobble", param2 = node.param2})
elseif node.name == "walls:cobble" then
minetest.set_node(pos, {name = "walls:mossycobble", param2 = node.param2})
end
end
})

View File

@ -36,8 +36,8 @@ local add_biomes_hot_humid = function()
--add_biome("hot_humid_generic", nil, "lib_materials:dirt_clayey_with_rainforest_litter", 1, "lib_materials:dirt_clayey", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_hot, lib_materials.humidity_humid)
--add_biome("hot_humid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -1lib_materials.humidity_temperate00, -192, lib_materials.temperature_hot, lib_materials.humidity_humid)
add_biome("hot_humid_ocean", nil, "lib_materials:dirt_silt_02", 4, "lib_materials:dirt_silt_02", 6, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -192, -2, lib_materials.temperature_hot, lib_materials.humidity_humid)
add_biome("hot_humid_beach", nil, "lib_materials:dirt_silt_02", 2, "lib_materials:dirt_silt_02", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -2, 2, lib_materials.temperature_hot, lib_materials.humidity_humid)
add_biome("hot_humid_ocean", nil, "lib_materials:sand", 4, "lib_materials:sand", 6, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -192, -2, lib_materials.temperature_hot, lib_materials.humidity_humid)
add_biome("hot_humid_beach", nil, "lib_materials:sand", 2, "lib_materials:sand", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -2, 2, lib_materials.temperature_hot, lib_materials.humidity_humid)
add_biome("hot_humid_coastal", nil, "lib_materials:dirt_with_grass_hot_humid_coastal", 1, "lib_materials:dirt_silt_02", 6, "lib_materials:stone_basalt_01", nil, nil, nil, nil, 2, lib_materials.maxheight_coastal, lib_materials.temperature_hot, lib_materials.humidity_humid)
add_biome("hot_humid_lowland", nil, "lib_materials:dirt_with_grass_hot_humid_lowland", 1, "lib_materials:dirt_silty", 5, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_hot, lib_materials.humidity_humid)
@ -57,8 +57,8 @@ local add_biomes_hot_semihumid = function()
--add_biome("hot_semihumid_generic", nil, "lib_materials:dirt_clayey_with_coniferous_litter", 1, "lib_materials:dirt_clayey", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_hot, lib_materials.humidity_semihumid)
--add_biome("hot_semihumid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -1lib_materials.humidity_temperate00, -192, lib_materials.temperature_hot, lib_materials.humidity_semihumid)
add_biome("hot_semihumid_ocean", nil, "lib_materials:dirt_silt_02", 4, "lib_materials:dirt_silt_02", 6, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -192, 0, lib_materials.temperature_hot, lib_materials.humidity_semihumid)
add_biome("hot_semihumid_beach", nil, "lib_materials:sand_volcanic", 2, "lib_materials:dirt_silt_02", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -3, 3, lib_materials.temperature_hot, lib_materials.humidity_semihumid)
add_biome("hot_semihumid_ocean", nil, "lib_materials:sand", 4, "lib_materials:sand", 6, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -192, 0, lib_materials.temperature_hot, lib_materials.humidity_semihumid)
add_biome("hot_semihumid_beach", nil, "lib_materials:sand_volcanic", 2, "lib_materials:sand", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -3, 3, lib_materials.temperature_hot, lib_materials.humidity_semihumid)
add_biome("hot_semihumid_coastal", nil, "lib_materials:dirt_with_grass_hot_semihumid_coastal", 1, "lib_materials:dirt_silty", 6, "lib_materials:stone_basalt_01", nil, nil, nil, nil, 0, lib_materials.maxheight_coastal, lib_materials.temperature_hot, lib_materials.humidity_semihumid)
add_biome("hot_semihumid_lowland", nil, "lib_materials:dirt_with_grass_hot_semihumid_lowland", 1, "lib_materials:dirt_dark", 5, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_hot, lib_materials.humidity_semihumid)
@ -78,8 +78,8 @@ local add_biomes_hot_temperate = function()
--add_biome("hot_temperate_generic", nil, "lib_materials:dirt_clayey_with_grass", 1, "lib_materials:dirt_clayey", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_hot, lib_materials.humidity_temperate)
--add_biome("hot_temperate_underground", nil, nil, nil, nil, nil, "lib_materials:stone_brown", nil, nil, nil, nil, -10000, -192, lib_materials.temperature_hot, lib_materials.humidity_temperate)
add_biome("hot_temperate_ocean", nil, "lib_materials:sand", 4, "lib_materials:dirt_silt_02", 6, "lib_materials:stone_brown", nil, nil, nil, nil, -192, -4, lib_materials.temperature_hot, lib_materials.humidity_temperate)
add_biome("hot_temperate_beach", nil, "lib_materials:sand_volcanic", 2, "lib_materials:dirt_silt_02", 4, "lib_materials:stone_brown", nil, nil, nil, nil, -4, 4, lib_materials.temperature_hot, lib_materials.humidity_temperate)
add_biome("hot_temperate_ocean", nil, "lib_materials:sand", 4, "lib_materials:sand", 6, "lib_materials:stone_brown", nil, nil, nil, nil, -192, -4, lib_materials.temperature_hot, lib_materials.humidity_temperate)
add_biome("hot_temperate_beach", nil, "lib_materials:sand_volcanic", 2, "lib_materials:sand", 4, "lib_materials:stone_brown", nil, nil, nil, nil, -4, 4, lib_materials.temperature_hot, lib_materials.humidity_temperate)
add_biome("hot_temperate_coastal", nil, "lib_materials:dirt_with_grass_hot_temperate_coastal", 1, "lib_materials:dirt_dark", 6, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_hot, lib_materials.humidity_temperate)
add_biome("hot_temperate_lowland", nil, "lib_materials:dirt_with_grass_hot_temperate_lowland", 1, "lib_materials:dirt", 5, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_hot, lib_materials.humidity_temperate)
@ -121,12 +121,12 @@ local add_biomes_hot_arid = function()
--add_biome("hot_arid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -1lib_materials.humidity_temperate00, -192, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_ocean", nil, "lib_materials:sand", 2, "lib_materials:dirt_clay_red", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -192, -4, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_beach", nil, "lib_materials:sand_beach", 1, "lib_materials:dirt_clay_red", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -4, 4, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_beach", nil, "lib_materials:stone_sandstone_desert_gravel", 1, "lib_materials:dirt_clay_red", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -4, 4, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_coastal", nil, "lib_materials:stone_sandstone_white_gravel", 5, "lib_materials:stone_brown", 10, "lib_materials:stone_basalt_01", nil, nil, nil, "lib_materials:dirt_clay_white", lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_lowland", nil, "lib_materials:stone_sandstone_white_gravel", 10, "lib_materials:stone_sand", 15, "lib_materials:stone_brown", nil, nil, nil, "lib_materials:dirt_clay_white", lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_shelf", nil, "lib_materials:stone_sandstone_white_gravel", 10, "lib_materials:stone_desert", 20, "lib_materials:stone_sand", nil, nil, nil, "lib_materials:dirt_clay_white", lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_highland", nil, "lib_materials:stone_sandstone_white_gravel", 15, "lib_materials:stone_sandstone_desert", 25, "lib_materials:stone_desert", nil, nil, nil, "lib_materials:dirt_clay_white", lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_coastal", nil, "lib_materials:stone_sandstone_desert_gravel", 5, "lib_materials:stone_brown", 10, "lib_materials:stone_basalt_01", nil, nil, nil, "lib_materials:stone_desert_gravel", lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_lowland", nil, "lib_materials:stone_sandstone_desert_gravel", 10, "lib_materials:stone_sand", 15, "lib_materials:stone_brown", nil, nil, nil, "lib_materials:stone_desert_gravel", lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_shelf", nil, "lib_materials:stone_sandstone_desert_gravel", 10, "lib_materials:stone_desert", 20, "lib_materials:stone_sand", nil, nil, nil, "lib_materials:stone_desert_gravel", lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_highland", nil, "lib_materials:stone_sandstone_desert_gravel", 15, "lib_materials:stone_sandstone_desert", 25, "lib_materials:stone_desert", nil, nil, nil, "lib_materials:stone_desert_gravel", lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_mountain", nil, "lib_materials:stone_sandstone_white", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_desert", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_hot, lib_materials.humidity_arid)
add_biome("hot_arid_strato", nil, "lib_materials:stone_sandstone", 15, "lib_materials:stone_sandstone_desert", 25, "lib_materials:stone_sand", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_hot, lib_materials.humidity_arid)
@ -144,7 +144,7 @@ local add_biomes_warm_humid = function()
--add_biome("warm_humid_generic", nil, "lib_materials:dirt_dark_with_rainforest_litter", 1, "lib_materials:dirt_dark", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_warm, lib_materials.humidity_humid)
--add_biome("warm_humid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -1lib_materials.humidity_temperate00, -192, lib_materials.temperature_warm, lib_materials.humidity_humid)
add_biome("warm_humid_ocean", nil, "lib_materials:dirt_silt_02", 4, "lib_materials:dirt_silt_02", 6, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -192, -3, lib_materials.temperature_warm, lib_materials.humidity_humid)
add_biome("warm_humid_ocean", nil, "lib_materials:sand", 4, "lib_materials:sand", 6, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -192, -3, lib_materials.temperature_warm, lib_materials.humidity_humid)
add_biome("warm_humid_beach", nil, "lib_materials:sand_white", 1, "lib_materials:sand_volcanic", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -3, 3, lib_materials.temperature_warm, lib_materials.humidity_humid)
add_biome("warm_humid_coastal", nil, "lib_materials:dirt_with_grass_warm_humid_coastal", 1, "lib_materials:dirt_silt_02", 6, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -3, lib_materials.maxheight_coastal, lib_materials.temperature_warm, lib_materials.humidity_humid)
@ -165,7 +165,7 @@ local add_biomes_warm_semihumid = function()
--add_biome("warm_semihumid_generic", nil, "lib_materials:dirt_dark_with_coniferous_litter", 1, "lib_materials:dirt_dark", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_warm, lib_materials.humidity_semihumid)
--add_biome("warm_semihumid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_brown", nil, nil, nil, nil, -10000, -192, lib_materials.temperature_warm, lib_materials.humidity_semihumid)
add_biome("warm_semihumid_ocean", nil, "lib_materials:dirt_silt_02", 2, "lib_materials:sand", 4, "lib_materials:stone_brown", nil, nil, nil, nil, -192, -4, lib_materials.temperature_warm, lib_materials.humidity_semihumid)
add_biome("warm_semihumid_ocean", nil, "lib_materials:sand", 2, "lib_materials:sand", 4, "lib_materials:stone_brown", nil, nil, nil, nil, -192, -4, lib_materials.temperature_warm, lib_materials.humidity_semihumid)
add_biome("warm_semihumid_beach", nil, "lib_materials:sand_white", 1, "lib_materials:sand_white", 4, "lib_materials:stone_brown", nil, nil, nil, nil, -4, 4, lib_materials.temperature_warm, lib_materials.humidity_semihumid)
add_biome("warm_semihumid_coastal", nil, "lib_materials:dirt_with_grass_warm_semihumid_coastal", 1, "lib_materials:dirt_silty", 6, "lib_materials:stone_brown", nil, nil, nil, nil, -lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_warm, lib_materials.humidity_semihumid)
@ -186,7 +186,7 @@ local add_biomes_warm_temperate = function()
--add_biome("warm_temperate_generic", nil, "lib_materials:dirt_dark_with_grass", 1, "lib_materials:dirt_dark", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_warm, lib_materials.humidity_temperate)
--add_biome("warm_temperate_underground", nil, nil, nil, nil, nil, "lib_materials:stone_sand", nil, nil, nil, nil, -6000, -192, lib_materials.temperature_warm, lib_materials.humidity_semihumid)
add_biome("warm_temperate_ocean", nil, "lib_materials:dirt_silt_02", 2, "lib_materials:sand", 4, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_warm, lib_materials.humidity_temperate)
add_biome("warm_temperate_ocean", nil, "lib_materials:sand", 2, "lib_materials:sand", 4, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_warm, lib_materials.humidity_temperate)
add_biome("warm_temperate_beach", nil, "lib_materials:sand_beach", 1, "lib_materials:sand", 4, nil, nil, nil, nil, nil, -4, 4, lib_materials.temperature_warm, lib_materials.humidity_temperate)
add_biome("warm_temperate_coastal", nil, "lib_materials:dirt_with_grass_warm_temperate_coastal", 1, "lib_materials:dirt_dark", 6, "lib_materials:stone_limestone_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_warm, lib_materials.humidity_temperate)
@ -231,9 +231,9 @@ local add_biomes_warm_arid = function()
add_biome("warm_arid_ocean", nil, "lib_materials:sand", 2, "lib_materials:sand", 4, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_warm, lib_materials.humidity_arid)
add_biome("warm_arid_beach", nil, "lib_materials:stone_sandstone_desert_gravel", 1, "lib_materials:sand", 4, nil, nil, nil, nil, nil, -4, 4, lib_materials.temperature_warm, lib_materials.humidity_arid)
add_biome("warm_arid_coastal", nil, "lib_materials:sand_desert", 10, "lib_materials:stone_sand", lib_materials.temperature_cold, "lib_materials:stone_basalt_01", nil, nil, nil, "lib_materials:stone_sandstone_white_gravel", lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_warm, lib_materials.humidity_arid)
add_biome("warm_arid_coastal", nil, "lib_materials:stone_sandstone_desert_gravel", 10, "lib_materials:stone_sand", lib_materials.temperature_cold, "lib_materials:stone_basalt_01", nil, nil, nil, "lib_materials:stone_sandstone_white_gravel", lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_warm, lib_materials.humidity_arid)
add_biome("warm_arid_lowland", nil, "lib_materials:stone_sandstone_desert_gravel", 10, "lib_materials:stone_sand", lib_materials.temperature_cold, "lib_materials:stone_basalt_01", nil, nil, nil, "lib_materials:stone_sandstone_white_gravel", lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_warm, lib_materials.humidity_arid)
add_biome("warm_arid_shelf", nil, "lib_materials:sand_desert", 10, "lib_materials:stone_sand", lib_materials.temperature_cold, "lib_materials:stone_basalt_01", nil, nil, nil, "lib_materials:stone_sandstone_white_gravel", lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_warm, lib_materials.humidity_arid)
add_biome("warm_arid_shelf", nil, "lib_materials:stone_sandstone_desert_gravel", 10, "lib_materials:stone_sand", lib_materials.temperature_cold, "lib_materials:stone_basalt_01", nil, nil, nil, "lib_materials:stone_sandstone_white_gravel", lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_warm, lib_materials.humidity_arid)
add_biome("warm_arid_highland", nil, "lib_materials:stone_sandstone_desert_gravel", 10, "lib_materials:stone_sand", lib_materials.temperature_cold, "lib_materials:stone_sandstone_desert", nil, nil, nil, "lib_materials:stone_sandstone_white_gravel", lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_warm, lib_materials.humidity_arid)
add_biome("warm_arid_mountain", nil, "lib_materials:stone_sandstone_desert", 10, "lib_materials:stone_sand", 20, "lib_materials:stone_brown", nil, nil, nil, "lib_materials:stone_sandstone_white_gravel", lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_warm, lib_materials.humidity_arid)
@ -251,7 +251,7 @@ local add_biomes_temperate_humid = function()
--add_biome("temperate_humid_generic", nil, "lib_materials:dirt_with_rainforest_litter", 1, "default:dirt", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_temperate, lib_materials.humidity_humid)
--add_biome("temperate_humid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_brown", nil, nil, nil, nil, -10000, -192, lib_materials.temperature_temperate, lib_materials.humidity_humid)
add_biome("temperate_humid_ocean", nil, "lib_materials:dirt_silt_02", 4, "lib_materials:sand", 6, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_temperate, lib_materials.humidity_humid)
add_biome("temperate_humid_ocean", nil, "lib_materials:sand", 4, "lib_materials:sand", 6, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_temperate, lib_materials.humidity_humid)
add_biome("temperate_humid_beach", nil, "lib_materials:sand_beach", 2, "default:sand", 4, "lib_materials:stone_sandstone", nil, nil, nil, nil, -4, 4, lib_materials.temperature_temperate, lib_materials.humidity_humid)
add_biome("temperate_humid_coastal", nil, "lib_materials:dirt_with_grass_temperate_humid_coastal", 1, "lib_materials:dirt_silt_02", 6, "lib_materials:stone_brown", nil, nil, nil, nil, -lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_temperate, lib_materials.humidity_humid)
@ -259,8 +259,8 @@ local add_biomes_temperate_humid = function()
add_biome("temperate_humid_shelf", nil, "lib_materials:dirt_with_grass_temperate_humid_shelf", 1, "lib_materials:dirt_dark", 4, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_temperate, lib_materials.humidity_humid)
add_biome("temperate_humid_highland", nil, "lib_materials:dirt_with_grass_temperate_humid_highland", 1, "lib_materials:dirt", 3, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_temperate, lib_materials.humidity_humid)
add_biome("temperate_humid_mountain", nil, "lib_materials:stone_gabbro", 10, "lib_materials:stone_bluestone", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_temperate, lib_materials.humidity_humid)
add_biome("temperate_humid_strato", nil, "lib_materials:stone_diorite", 15, "lib_materials:stone_bluestone", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_temperate, lib_materials.humidity_humid)
add_biome("temperate_humid_mountain", "lib_materials:snow", "lib_materials:stone_gabbro", 10, "lib_materials:stone_bluestone", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_temperate, lib_materials.humidity_humid)
add_biome("temperate_humid_strato", "lib_materials:ice", "lib_materials:stone_diorite", 15, "lib_materials:stone_bluestone", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_temperate, lib_materials.humidity_humid)
--add_biome("temperate_humid_volcanic", nil, "lib_materials:stone_basalt_01_cobble", lib_materials.temperature_cold, "lib_materials:stone_basalt_01", 20, "default:lava", nil, nil, nil, nil, 140, 140, lib_materials.temperature_temperate, lib_materials.humidity_humid)
--add_biome("temperate_humid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_temperate, lib_materials.humidity_humid)
@ -272,7 +272,7 @@ local add_biomes_temperate_semihumid = function()
--add_biome("temperate_semihumid_generic", nil, "lib_materials:dirt_with_coniferous_litter", 1, "default:dirt", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
--add_biome("temperate_semihumid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -31000, -lib_materials.temperature_hot, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
add_biome("temperate_semihumid_ocean", nil, "lib_materials:dirt_silt_02", 2, "lib_materials:sand", 4, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
add_biome("temperate_semihumid_ocean", nil, "lib_materials:sand", 2, "lib_materials:sand", 4, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
add_biome("temperate_semihumid_beach", nil, "lib_materials:sand_beach", 1, "lib_materials:sand", 4, nil, nil, nil, nil, nil, -4, 4, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
add_biome("temperate_semihumid_coastal", nil, "lib_materials:dirt_with_grass_temperate_semihumid_coastal", 1, "lib_materials:dirt_silty", 4, "lib_materials:stone_bluestone", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
@ -280,8 +280,8 @@ local add_biomes_temperate_semihumid = function()
add_biome("temperate_semihumid_shelf", nil, "lib_materials:dirt_with_grass_temperate_semihumid_shelf", 1, "lib_materials:dirt", 4, "lib_materials:stone_bluestone", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
add_biome("temperate_semihumid_highland", nil, "lib_materials:dirt_with_grass_temperate_semihumid_highland", 1, "lib_materials:dirt_clay_red", 4, "lib_materials:stone_bluestone", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
add_biome("temperate_semihumid_mountain", nil, "lib_materials:stone_bluestone", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
add_biome("temperate_semihumid_strato", nil, "lib_materials:stone_bluestone", 15, "lib_materials:stone_gabbro", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
add_biome("temperate_semihumid_mountain", "lib_materials:snow", "lib_materials:stone_bluestone", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
add_biome("temperate_semihumid_strato", "lib_materials:snow", "lib_materials:stone_bluestone", 15, "lib_materials:stone_gabbro", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
--add_biome("temperate_semihumid_volcanic", nil, "lib_materials:stone_basalt_01_cobble", lib_materials.temperature_cold, "lib_materials:stone_basalt_01", 20, "default:lava", nil, nil, nil, nil, 140, 140, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
--add_biome("temperate_semihumid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_temperate, lib_materials.humidity_semihumid)
@ -293,7 +293,7 @@ local add_biomes_temperate_temperate = function()
--add_biome("temperate_temperate_generic", nil, "lib_materials:dirt_with_grass", 1, "default:dirt", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_temperate, lib_materials.humidity_temperate)
--add_biome("temperate_temperate_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -31000, -lib_materials.temperature_hot, lib_materials.temperature_temperate, lib_materials.humidity_temperate)
add_biome("temperate_temperate_ocean", nil, "lib_materials:dirt_silt_02", 2, "lib_materials:sand", 4, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_temperate, lib_materials.humidity_temperate)
add_biome("temperate_temperate_ocean", nil, "lib_materials:sand", 2, "lib_materials:sand", 4, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_temperate, lib_materials.humidity_temperate)
add_biome("temperate_temperate_beach", nil, "lib_materials:sand_beach", 1, "lib_materials:sand", 4, nil, nil, nil, nil, nil, -4, 4, lib_materials.temperature_temperate, lib_materials.humidity_temperate)
add_biome("temperate_temperate_coastal", nil, "lib_materials:dirt_with_grass_temperate_temperate_coastal", 1, "lib_materials:dirt_dark", 4, "lib_materials:stone_limestone_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_temperate, lib_materials.humidity_temperate)
@ -337,12 +337,12 @@ local add_biomes_temperate_arid = function()
--add_biome("temperate_arid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -31000, -192, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_ocean", nil, "lib_materials:sand", 2, "lib_materials:sand", 4, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_beach", nil, "lib_materials:sand_beach", 1, "lib_materials:sand", 4, nil, nil, nil, nil, nil, -4, 4, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_beach", nil, "lib_materials:stone_sandstone_desert_gravel", 1, "lib_materials:sand", 4, nil, nil, nil, nil, nil, -4, 4, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_coastal", nil, "lib_materials:dirt_coarse", 5, "lib_materials:stone_brown", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_lowland", nil, "lib_materials:dirt_dry", 4, "lib_materials:stone_sand", 6, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_shelf", nil, "lib_materials:dirt_clayey", 3, "lib_materials:stone_desert", 8, "lib_materials:stone_sand", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_highland", nil, "lib_materials:dirt_sandy", 2, "lib_materials:stone_sandstone_desert", 10, "lib_materials:stone_desert", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_coastal", nil, "lib_materials:stone_sandstone_desert_gravel", 5, "lib_materials:stone_brown", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_lowland", nil, "lib_materials:stone_sandstone_desert_gravel", 4, "lib_materials:stone_sand", 6, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_shelf", nil, "lib_materials:stone_sandstone_desert_gravel", 3, "lib_materials:stone_desert", 8, "lib_materials:stone_sand", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_highland", nil, "lib_materials:stone_sandstone_desert_gravel", 2, "lib_materials:stone_sandstone_desert", 10, "lib_materials:stone_desert", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_mountain", nil, "lib_materials:stone_desert", 15, "lib_materials:stone_brown", 25, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_temperate, lib_materials.humidity_arid)
add_biome("temperate_arid_strato", nil, "lib_materials:stone_desert", 15, "lib_materials:stone_sand", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_temperate, lib_materials.humidity_arid)
@ -367,8 +367,8 @@ local add_biomes_cool_humid = function()
add_biome("cool_humid_shelf", nil, "lib_materials:dirt_with_grass_cool_humid_shelf", 1, "lib_materials:dirt_dark", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cool, lib_materials.humidity_humid)
add_biome("cool_humid_highland", nil, "lib_materials:dirt_with_grass_cool_humid_highland", 1, "lib_materials:dirt", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cool, lib_materials.humidity_humid)
add_biome("cool_humid_mountain", nil, "lib_materials:stone_sand", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cool, lib_materials.humidity_humid)
add_biome("cool_humid_strato", nil, "lib_materials:stone_granite_02", 15, "lib_materials:stone_sand", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cool, lib_materials.humidity_humid)
add_biome("cool_humid_mountain", "lib_materials:snow", "lib_materials:stone_sand", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cool, lib_materials.humidity_humid)
add_biome("cool_humid_strato", "lib_materials:ice", "lib_materials:stone_granite_02", 15, "lib_materials:stone_sand", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cool, lib_materials.humidity_humid)
--add_biome("cool_humid_volcanic", nil, nil, nil, nil, nil, nil, "default:ice", nil, nil, nil, 140, 140, lib_materials.temperature_cool, lib_materials.humidity_humid)
--add_biome("cool_humid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_cool, lib_materials.humidity_humid)
@ -388,8 +388,8 @@ local add_biomes_cool_semihumid = function()
add_biome("cool_semihumid_shelf", nil, "lib_materials:dirt_with_grass_cool_semihumid_shelf", 1, "lib_materials:dirt", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cool, lib_materials.humidity_semihumid)
add_biome("cool_semihumid_highland", nil, "lib_materials:dirt_with_grass_cool_semihumid_highland", 1, "lib_materials:dirt_clay_red", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cool, lib_materials.humidity_semihumid)
add_biome("cool_semihumid_mountain", nil, "lib_materials:stone_sand", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cool, lib_materials.humidity_semihumid)
add_biome("cool_semihumid_strato", nil, "lib_materials:stone_gneiss_02", 15, "lib_materials:stone_granite_02", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cool, lib_materials.humidity_semihumid)
add_biome("cool_semihumid_mountain", "lib_materials:snow", "lib_materials:stone_sand", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cool, lib_materials.humidity_semihumid)
add_biome("cool_semihumid_strato", "lib_materials:snow", "lib_materials:stone_gneiss_02", 15, "lib_materials:stone_granite_02", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cool, lib_materials.humidity_semihumid)
--add_biome("cool_semihumid_volcanic", nil, nil, nil, nil, nil, "default:ice", nil, nil, nil, nil, 140, 140, lib_materials.temperature_cool, lib_materials.humidity_semihumid)
--add_biome("cool_semihumid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_cool, lib_materials.humidity_semihumid)
@ -409,8 +409,8 @@ local add_biomes_cool_temperate = function()
add_biome("cool_temperate_shelf", nil, "lib_materials:dirt_with_grass_cool_temperate_shelf", 1, "lib_materials:dirt_coarse", 4, "lib_materials:stone_limestone_01", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cool, lib_materials.humidity_temperate)
add_biome("cool_temperate_highland", nil, "lib_materials:dirt_with_grass_cool_temperate_highland", 1, "lib_materials:dirt_clay_red", 4, "lib_materials:stone_limestone_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cool, lib_materials.humidity_temperate)
add_biome("cool_temperate_mountain", nil, "lib_materials:stone_sand", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cool, lib_materials.humidity_temperate)
add_biome("cool_temperate_strato", nil, "lib_materials:stone_gneiss_02", 15, "lib_materials:stone_granite_02", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cool, lib_materials.humidity_temperate)
add_biome("cool_temperate_mountain", "lib_materials:snow", "lib_materials:stone_sand", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cool, lib_materials.humidity_temperate)
add_biome("cool_temperate_strato", "lib_materials:ice", "lib_materials:stone_gneiss_02", 15, "lib_materials:stone_granite_02", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cool, lib_materials.humidity_temperate)
--add_biome("cool_temperate_volcanic", nil, nil, nil, nil, nil, "default:ice", nil, nil, nil, nil, 140, 140, lib_materials.temperature_cool, lib_materials.humidity_temperate)
--add_biome("cool_temperate_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_cool, lib_materials.humidity_temperate)
@ -444,11 +444,11 @@ local add_biomes_cool_arid = function()
--add_biome("cool_arid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -31000, -192, lib_materials.temperature_cool, lib_materials.humidity_arid)
add_biome("cool_arid_ocean", nil, "lib_materials:sand", 2, "lib_materials:sand", 4, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_cool, lib_materials.humidity_arid)
add_biome("cool_arid_beach", nil, "lib_materials:sand_beach", 1, "lib_materials:sand", 4, nil, nil, nil, nil, nil, -4, 4, lib_materials.temperature_cool, lib_materials.humidity_arid)
add_biome("cool_arid_beach", nil, "lib_materials:stone_sandstone_desert_gravel", 1, "lib_materials:sand", 4, nil, nil, nil, nil, nil, -4, 4, lib_materials.temperature_cool, lib_materials.humidity_arid)
add_biome("cool_arid_coastal", nil, "lib_materials:dirt_clay_red", 5, "lib_materials:stone_granite_01", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cool, lib_materials.humidity_arid)
add_biome("cool_arid_lowland", nil, "lib_materials:dirt_clayey", 4, "lib_materials:stone_gabbro", 6, "lib_materials:stone_granite_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cool, lib_materials.humidity_arid)
add_biome("cool_arid_shelf", nil, "lib_materials:sand_desert", 3, "lib_materials:stone_granite_brown", 8, "lib_materials:stone_gabbro", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cool, lib_materials.humidity_arid)
add_biome("cool_arid_coastal", nil, "lib_materials:stone_sandstone_desert_gravel", 5, "lib_materials:stone_granite_01", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cool, lib_materials.humidity_arid)
add_biome("cool_arid_lowland", nil, "lib_materials:stone_sandstone_desert_gravel", 4, "lib_materials:stone_gabbro", 6, "lib_materials:stone_granite_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cool, lib_materials.humidity_arid)
add_biome("cool_arid_shelf", nil, "lib_materials:stone_sandstone_desert_gravel", 3, "lib_materials:stone_granite_brown", 8, "lib_materials:stone_gabbro", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cool, lib_materials.humidity_arid)
add_biome("cool_arid_highland", nil, "lib_materials:stone_sandstone_desert_gravel", 2, "lib_materials:stone_andesite", 10, "lib_materials:stone_granite_brown", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cool, lib_materials.humidity_arid)
add_biome("cool_arid_mountain", nil, "lib_materials:stone_andesite", 15, "lib_materials:stone_granite_brown", 25, "lib_materials:stone_gabbro", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cool, lib_materials.humidity_arid)
@ -469,13 +469,13 @@ local add_biomes_cold_humid = function()
add_biome("cold_humid_ocean", nil, "lib_materials:sand_volcanic", 2, "lib_materials:stone_brown", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -192, -4, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_beach", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:stone_brown", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -4, 4, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_coastal", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_silt_02", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_lowland", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_silty", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_shelf", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_dark", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_coastal", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_lowland", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_shelf", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_highland", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_mountain", "lib_materials:snow_block", "lib_materials:ice_default", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_strato", "lib_materials:ice_default", "lib_materials:ice_default", 15, "lib_materials:stone_granite_02", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_mountain", "lib_materials:snow", "lib_materials:ice", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cold, lib_materials.humidity_humid)
add_biome("cold_humid_strato", "lib_materials:ice", "lib_materials:ice", 15, "lib_materials:stone_granite_02", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cold, lib_materials.humidity_humid)
--add_biome("cold_humid_volcanic", nil, nil, nil, "default:ice", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, 140, 140, lib_materials.temperature_cold, lib_materials.humidity_humid)
--add_biome("cold_humid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_cold, lib_materials.humidity_humid)
@ -490,13 +490,13 @@ local add_biomes_cold_semihumid = function()
add_biome("cold_semihumid_ocean", nil, "lib_materials:sand_volcanic", 2, "lib_materials:stone_brown", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -192, -4, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_beach", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:stone_brown", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -4, 4, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_coastal", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_silty", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_lowland", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_dark", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_shelf", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_highland", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_coarse", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_coastal", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_permafrost", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_lowland", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_permafrost", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_shelf", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_permafrost", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_highland", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_permafrost", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_mountain", "lib_materials:snow_block", "lib_materials:ice_default", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_strato", "lib_materials:ice_default", "lib_materials:ice_default", 15, "lib_materials:stone_granite_02", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_mountain", "lib_materials:snow", "lib_materials:ice", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
add_biome("cold_semihumid_strato", "lib_materials:ice", "lib_materials:ice", 15, "lib_materials:stone_granite_02", 25, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
--add_biome("cold_semihumid_volcanic", nil, nil, nil, "default:ice", 15, "lib_materials:stone_basalt_01", nil, nil, nil, nil, 140, 140, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
--add_biome("cold_semihumid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_cold, lib_materials.humidity_semihumid)
@ -511,13 +511,13 @@ local add_biomes_cold_temperate = function()
add_biome("cold_temperate_ocean", nil, "lib_materials:sand_silver", 2, "lib_materials:sand", 4, "lib_materials:stone_sandstone", nil, nil, nil, nil, -192, -4, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_beach", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:sand_silver", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -4, 4, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_coastal", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_dark", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_lowland", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_shelf", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_coarse", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_highland", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_clay_red", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_coastal", nil, "lib_materials:dirt_permafrost_with_snow", 1, "lib_materials:dirt_permafrost", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_lowland", nil, "lib_materials:dirt_permafrost_with_snow", 1, "lib_materials:dirt_permafrost", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_shelf", nil, "lib_materials:dirt_permafrost_with_snow", 1, "lib_materials:dirt_permafrost", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_highland", nil, "lib_materials:dirt_permafrost_with_snow", 1, "lib_materials:dirt_permafrost", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_mountain", "lib_materials:snow_block", "lib_materials:snow_block", 10, "lib_materials:stone_brown", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_strato", "lib_materials:ice_default", "lib_materials:ice_default", 15, "lib_materials:stone_granite_02", 25, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_mountain", "lib_materials:snow", "lib_materials:snow", 10, "lib_materials:ice", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cold, lib_materials.humidity_temperate)
add_biome("cold_temperate_strato", "lib_materials:ice", "lib_materials:ice", 15, "lib_materials:stone_granite_02", 25, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cold, lib_materials.humidity_temperate)
--add_biome("cold_temperate_volcanic", nil, nil, nil, "default:ice", lib_materials.temperature_cold, "lib_materials:stone_basalt_01", nil, nil, nil, nil, 140, 140, lib_materials.temperature_cold, lib_materials.humidity_temperate)
--add_biome("cold_temperate_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_cold, lib_materials.humidity_temperate)
@ -530,12 +530,12 @@ local add_biomes_cold_semiarid = function()
--add_biome("cold_semiarid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -31000, -lib_materials.temperature_hot, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_ocean", nil, "lib_materials:sand_silver", 2, "lib_materials:stone_sandstone_silver", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -192, -4, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_beach", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:stone_sandstone_silver", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -4, 4, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_beach", nil, "lib_materials:dirt_permafrost_with_snow", 1, "lib_materials:stone_sandstone_silver", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -4, 4, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_coastal", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_lowland", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt_coarse", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_shelf", nil, "lib_materials:dirt_permafrost", 1, "lib_materials:dirt_clay_red", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_highland", nil, "lib_materials:dirt_permafrost", 1, "lib_materials:dirt_clayey", lib_materials.temperature_cold, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_coastal", nil, "lib_materials:dirt_permafrost", 1, "lib_materials:dirt_permafrost", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_lowland", nil, "lib_materials:dirt_permafrost", 1, "lib_materials:dirt_permafrost", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_shelf", nil, "lib_materials:dirt_permafrost", 1, "lib_materials:dirt_permafrost", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_highland", nil, "lib_materials:dirt_permafrost", 1, "lib_materials:dirt_permafrost", 10, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_mountain", nil, "lib_materials:stone_diorite", 10, "lib_materials:stone_gneiss_02", 20, "lib_materials:stone_granite_02", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
add_biome("cold_semiarid_strato", nil, "lib_materials:stone_andesite", 15, "lib_materials:stone_diorite", 25, "lib_materials:stone_gneiss_02", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cold, lib_materials.humidity_semiarid)
@ -553,10 +553,10 @@ local add_biomes_cold_arid = function()
add_biome("cold_arid_ocean", nil, "lib_materials:sand_silver", 2, "lib_materials:stone_sandstone_silver", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -192, -4, lib_materials.temperature_cold, lib_materials.humidity_arid)
add_biome("cold_arid_beach", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:stone_sandstone_silver", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -4, 4, lib_materials.temperature_cold, lib_materials.humidity_arid)
add_biome("cold_arid_coastal", nil, "lib_materials:dirt_with_snow", 8, "lib_materials:stone_granite_01", 10, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cold, lib_materials.humidity_arid)
add_biome("cold_arid_lowland", nil, "lib_materials:dirt_permafrost", 8, "lib_materials:stone_gabbro", 10, "lib_materials:stone_granite_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cold, lib_materials.humidity_arid)
add_biome("cold_arid_shelf", nil, "lib_materials:dirt_permafrost", 8, "lib_materials:stone_granite_brown", 10, "lib_materials:stone_gabbro", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cold, lib_materials.humidity_arid)
add_biome("cold_arid_highland", nil, "lib_materials:dirt_permafrost", 8, "lib_materials:stone_granite_02", 15, "lib_materials:stone_granite_brown", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cold, lib_materials.humidity_arid)
add_biome("cold_arid_coastal", nil, "lib_materials:dirt_permafrost", 1, "lib_materials:dirt_permafrost", 10, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cold, lib_materials.humidity_arid)
add_biome("cold_arid_lowland", nil, "lib_materials:dirt_permafrost", 1, "lib_materials:dirt_permafrost", 10, "lib_materials:stone_granite_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cold, lib_materials.humidity_arid)
add_biome("cold_arid_shelf", nil, "lib_materials:dirt_permafrost", 1, "lib_materials:dirt_permafrost", 10, "lib_materials:stone_gabbro", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cold, lib_materials.humidity_arid)
add_biome("cold_arid_highland", nil, "lib_materials:dirt_permafrost", 1, "lib_materials:dirt_permafrost", 15, "lib_materials:stone_granite_brown", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cold, lib_materials.humidity_arid)
add_biome("cold_arid_mountain", nil, "lib_materials:stone_diorite", 15, "lib_materials:stone_gneiss_02", 20, "lib_materials:stone_granite_02", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_cold, lib_materials.humidity_arid)
add_biome("cold_arid_strato", nil, "lib_materials:stone_andesite", 15, "lib_materials:stone_diorite", 25, "lib_materials:stone_gneiss_02", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cold, lib_materials.humidity_arid)

View File

@ -0,0 +1,161 @@
local S = lib_materials.intllib
minetest.register_chatcommand("emerge_area", {
params = "x1 y1 z1 x2 y2 z2",
description = S("Generate map in a square box from pos1(x1,y1,z1) to pos2(x2,y2,z2)./nUsage: /emerge_area x1 y1 z1 x2 y2 z2"),
func = function(name, params)
-- local found, _, s_x1, s_y1, s_z1, s_x2, s_y2, s_z2 = params:find("^%s*(%d+)%s*(-?%d*)%s*$")
local found, _, s_x1, s_y1, s_z1, s_x2, s_y2, s_z2 = params:find("^([%d.-]+)[, ] *([%d.-]+)[, ] *([%d.-]+)[ ] *([%d.-]+)[, ] *([%d.-]+)[, ] *([%d.-]+)$")
if found == nil then
minetest.chat_send_player(name, "Usage: /mapgen x1 y1 z1 x2 y2 z2")
return
end
local pos1 = {x=tonumber(s_x1), y=tonumber(s_y1), z=tonumber(s_z1)}
local pos2 = {x=tonumber(s_x2), y=tonumber(s_y2), z=tonumber(s_z2)}
local start_time = minetest.get_us_time()
minetest.emerge_area(pos1, pos2, function(blockpos, action, remaining)
local dt = math.floor((minetest.get_us_time() - start_time) / 1000)
local block = (blockpos.x * 16)..","..(blockpos.y * 16)..","..(blockpos.z * 16)
local info = "(mapgen-"..remaining.."-"..dt.."ms) "
if action==core.EMERGE_GENERATED then
minetest.chat_send_player(name, info.."Generated new block at "..block)
elseif (action==core.EMERGE_CANCELLED) or (action==core.EMERGE_ERRORED) then
minetest.chat_send_player(name, info.."Block at "..block.." did not emerge")
else
--minetest.chat_send_player(name, "(mapgen-"..remaining.."-"..dt.."s) Visited block at "..(blockpos.x)..","..(blockpos.y)..","..(blockpos.z))
end
if remaining<=0 then
minetest.chat_send_player(name, "(mapgen-"..dt.."ms) Generation done.")
end
end
)
end
})
minetest.register_chatcommand("emerge_radius", {
params = "radius [max_height]",
description = S("Generate map in a square box of size 2*radius centered at your current position."),
func = function(name, params)
local found, _, s_radius, s_height = params:find("^%s*(%d+)%s*(-?%d*)%s*$")
if found == nil then
minetest.chat_send_player(name, "Usage: /mapgen radius max_height")
return
end
local player = minetest.get_player_by_name(name)
local pos = player:getpos()
local radius = tonumber(s_radius)
local max_height = tonumber(s_height)
if max_height == nil then
max_height = pos.y+1
end
if radius == 0 then
radius = 1
end
local start_pos = {
x = pos.x - radius,
y = pos.y,
z = pos.z - radius
}
local end_pos = {
x = pos.x + radius,
y = max_height,
z = pos.z + radius
}
local start_time = minetest.get_us_time()
minetest.emerge_area(start_pos, end_pos, function(blockpos, action, remaining)
local dt = math.floor((minetest.get_us_time() - start_time) / 1000)
local block = (blockpos.x * 16)..","..(blockpos.y * 16)..","..(blockpos.z * 16)
local info = "(mapgen-"..remaining.."-"..dt.."ms) "
if action==core.EMERGE_GENERATED then
minetest.chat_send_player(name, info.."Generated new block at "..block)
elseif (action==core.EMERGE_CANCELLED) or (action==core.EMERGE_ERRORED) then
minetest.chat_send_player(name, info.."Block at "..block.." did not emerge")
else
--minetest.chat_send_player(name, "(mapgen-"..remaining.."-"..dt.."s) Visited block at "..(blockpos.x)..","..(blockpos.y)..","..(blockpos.z))
end
if remaining<=0 then
minetest.chat_send_player(name, "(mapgen-"..dt.."ms) Generation done.")
end
end
)
end
})
minetest.register_chatcommand("biomes_get", {
params = "",
description = S("List all biomes."),
_doc_items_longdesc = S("List all biomes as registered with minetest.registered_biomes"),
_doc_items_usagehelp = S("Type /biomes_get in the console."),
func = function(name)
local list_biomes = "REGISTERED BIOMES:\n"
local filename = "biomes_list.txt";
local path = minetest.get_worldpath()..'/'..filename;
local file = io.open( path, 'w' );
for biome_name, biome_def in pairs(minetest.registered_biomes) do
list_biomes = list_biomes .. "\t" .. biome_name .. "\n"
end
if( file ) then
if list_biomes ~= nil then
minetest.chat_send_player(name, S(list_biomes))
file:write(list_biomes)
file:close();
end
else
print("[listitems] Error: listToFile '"..tostring( path ).."' could not be written.");
end
end
})
minetest.register_chatcommand("decorations_get", {
params = "",
description = S("List all decorations."),
_doc_items_longdesc = S("List all decorations as registered with minetest.registered_decorations"),
_doc_items_usagehelp = S("Type /decorations_get in the console."),
func = function(name)
local list_decorations = ""
local filename = "decorations_list.txt";
local path = minetest.get_worldpath()..'/'..filename;
local file = io.open( path, 'w' );
minetest.chat_send_player(name, S("Start Decorations List"))
for _, deco_def in pairs(minetest.registered_decorations) do
list_decorations = list_decorations .. dump(deco_def, " ") .. "\n"
--dump(deco_def, list_decorations)
-- if deco_def.deco_type ~= "schematic" then
-- list_decorations = list_decorations .. "\t" .. tostring(deco_def.decoration) .. "\n"
-- end
end
minetest.chat_send_player(name, S("End Decorations List"))
file:write(list_decorations)
file:close();
--minetest.chat_send_player(name, S(list_decorations))
end
})

View File

@ -72,22 +72,30 @@ minetest.register_on_generated(function(minp, maxp, seed)
local is_flora = minetest.registered_nodes[nn].groups.flora
local is_flower = minetest.registered_nodes[nn].groups.flower
local is_growing = minetest.registered_nodes[nn].groups.growing
if is_leaves == nil or is_leaves == 0 or is_plant == nil or is_plant == 0 or is_le_plant == nil or is_le_plant == 0 or is_flora == nil or is_flora == 0 or is_flower == nil or is_flower == 0 or is_growing == nil or is_growing == 0 then
if is_leaves == nil or is_leaves == 0 then
ground_y = y
break
end
-- or is_plant == nil or is_plant == 0 or is_le_plant == nil or is_le_plant == 0 or is_flora == nil or is_flora == 0 or is_flower == nil or is_flower == 0 or is_growing == nil or is_growing == 0 then
end
end
if ground_y and ground_y >= 2 then
local p = {x=x,y=ground_y,z=z}
local ground_name = minetest.get_node(p)
local node_name = minetest.get_node(p).name
if ground_name == "default:water_source" or ground_name == "lib_materials:fluid_water_source" then return end
if ground_name == "default:water_source" or ground_name == "lib_materials:fluid_water_source" then
return
end
local ground_name = minetest.get_node(p)
local node_name = minetest.get_node(p).name
if ground_name == "default:water_source" or ground_name == "lib_materials:fluid_water_source" then
return
end
local lx = pr:next(10,30)
local lz = pr:next(10,30)
if string.match(node_name, "lib_materials:dirt_sandy") then
c_fluid_id = c_quick_source
end
--if string.match(node_name, "lib_materials:dirt_sandy") then
-- c_fluid_id = c_quick_source
--end
--if string.match(node_name, "lib_materials:sand") then
-- c_fluid_id = c_quick
--end
@ -118,7 +126,7 @@ minetest.register_on_generated(function(minp, maxp, seed)
--if string.match(node_name, "lib_materials:dirt_with_grass_warm_semihumid_highland") or string.match(node_name, "lib_materials:dirt_with_grass_temperate_semihumid_highland") then
-- c_fluid_id = c_dirty
--end
if string.match(node_name, "lib_materials:stone_bluestone") then
if string.match(node_name, "lib_materials:stone_greenstone") then
c_fluid_id = c_lava
end
if string.match(node_name, "snow") then

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,614 @@
local S = lib_materials.intllib
local __ = {name = "air",param2 = 0,prob = 0}
local S0 = {name = "lib_materials:stone_desert", param2 = 0, prob = 254}
local S1 = {name = "lib_materials:stone_desert", param2 = 0, prob = 192}
local S2 = {name = "lib_materials:stone_desert", param2 = 0, prob = 128}
local S0 = {name = "lib_materials:stone_desert", param2 = 0, prob = 96}
local D0 = {name = "lib_materials:dirt", param2 = 0, prob = 254}
lib_materials.schem_rock_desert_01 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
S0, S0, __,
__, __, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, __,
S0, S0, S0,
S0, S0, S0,
__, S0, S0
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_desert_02 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
__, S0, S0,
__, __, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, __,
S0, S0, S0,
S0, S0, S0,
__, S0, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_desert_03 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
S0, S0, S0,
__, S0, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
__, S0, S0,
__, S0, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_desert_04 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
S0, S0, S0,
__, S0, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
__, S0, S0,
__, __, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_desert_05 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
__, S0, S0,
__, __, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
__, S0, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_desert_02_01 = {
size = {x = 4,y = 5,z = 3},
data = {
S0, S0, __, __,
__, S0, __, __,
__, __, __, __,
__, __, __, __,
__, __, __, __,
S0, S0, S0, S0,
S0, S0, S0, __,
S0, S0, __, __,
__, S0, __, __,
__, S0, __, __,
__, S0, __, __,
__, S0, __, __,
__, __, __, __,
__, __, __, __,
__, __, __, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2},
{prob = 254, ypos = 3},
{prob = 254, ypos = 4}
}
}
lib_materials.schem_rock_desert_02_02 = {
size = {x = 5,y = 6,z = 5},
data = {
__, S0, __, __, __,
__, __, __, __, __,
__, __, __, __, __,
__, __, __, __, __,
__, __, __, __, __,
__, __, __, __, __,
S0, S0, S0, S0, __,
__, S0, S0, __, __,
__, __, S0, __, __,
__, __, __, __, __,
__, __, __, __, __,
__, __, __, __, __,
S0, S0, S0, S0, S0,
S0, S0, S0, S0, S0,
__, S0, S0, S0, __,
__, S0, S0, __, __,
__, __, S0, __, __,
__, __, S0, __, __,
S0, S0, S0, S0, __,
__, S0, S0, S0, __,
__, __, S0, __, __,
__, __, S0, __, __,
__, __, __, __, __,
__, __, __, __, __,
__, __, S0, __, __,
__, __, S0, __, __,
__, __, __, __, __,
__, __, __, __, __,
__, __, __, __, __,
__, __, __, __, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2},
{prob = 254, ypos = 3},
{prob = 254, ypos = 4},
{prob = 254, ypos = 5}
}
}
lib_materials.schem_rock_desert_02_03 = {
size = {x = 5,y = 4,z = 5},
data = {
__, __, S0, __, __,
__, __, __, __, __,
__, __, __, __, __,
__, __, __, __, __,
__, S0, S0, S0, __,
__, __, S0, S0, __,
__, __, S0, __, __,
__, __, __, __, __,
S0, S0, S0, S0, S0,
S0, S0, S0, S0, S0,
__, S0, S0, S0, __,
__, __, S0, __, __,
__, S0, S0, S0, __,
__, S0, S0, __, __,
__, __, S0, __, __,
__, __, __, __, __,
__, __, S0, __, __,
__, __, __, __, __,
__, __, __, __, __,
__, __, __, __, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2},
{prob = 254, ypos = 3}
}
}
lib_materials.schem_rock_desert_03_01 = {
size = {x = 9,y = 13,z = 9},
data = {
__, S0, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, S0, S0, __, __, __, S0, S0, __,
__, __, S0, __, __, __, S0, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
S0, S0, S0, S0, __, __, S0, __, __,
__, S0, S0, __, __, __, __, __, __,
__, S0, S0, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
S0, S0, S0, S0, __, __, __, __, __,
__, S0, S0, __, __, __, __, __, __,
__, S0, S0, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
S0, S0, S0, S0, S0, S0, __, S0, __,
S0, S0, S0, S0, S0, __, __, __, __,
__, S0, S0, S0, __, __, __, __, __,
__, S0, S0, S0, __, __, __, __, __,
__, __, S0, __, __, __, __, __, __,
__, __, S0, __, __, __, __, __, __,
__, __, S0, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
S0, S0, S0, S0, S0, __, S0, S0, __,
__, S0, S0, S0, __, __, __, __, __,
__, __, S0, __, __, __, __, __, __,
__, __, S0, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
S0, S0, S0, S0, __, S0, S0, __, __,
S0, S0, S0, S0, __, __, __, __, __,
__, __, S0, __, __, __, __, __, __,
__, __, S0, __, __, __, __, __, __,
__, __, S0, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, S0, S0, __, __, S0, __, __, __,
__, __, S0, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, S0, S0, S0, __, __, __, __, __,
__, __, S0, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __,
__, __, __, __, __, __, __, __, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2},
{prob = 254, ypos = 3},
{prob = 254, ypos = 4},
{prob = 254, ypos = 5},
{prob = 254, ypos = 6},
{prob = 254, ypos = 7},
{prob = 254, ypos = 8},
{prob = 254, ypos = 9},
{prob = 254, ypos = 10},
{prob = 254, ypos = 11},
{prob = 254, ypos = 12}
}
}
lib_materials.schem_rock_01 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
S0, S0, __,
__, __, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, __,
S0, S0, S0,
S0, S0, S0,
__, S0, S0
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_02 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
__, S0, S0,
__, __, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, __,
S0, S0, S0,
S0, S0, S0,
__, S0, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_03 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
S0, S0, S0,
__, S0, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
__, S0, S0,
__, S0, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_04 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
S0, S0, S0,
__, S0, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
__, S0, S0,
__, __, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_05 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
__, S0, S0,
__, __, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
__, S0, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_savanna_01 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
__, S0, S0,
__, __, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
__, S0, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_savanna_02 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
S0, S0, S0,
__, S0, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
__, S0, S0,
__, __, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_savanna_03 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
S0, S0, S0,
__, S0, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
S0, S0, S0,
__, S0, S0,
__, S0, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_savanna_04 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
__, S0, S0,
__, __, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, __,
S0, S0, S0,
S0, S0, S0,
__, S0, __
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}
lib_materials.schem_rock_savanna_05 = {
size = {x = 3,y = 3,z = 3},
data = {
S0, S0, S0,
S0, S0, __,
__, __, __,
S0, S0, S0,
S0, S0, S0,
S0, S0, __,
S0, S0, S0,
S0, S0, S0,
__, S0, S0
},
yslice_prob = {
{prob = 254, ypos = 0},
{prob = 254, ypos = 1},
{prob = 254, ypos = 2}
}
}

View File

@ -130,125 +130,3 @@ function lib_materials.node_sound_snow_defaults(table)
end
--
-- Lavacooling
--
lib_materials.cool_lava = function(pos, node)
if node.name == "default:lava_source" then
minetest.set_node(pos, {name = "default:obsidian"})
else -- Lava flowing
minetest.set_node(pos, {name = "default:stone"})
end
minetest.sound_play("default_cool_lava",
{pos = pos, max_hear_distance = 16, gain = 0.25})
end
if minetest.settings:get_bool("enable_lavacooling") ~= false then
minetest.register_abm({
label = "Lava cooling",
nodenames = {"default:lava_source", "default:lava_flowing"},
neighbors = {"group:cools_lava", "group:water"},
interval = 2,
chance = 2,
catch_up = false,
action = function(...)
lib_materials.cool_lava(...)
end,
})
end
-- -- --
-- -- -- Convert dirt to something that fits the environment
-- -- --
-- -- minetest.register_abm({
-- -- label = "Grass spread",
-- -- nodenames = {"default:dirt"},
-- -- neighbors = {
-- -- "air",
-- -- "group:grass",
-- -- "group:dry_grass",
-- -- "default:snow",
-- -- },
-- -- interval = 6,
-- -- chance = 50,
-- -- catch_up = false,
-- -- action = function(pos, node)
-- -- -- Check for darkness: night, shadow or under a light-blocking node
-- -- -- Returns if ignore above
-- -- local above = {x = pos.x, y = pos.y + 1, z = pos.z}
-- -- if (minetest.get_node_light(above) or 0) < 13 then
-- -- return
-- -- end
-- -- -- Look for spreading dirt-type neighbours
-- -- local p2 = minetest.find_node_near(pos, 1, "group:spreading_dirt_type")
-- -- if p2 then
-- -- local n3 = minetest.get_node(p2)
-- -- minetest.set_node(pos, {name = n3.name})
-- -- return
-- -- end
-- -- -- Else, any seeding nodes on top?
-- -- local name = minetest.get_node(above).name
-- -- -- Snow check is cheapest, so comes first
-- -- if name == "default:snow" then
-- -- minetest.set_node(pos, {name = "default:dirt_with_snow"})
-- -- -- Most likely case first
-- -- elseif minetest.get_item_group(name, "grass") ~= 0 then
-- -- minetest.set_node(pos, {name = "default:dirt_with_grass"})
-- -- elseif minetest.get_item_group(name, "dry_grass") ~= 0 then
-- -- minetest.set_node(pos, {name = "default:dirt_with_dry_grass"})
-- -- end
-- -- end
-- -- })
-- -- --
-- -- -- Grass and dry grass removed in darkness
-- -- --
-- -- minetest.register_abm({
-- -- label = "Grass covered",
-- -- nodenames = {"group:spreading_dirt_type"},
-- -- interval = 8,
-- -- chance = 50,
-- -- catch_up = false,
-- -- action = function(pos, node)
-- -- local above = {x = pos.x, y = pos.y + 1, z = pos.z}
-- -- local name = minetest.get_node(above).name
-- -- local nodedef = minetest.registered_nodes[name]
-- -- if name ~= "ignore" and nodedef and not ((nodedef.sunlight_propagates or
-- -- nodedef.paramtype == "light") and
-- -- nodedef.liquidtype == "none") then
-- -- minetest.set_node(pos, {name = "default:dirt"})
-- -- end
-- -- end
-- -- })
-- -- --
-- -- -- Moss growth on cobble near water
-- -- --
-- -- minetest.register_abm({
-- -- label = "Moss growth",
-- -- nodenames = {"default:cobble", "stairs:slab_cobble", "stairs:stair_cobble", "walls:cobble"},
-- -- neighbors = {"group:water"},
-- -- interval = 16,
-- -- chance = 200,
-- -- catch_up = false,
-- -- action = function(pos, node)
-- -- if node.name == "default:cobble" then
-- -- minetest.set_node(pos, {name = "default:mossycobble"})
-- -- elseif node.name == "stairs:slab_cobble" then
-- -- minetest.set_node(pos, {name = "stairs:slab_mossycobble", param2 = node.param2})
-- -- elseif node.name == "stairs:stair_cobble" then
-- -- minetest.set_node(pos, {name = "stairs:stair_mossycobble", param2 = node.param2})
-- -- elseif node.name == "walls:cobble" then
-- -- minetest.set_node(pos, {name = "walls:mossycobble", param2 = node.param2})
-- -- end
-- -- end
-- -- })

210
lib_materials_tools.lua Normal file
View File

@ -0,0 +1,210 @@
local S = lib_materials.intllib
minetest.register_tool("lib_materials:tool_club_stone", {
description = S("Stone Club"),
_doc_items_longdesc = S("Stone club for clubbing things."),
_doc_items_usagehelp = S("Use this club to club."),
image = "lib_materials_tool_club_stone.png",
inventory_image = "lib_materials_tool_club_stone.png",
tool_capabilities = {
full_punch_interval = 0.8,
max_drop_level=1,
groupcaps={
-- about equal to a stone pick (it's not intended as a tool)
diggy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
prying={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
pokey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
snappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
},
damage_groups = {fleshy=6},
}
})
minetest.register_tool("lib_materials:tool_rock_biface", {
description = S("Tool - Biface Rock"),
_doc_items_longdesc = S("Tool - Biface Rock."),
_doc_items_usagehelp = S("Tool - Biface Rock. Used to carve sticks, and to craft stone tools."),
image = "lib_materials_tool_rock_biface.png",
inventory_image = "lib_materials_tool_rock_biface.png",
tool_capabilities = {
full_punch_interval = 0.8,
max_drop_level=1,
groupcaps={
-- about equal to a stone pick (it's not intended as a tool)
diggy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
prying={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
pokey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
snappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
},
damage_groups = {fleshy=6},
}
})
minetest.register_tool("lib_materials:tool_rock_chipper", {
description = S("Stone Chipper"),
_doc_items_longdesc = S("Stone Chipper."),
_doc_items_usagehelp = S("Stone Chipper."),
image = "lib_materials_tool_rock_chipper.png",
inventory_image = "lib_materials_tool_rock_chipper.png",
tool_capabilities = {
full_punch_interval = 0.8,
max_drop_level=1,
groupcaps={
-- about equal to a stone pick (it's not intended as a tool)
diggy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
prying={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
pokey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
snappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
},
damage_groups = {fleshy=6},
}
})
minetest.register_tool("lib_materials:tool_rock_flint", {
description = S("Flint"),
_doc_items_longdesc = S("Flint."),
_doc_items_usagehelp = S("Flint."),
image = "lib_materials_tool_rock_flint.png",
inventory_image = "lib_materials_tool_rock_flint.png",
tool_capabilities = {
full_punch_interval = 0.8,
max_drop_level=1,
groupcaps={
-- about equal to a stone pick (it's not intended as a tool)
diggy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
prying={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
pokey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
snappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
},
damage_groups = {fleshy=6},
}
})
minetest.register_tool("lib_materials:tool_rock_large", {
description = S("Tool - Large Rock"),
_doc_items_longdesc = S("Tool - Large Rock."),
_doc_items_usagehelp = S("Tool - Large Rock."),
image = "lib_materials_tool_rock_large.png",
inventory_image = "lib_materials_tool_rock_large.png",
tool_capabilities = {
full_punch_interval = 0.8,
max_drop_level=1,
groupcaps={
-- about equal to a stone pick (it's not intended as a tool)
diggy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
prying={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
pokey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
snappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
chippy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
flakey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
knappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
},
damage_groups = {fleshy=6},
}
})
minetest.register_tool("lib_materials:tool_rock_pebble", {
description = S("Tool - Pebble"),
_doc_items_longdesc = S("Tool - Pebble."),
_doc_items_usagehelp = S("Tool - Pebble."),
image = "lib_materials_tool_rock_pebble.png",
inventory_image = "lib_materials_tool_rock_pebble.png",
tool_capabilities = {
full_punch_interval = 0.8,
max_drop_level=1,
groupcaps={
-- about equal to a stone pick (it's not intended as a tool)
diggy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
prying={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
pokey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
snappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
chippy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
flakey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
knappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
},
damage_groups = {fleshy=6},
}
})
minetest.register_tool("lib_materials:tool_rock_pebbles", {
description = S("Tool - Pebbles"),
_doc_items_longdesc = S("Tool - Pebbles."),
_doc_items_usagehelp = S("Tool - Pebbles."),
image = "lib_materials_tool_rock_pebbles.png",
inventory_image = "lib_materials_tool_rock_pebbles.png",
tool_capabilities = {
full_punch_interval = 0.8,
max_drop_level=1,
groupcaps={
-- about equal to a stone pick (it's not intended as a tool)
diggy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
prying={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
pokey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
snappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
chippy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
flakey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
knappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
},
damage_groups = {fleshy=6},
}
})
minetest.register_tool("lib_materials:tool_rock_pebbles_large", {
description = S("Tool - Pebbles Large"),
_doc_items_longdesc = S("Tool - Pebbles Large."),
_doc_items_usagehelp = S("Tool - Pebbles Large."),
image = "lib_materials_tool_rock_pebbles_large.png",
inventory_image = "lib_materials_tool_rock_pebbles_large.png",
tool_capabilities = {
full_punch_interval = 0.8,
max_drop_level=1,
groupcaps={
-- about equal to a stone pick (it's not intended as a tool)
diggy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
prying={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
pokey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
snappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
chippy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
flakey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
knappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
},
damage_groups = {fleshy=6},
}
})
minetest.register_tool("lib_materials:tool_rock_small", {
description = S("Tool - Small Rock"),
_doc_items_longdesc = S("Tool - Small Rock."),
_doc_items_usagehelp = S("Tool - Small Rock."),
image = "lib_materials_tool_rock_small.png",
inventory_image = "lib_materials_tool_rock_small.png",
tool_capabilities = {
full_punch_interval = 0.8,
max_drop_level=1,
groupcaps={
-- about equal to a stone pick (it's not intended as a tool)
diggy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
prying={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
pokey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
snappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
chippy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
flakey={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
knappy={times={[2]=2.00, [3]=1.20}, uses=30, maxlevel=1},
},
damage_groups = {fleshy=6},
}
})

View File

@ -1,36 +1,88 @@
function table.contains_substring(t, s)
if type(s) ~= "string" then
return nil
end
for key, value in pairs(t) do
if type(value) == 'string' and s:find(value) then
if key then
return key
else
return true
end
end
end
return false
end
function get_node_drops(fullRockNode, cobbleRockNode)
return {
max_items = 1,
items = {
{
-- drop the cobble variant with 1/3 chance
items = {cobbleRockNode},
rarity = 3,
},
{
-- drop the full node with 2/3 chance
items = {fullRockNode},
local S = lib_materials.intllib
minetest.register_node("lib_materials:ground_pebble", {
description = S("Ground - Pebble"),
drawtype = "nodebox",
waving = 1,
tiles = {"lib_materials_ground_pebble.png"},
sunlight_propagates = true,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
buildable_to = true,
stack_max = 99,
floodable = true,
groups = {chippy = 1, flakey = 1, knappy = 1},
sounds = lib_materials.node_sound_stone_defaults(),
drop = {
max_items = 1,
items = {
{items = {"lib_materials:tool_rock_large"}},
{items = {"lib_materials:tool_rock_small"}},
{items = {"lib_materials:tool_rock_chipper"}, rarity = 20},
{items = {"lib_materials:tool_rock_flint"}, rarity = 20},
}
}
}
end
},
node_box = {
type = "fixed",
fixed = {
{-0.5,-0.5,-0.5,0.5,-0.49,0.5}
}
},
})
minetest.register_node("lib_materials:ground_pebbles_large", {
description = S("Ground - Pebbles Large"),
drawtype = "nodebox",
waving = 1,
tiles = {"lib_materials_ground_pebbles_large.png"},
sunlight_propagates = true,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
buildable_to = true,
stack_max = 99,
floodable = true,
groups = {chippy = 1, flakey = 1, knappy = 1},
sounds = lib_materials.node_sound_stone_defaults(),
drop = {
max_items = 1,
items = {
{items = {"lib_materials:tool_rock_large"}},
{items = {"lib_materials:tool_rock_small"}},
{items = {"lib_materials:tool_rock_chipper"}, rarity = 20},
{items = {"lib_materials:tool_rock_flint"}, rarity = 20},
}
},
node_box = {
type = "fixed",
fixed = {
{-0.5,-0.5,-0.5,0.5,-0.49,0.5}
}
},
})
minetest.register_decoration({
deco_type = "simple",
decoration = "lib_materials:ground_pebble",
sidelen = 80,
place_on = {"group:soil", "group:sand", "group:stone"},
fill_ratio = 0.002,
flags = "place_center_x, place_center_z",
rotation = "random",
})
minetest.register_decoration({
deco_type = "simple",
decoration = "lib_materials:ground_pebbles_large",
sidelen = 80,
place_on = {"group:soil", "group:sand", "group:stone"},
fill_ratio = 0.002,
flags = "place_center_x, place_center_z",
rotation = "random",
})

View File

@ -3,7 +3,7 @@
#[mgv7 Mapgen Scale Factor (Integer. Recommended Values between 1 and 8) - Defines the scale factor for mgv7 based maps.]
#Scales mgv7 Terrain_Base and Terrain_Alt spread values.
lib_materials_mgv7_mapgen_scale_factor (mgv7 Mapgen Scale Factor (Integer. Recommended Values between 1 and 8) - Defines the scale factor for mgv7 based maps.) int 8
lib_materials_mgv7_mapgen_scale_factor (Defines the scale factor for mgv7 based maps) int 8
@ -11,7 +11,7 @@ lib_materials_mgv7_mapgen_scale_factor (mgv7 Mapgen Scale Factor (Integer. Reco
#Each Temperature/Humidy range is subdivided by altitude, (height), to further refine biome definitions. This value is used to determine
#the altitude range for these biomes.
lib_materials_biome_altitude_range (Biome Altitude Range (Integer. Recommended Value greater than +10) - Defines the height range for biomes based on altitude.) int 40
lib_materials_biome_altitude_range (Defines the height range for biomes based on altitude) int 40

View File

@ -12,6 +12,32 @@ local GRASS_SHELF_TEXTURE_SIDE = "lib_materials_grass_shelf_side.png"
local GRASS_HIGHLAND_TEXTURE_TOP = "lib_materials_grass_highland_top.png"
local GRASS_HIGHLAND_TEXTURE_SIDE = "lib_materials_grass_highland_side.png"
local GRASS_HUMID_PALETTE_1 = "#43e9a5:80"
--local GRASS_HUMID_PALETTE_2 = "#36e44b:80" --"30e87a:80"
--local GRASS_HUMID_PALETTE_3 = "#81da62:80" --"12e66c:80"
local GRASS_HUMID_PALETTE_2 = "#81da62:80"
local GRASS_HUMID_PALETTE_3 = "#36e44b:80"
local GRASS_HUMID_PALETTE_4 = "#93fc54:80" --"54da4a:80"
local GRASS_SEMIHUMID_PALETTE_1 = "#69e942:80"
--local GRASS_SEMIHUMID_PALETTE_2 = "#b1e436:80"
--local GRASS_SEMIHUMID_PALETTE_3 = "#dacf61:80"
local GRASS_SEMIHUMID_PALETTE_2 = "#dacf61:80"
local GRASS_SEMIHUMID_PALETTE_3 = "#b1e436:80"
local GRASS_SEMIHUMID_PALETTE_4 = "#fcd953:80"
local GRASS_TEMPERATE_PALETTE_1 = "#ace943:80"
--local GRASS_TEMPERATE_PALETTE_2 = "#e4d136:80"
--local GRASS_TEMPERATE_PALETTE_3 = "#daa062:80"
local GRASS_TEMPERATE_PALETTE_2 = "#daa062:80"
local GRASS_TEMPERATE_PALETTE_3 = "#e4d136:80"
local GRASS_TEMPERATE_PALETTE_4 = "#fc9754:80"
local GRASS_SEMIARID_PALETTE_1 = "#e9df43:80"
--local GRASS_SEMIARID_PALETTE_2 = "#e48836:80"
--local GRASS_SEMIARID_PALETTE_3 = "#da6e62:80"
local GRASS_SEMIARID_PALETTE_2 = "#da6e62:80"
local GRASS_SEMIARID_PALETTE_3 = "#e48836:80"
local GRASS_SEMIARID_PALETTE_4 = "#fc5458:80"
--[[
local GRASS_HUMID_PALETTE_1 = "#43e9a5:80"
local GRASS_HUMID_PALETTE_2 = "#36e44b:80"
local GRASS_HUMID_PALETTE_3 = "#81da62:80"
@ -28,6 +54,7 @@ local GRASS_SEMIARID_PALETTE_1 = "#e9df43:80"
local GRASS_SEMIARID_PALETTE_2 = "#e48836:80"
local GRASS_SEMIARID_PALETTE_3 = "#da6e62:80"
local GRASS_SEMIARID_PALETTE_4 = "#fc5458:80"
--]]
--[[ ALT COLOR VALUES
--DEFAULTS
@ -215,6 +242,7 @@ local GRASS_JUNGLE_TEXTURE_SIDE = "lib_materials_grass_jungle_01_side.png"
sounds = default.node_sound_dirt_defaults({footstep = "",
}),
})
minetest.register_craftitem("lib_materials:dirt_mud_lump", {
description = "Dirt - Mud Lump",
inventory_image = "lib_materials_dirt_mud_lump.png",
@ -224,13 +252,6 @@ local GRASS_JUNGLE_TEXTURE_SIDE = "lib_materials_grass_jungle_01_side.png"
inventory_image = "lib_materials_dirt_silt_lump.png",
})
--Default
minetest.register_node("lib_materials:dirt_permafrost", {
description = "Dirt - Permafrost",
tiles = {"lib_materials_dirt_permafrost.png"},
groups = {crumbly = 3, soil = 1},
sounds = default.node_sound_dirt_defaults(),
})
minetest.register_craftitem("lib_materials:dirt_clay_white_lump", {
description = S("Dirt - Clay Lump"),
inventory_image = "lib_materials_dirt_clay_lump.png",
@ -250,61 +271,232 @@ local GRASS_JUNGLE_TEXTURE_SIDE = "lib_materials_grass_jungle_01_side.png"
groups = {crumbly = 3},
sounds = default.node_sound_dirt_defaults()
})
minetest.register_craft({
type = "cooking",
output = "lib_materials:dirt_dried",
recipe = "default:dirt",
cooktime = 3,
})
--[[ green dirt
-- -- minetest.register_node("lib_materials:green_dirt", {
-- -- description = S("Green Dirt"),
-- -- tiles = {
-- -- "default_grass.png",
-- -- "default_dirt.png",
-- -- "default_dirt.png^default_grass_side.png"
-- -- },
-- -- is_ground_content = false,
-- -- groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
-- -- soil = {
-- -- base = "lib_materials:green_dirt",
-- -- dry = "farming:soil",
-- -- wet = "farming:soil_wet"
-- -- },
-- -- drop = "default:dirt",
-- -- sounds = default.node_sound_dirt_defaults({
-- -- footstep = {name = "default_grass_footstep", gain = 0.25},
-- -- }),
-- -- })
--]]
local dirts = {
"Bamboo", "Cold", "Crystal", "Fiery", "Gray", "Green",
"Grove", "Jungle_01", "Mushroom", "Prairie"
}
for n = 1, #dirts do
local desc = dirts[n]
local name = desc:lower()
minetest.register_node("lib_materials:dirt_with_grass_"..name, {
description = S("Dirt with Grass" .. desc),
tiles = {
"lib_materials_grass_"..name.."_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_"..name.."_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_"..name.."_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_bamboo", {
description = S("Dirt with Grass Bamboo"),
tiles = {
"lib_materials_grass_bamboo_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_bamboo_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_bamboo_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_brown", {
description = S("Dirt with Grass Brown"),
tiles = {
"lib_materials_grass_brown_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_brown_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_brown_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_cold", {
description = S("Dirt with Grass Cold"),
tiles = {
"lib_materials_grass_cold_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_cold_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_cold_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_crystal", {
description = S("Dirt with Grass Crystal"),
tiles = {
"lib_materials_grass_crystal_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_crystal_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_crystal_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_dry", {
description = S("Dirt with Grass Dry"),
tiles = {
"lib_materials_grass_dry_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_dry_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_dry_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_fiery", {
description = S("Dirt with Grass Fiery"),
tiles = {
"lib_materials_grass_fiery_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_fiery_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_fiery_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_gray", {
description = S("Dirt with Grass Gray"),
tiles = {
"lib_materials_grass_gray_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_gray_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_gray_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_green", {
description = S("Dirt with Grass Green"),
tiles = {
"lib_materials_grass_green_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_green_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_green_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_grove", {
description = S("Dirt with Grass Grove"),
tiles = {
"lib_materials_grass_grove_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_grove_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_grove_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_jungle_01", {
description = S("Dirt with Grass Jungle 01"),
tiles = {
"lib_materials_grass_jungle_01_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_jungle_01_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_jungle_01_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_mushroom", {
description = S("Dirt with Grass Mushroom"),
tiles = {
"lib_materials_grass_mushroom_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_mushroom_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_mushroom_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
minetest.register_node("lib_materials:dirt_with_grass_prairie", {
description = S("Dirt with Grass Prairie"),
tiles = {
"lib_materials_grass_prairie_top.png",
"lib_materials_dirt.png",
"lib_materials_dirt.png^lib_materials_grass_prairie_side.png"
},
is_ground_content = false,
groups = {crumbly = 3, soil = 1, lib_ecology_grass = 1},
soil = {
base = "lib_materials:dirt_with_prairie_grass",
dry = "farming:soil",
wet = "farming:soil_wet"
},
drop = "lib_materials:dirt",
sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}),
})
end
--Mapgen Dirts (farlands)
minetest.register_node("lib_materials:dirt_with_grass_fungi", {
@ -361,12 +553,12 @@ local GRASS_JUNGLE_TEXTURE_SIDE = "lib_materials_grass_jungle_01_side.png"
})
-- Rocks/Minerals mod
minetest.register_node("lib_materials:dirt_sod", {
description = "Dirt - Sod",
tiles = {"lib_materials_dirt_sod.png"},
groups = {crumbly = 3, soil = 1},
sounds = default.node_sound_dirt_defaults(),
})
-- minetest.register_node("lib_materials:dirt_sod", {
-- description = "Dirt - Sod",
-- tiles = {"lib_materials_dirt_sod.png"},
-- groups = {crumbly = 3, soil = 1},
-- sounds = default.node_sound_dirt_defaults(),
-- })
-- Add dirts
local grass_types = {
@ -395,10 +587,7 @@ local function register_dirts2(readname)
},
})
-- local itemstr_coniferous = itemstr_dirt .. "_with_coniferous_litter"
-- local itemstr_rain = itemstr_dirt .. "_with_rainforest_litter"
-- local itemstr_snow = itemstr_dirt .. "_with_snow"
minetest.register_node(itemstr_dirt .. "_with_coniferous_litter", {
minetest.register_node(itemstr_dirt .. "_with_litter_coniferous", {
description = readname .. " with Coniferous Litter",
tiles = {"lib_materials_litter_coniferous.png", tilestr, tilestr .. "^lib_materials_litter_coniferous_side.png"},
is_ground_content = true,
@ -406,7 +595,7 @@ local function register_dirts2(readname)
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_rainforest_litter", {
minetest.register_node(itemstr_dirt .. "_with_litter_rainforest", {
description = readname .. " with Rainforest Litter",
tiles = {"lib_materials_litter_rainforest.png", tilestr, tilestr .. "^lib_materials_litter_rainforest_side.png"},
is_ground_content = true,
@ -414,6 +603,46 @@ local function register_dirts2(readname)
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_litter_fungi", {
description = readname .. " with Fungal Litter",
tiles = {"lib_materials_grass_fungi_top.png", tilestr, tilestr .. "^lib_materials_grass_fungi_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_litter_leaf_01", {
description = readname .. " with Leaf Litter 01",
tiles = {tilestr .. "^lib_materials_litter_leaf_01.png", tilestr, tilestr .. "^lib_materials_litter_coniferous_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_litter_leaf_02", {
description = readname .. " with Leaf Litter 02",
tiles = {tilestr .. "^lib_materials_litter_leaf_02.png", tilestr, tilestr .. "^lib_materials_litter_coniferous_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_litter_stones", {
description = readname .. " with Stone Litter",
tiles = {tilestr .. "^lib_materials_litter_stones.png", tilestr, tilestr .. "^lib_materials_litter_stones_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_litter_vine", {
description = readname .. " with Vine Litter",
tiles = {tilestr .. "^lib_materials_litter_vine.png", tilestr, tilestr .. "^lib_materials_litter_coniferous_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_snow", {
description = readname .. " with Snow",
tiles = {"lib_materials_snow.png", tilestr, tilestr .. "^lib_materials_snow_side.png"},
@ -422,6 +651,34 @@ local function register_dirts2(readname)
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_snow_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_soil", {
description = readname .. " with Soil",
tiles = {tilestr .. "^lib_materials_dirt_with_soil.png", tilestr, tilestr},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_soil_wet", {
description = readname .. " with Wet Soil",
tiles = {tilestr .. "^lib_materials_dirt_with_soil_wet.png", tilestr, tilestr .. "^lib_materials_dirt_with_soil_wet_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_stone_cobble", {
tiles = {"lib_materials_stone_cobble_default.png^(" .. tilestr .. "^[mask:lib_materials_mask_cobble.png)"},
description = readname .. " with Stone Cobble",
is_ground_content = true,
groups = {cracky=3, stone=2},
})
minetest.register_node(itemstr_dirt .. "_with_stone", {
tiles = { "lib_materials_stone_default.png^(" .. tilestr .. "^[mask:lib_materials_mask_stone.png)" },
description = readname .. " with Stone",
is_ground_content = true,
groups = {cracky=3, stone=2},
})
minetest.register_node(itemstr_dirt .. "_with_grass_hot_humid_coastal", {
description = readname .. " with Grass (hot_humid_coastal)",
@ -940,6 +1197,64 @@ local function register_dirts2(readname)
})
end
register_dirts2("Dirt")
register_dirts2("Dirt_Black")
register_dirts2("Dirt_Brown")
register_dirts2("Dirt_Clay_Red")
register_dirts2("Dirt_Clay_White")
register_dirts2("Dirt_Clayey")
register_dirts2("Dirt_Coarse")
register_dirts2("Dirt_Dark")
register_dirts2("Dirt_Dry")
register_dirts2("Dirt_Mud_01")
register_dirts2("Dirt_Sandy")
register_dirts2("Dirt_Silt_01")
register_dirts2("Dirt_Silt_02")
register_dirts2("Dirt_Silty")
register_dirts2("Dirt_Sod")
register_dirts2("Dirt_Permafrost")
local function register_dirts(readname)
local name = readname:lower()
local itemstr_dirt = "lib_materials:" .. name
local tilestr = "lib_materials_" .. name .. ".png"
minetest.register_node(itemstr_dirt, {
description = readname,
tiles = {tilestr},
is_ground_content = true,
groups = {crumbly=3,soil=1},
sounds = default.node_sound_dirt_defaults(),
})
minetest.register_node(itemstr_dirt .. "_with_coniferous_litter", {
description = readname .. " with Coniferous Litter",
tiles = {"lib_materials_litter_coniferous.png", tilestr, tilestr .. "^lib_materials_litter_coniferous_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_rainforest_litter", {
description = readname .. " with Rainforest Litter",
tiles = {"lib_materials_litter_rainforest.png", tilestr, tilestr .. "^lib_materials_litter_rainforest_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_snow", {
description = readname .. " with Snow",
tiles = {"lib_materials_snow.png", tilestr, tilestr .. "^lib_materials_snow_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_snow_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_grass_wet_01", {
description = readname .. " Dirt with Grass (Wet 01)",
tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_1..")"},
@ -1458,61 +1773,9 @@ local function register_dirts2(readname)
end
register_dirts2("Dirt")
register_dirts2("Dirt_Brown")
register_dirts2("Dirt_Black")
register_dirts2("Dirt_Clay_Red")
register_dirts2("Dirt_Clay_White")
register_dirts2("Dirt_Clayey")
register_dirts2("Dirt_Sandy")
register_dirts2("Dirt_Silt_01")
register_dirts2("Dirt_Silt_02")
register_dirts2("Dirt_Silty")
local function register_dirts(readname)
local name = readname:lower()
local itemstr_dirt = "lib_materials:" .. name
local tilestr = "lib_materials_" .. name .. ".png"
minetest.register_node(itemstr_dirt, {
description = readname,
tiles = {tilestr},
is_ground_content = true,
groups = {crumbly=3,soil=1},
sounds = default.node_sound_dirt_defaults(),
})
minetest.register_node(itemstr_dirt .. "_with_coniferous_litter", {
description = readname .. " with Coniferous Litter",
tiles = {"lib_materials_litter_coniferous.png", tilestr, tilestr .. "^lib_materials_litter_coniferous_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_rainforest_litter", {
description = readname .. " with Rainforest Litter",
tiles = {"lib_materials_litter_rainforest.png", tilestr, tilestr .. "^lib_materials_litter_rainforest_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}),
})
minetest.register_node(itemstr_dirt .. "_with_snow", {
description = readname .. " with Snow",
tiles = {"lib_materials_snow.png", tilestr, tilestr .. "^lib_materials_snow_side.png"},
is_ground_content = true,
groups = {crumbly=3,soil=1},
drop = itemstr_dirt,
sounds = lib_materials.node_sound_dirt_defaults({footstep = {name="default_snow_footstep", gain=0.25},}),
})
end
register_dirts("Dirt_Coarse")
register_dirts("Dirt_Dark")
register_dirts("Dirt_Dry")
register_dirts("Dirt_Mud_01")
--register_dirts("Dirt_Coarse")
--register_dirts("Dirt_Dark")
--register_dirts("Dirt_Dry")
--register_dirts("Dirt_Mud_01")

View File

@ -134,6 +134,189 @@ minetest.register_node("lib_materials:fluid_liquid_flowing", {
sounds = lib_materials.node_sound_water_defaults(),
})
--Lava
minetest.register_node("lib_materials:lava_source", {
description = "Lava Source",
drawtype = "liquid",
tiles = {
{
name = "lib_materials_fluid_lava_source_animated.png",
backface_culling = false,
animation = {
type = "vertical_frames",
aspect_w = 16,
aspect_h = 16,
length = 3.0,
},
},
{
name = "lib_materials_fluid_lava_source_animated.png",
backface_culling = true,
animation = {
type = "vertical_frames",
aspect_w = 16,
aspect_h = 16,
length = 3.0,
},
},
},
paramtype = "light",
light_source = 13,
walkable = false,
pointable = false,
diggable = false,
buildable_to = true,
is_ground_content = false,
drop = "",
drowning = 1,
liquidtype = "source",
liquid_alternative_flowing = "lib_materials:lava_flowing",
liquid_alternative_source = "lib_materials:lava_source",
liquid_viscosity = 7,
liquid_renewable = false,
damage_per_second = 4 * 2,
post_effect_color = {a = 191, r = 255, g = 64, b = 0},
groups = {lava = 3, liquid = 2, igniter = 1},
})
minetest.register_node("lib_materials:lava_flowing", {
description = "Flowing Lava",
drawtype = "flowingliquid",
tiles = {"lib_materials_fluid_lava.png"},
special_tiles = {
{
name = "lib_materials_fluid_lava_flowing_animated.png",
backface_culling = false,
animation = {
type = "vertical_frames",
aspect_w = 16,
aspect_h = 16,
length = 3.3,
},
},
{
name = "lib_materials_fluid_lava_flowing_animated.png",
backface_culling = true,
animation = {
type = "vertical_frames",
aspect_w = 16,
aspect_h = 16,
length = 3.3,
},
},
},
paramtype = "light",
paramtype2 = "flowingliquid",
light_source = 12,
walkable = false,
pointable = false,
diggable = false,
buildable_to = true,
is_ground_content = false,
drop = "",
drowning = 1,
liquidtype = "flowing",
liquid_alternative_flowing = "lib_materials:lava_flowing",
liquid_alternative_source = "lib_materials:lava_source",
liquid_viscosity = 7,
liquid_renewable = false,
damage_per_second = 4 * 2,
post_effect_color = {a = 191, r = 255, g = 64, b = 0},
groups = {lava = 3, liquid = 2, igniter = 1, not_in_creative_inventory = 1},
})
minetest.register_node("lib_materials:lava_cooling_source", {
description = "Lava Cooling Source",
drawtype = "liquid",
tiles = {
{
name = "lib_materials_stone_cobble_default.png^(lib_materials_fluid_lava_source_animated.png^[mask:lib_materials_mask_cobble.png)",
backface_culling = false,
animation = {
type = "vertical_frames",
aspect_w = 16,
aspect_h = 16,
length = 3.0,
},
},
{
name = "lib_materials_stone_cobble_default.png^(lib_materials_fluid_lava_source_animated.png^[mask:lib_materials_mask_cobble.png)",
backface_culling = true,
animation = {
type = "vertical_frames",
aspect_w = 16,
aspect_h = 16,
length = 3.0,
},
},
},
paramtype = "light",
light_source = 10,
walkable = false,
pointable = false,
diggable = false,
buildable_to = true,
is_ground_content = false,
drop = "",
drowning = 1,
liquidtype = "source",
liquid_alternative_flowing = "lib_materials:lava_cooling_flowing",
liquid_alternative_source = "lib_materials:lava_cooling_source",
liquid_viscosity = 97,
liquid_renewable = false,
liquid_range = 1,
damage_per_second = 4 * 2,
post_effect_color = {a = 191, r = 255, g = 64, b = 0},
groups = {lava = 3, liquid = 1, igniter = 1, crumbly = 3},
})
minetest.register_node("lib_materials:lava_cooling_flowing", {
description = "Lava Cooling Flowing",
drawtype = "flowingliquid",
tiles = {"lib_materials_stone_cobble_default.png^(lib_materials_fluid_lava.png^[mask:lib_materials_mask_cobble.png)"},
special_tiles = {
{
name = "lib_materials_stone_cobble_default.png^(lib_materials_fluid_lava_flowing_animated.png^[mask:lib_materials_mask_cobble.png)",
backface_culling = false,
animation = {
type = "vertical_frames",
aspect_w = 16,
aspect_h = 16,
length = 3.3,
},
},
{
name = "lib_materials_stone_cobble_default.png^(lib_materials_fluid_lava_flowing_animated.png^[mask:lib_materials_mask_cobble.png)",
backface_culling = true,
animation = {
type = "vertical_frames",
aspect_w = 16,
aspect_h = 16,
length = 3.3,
},
},
},
paramtype = "light",
paramtype2 = "flowingliquid",
light_source = 8,
walkable = false,
pointable = false,
diggable = false,
buildable_to = true,
is_ground_content = false,
drop = "",
drowning = 1,
liquidtype = "flowing",
liquid_alternative_flowing = "lib_materials:lava_cooling_flowing",
liquid_alternative_source = "lib_materials:lava_cooling_source",
liquid_viscosity = 7,
liquid_renewable = false,
liquid_range = 3,
damage_per_second = 4 * 2,
post_effect_color = {a = 191, r = 255, g = 64, b = 0},
groups = {lava = 3, liquid = 1, igniter = 1, crumbly = 3, not_in_creative_inventory = 1},
})
--Water
minetest.register_node("lib_materials:fluid_water_source", {
description = S("Water Source"),
@ -222,6 +405,7 @@ minetest.register_node("lib_materials:fluid_water_flowing", {
groups = {water = 3, liquid = 3, cools_lava = 1, puts_out_fire = 1, not_in_creative_inventory = 1},
sounds = lib_materials.node_sound_water_defaults(),
})
minetest.register_node("lib_materials:fluid_water_river_source", {
description = S("River Water Source"),
drawtype = "liquid",
@ -313,7 +497,6 @@ minetest.register_node("lib_materials:fluid_water_river_flowing", {
sounds = lib_materials.node_sound_water_defaults(),
})
minetest.register_node("lib_materials:fluid_water_dirty_source", {
description = S("Dirty Water Source"),
drawtype = "liquid",
@ -405,6 +588,7 @@ minetest.register_node("lib_materials:fluid_water_dirty_flowing", {
groups = {water = 3, liquid = 3, cools_lava = 1, puts_out_fire = 1, not_in_creative_inventory = 1},
sounds = lib_materials.node_sound_water_defaults(),
})
minetest.register_node("lib_materials:fluid_water_murky_source", {
description = S("Murky Water Source"),
drawtype = "liquid",
@ -869,7 +1053,7 @@ minetest.register_node("lib_materials:fluid_grease_source", {
minetest.register_node("lib_materials:fluid_grease_flowing", {
description = "Flowing Grease",
drawtype = "flowingliquid",
tiles = {"lib_materials_grease.png"},
tiles = {"lib_materials_fluid_grease_source.png"},
special_tiles = {
{
name = "steampunk_grease_flowing_animated.png",

View File

@ -28,8 +28,8 @@ minetest.register_craft({
}
})
minetest.register_node("lib_materials:snow", {
description = "Snow",
minetest.register_node("lib_materials:snowball", {
description = "Snowball",
tiles = {"lib_materials_snow.png"},
inventory_image = "lib_materials_snowball.png",
wield_image = "lib_materials_snowball.png",
@ -54,14 +54,14 @@ minetest.register_node("lib_materials:snow", {
on_construct = function(pos)
pos.y = pos.y - 1
if minetest.get_node(pos).name == "default:dirt_with_grass" then
minetest.set_node(pos, {name = "default:dirt_with_snow"})
end
--if minetest.get_node(pos).name == "default:dirt_with_grass" then
minetest.set_node(pos, {name = "lib_materials:dirt_with_snow"})
--end
end,
})
minetest.register_node("lib_materials:snow_block", {
description = "Snow Block",
minetest.register_node("lib_materials:snow", {
description = "Snow",
tiles = {"lib_materials_snow.png"},
groups = {crumbly = 3, puts_out_fire = 1, cools_lava = 1, snowy = 1},
sounds = default.node_sound_dirt_defaults({
@ -79,8 +79,8 @@ minetest.register_node("lib_materials:snow_block", {
})
-- Ice
minetest.register_node("lib_materials:ice_default", {
description = "Ice - Default",
minetest.register_node("lib_materials:ice", {
description = "Ice",
tiles = {"lib_materials_ice.png"},
is_ground_content = false,
paramtype = "light",
@ -88,8 +88,8 @@ minetest.register_node("lib_materials:ice_default", {
sounds = default.node_sound_glass_defaults(),
})
minetest.register_node("lib_materials:ice_default2", {
description = "Ice - Default 2",
minetest.register_node("lib_materials:ice_2", {
description = "Ice 2",
tiles = {"lib_materials_ice2.png"},
is_ground_content = false,
paramtype = "light",

View File

@ -4,13 +4,13 @@ local S = lib_materials.intllib
minetest.register_node("lib_materials:sand", {
description = "Sand - Sand Default",
tiles = {"lib_materials_sand_sand_default.png"},
tiles = {"lib_materials_sand_default.png"},
groups = {crumbly = 3, falling_node = 1, sand = 1},
sounds = default.node_sound_sand_defaults(),
})
minetest.register_node("lib_materials:sand_beach", {
description = "Sand - Beach",
tiles = {"lib_materials_sand_sand_default.png"},
tiles = {"lib_materials_sand_default.png"},
groups = {crumbly = 3, falling_node = 1, sand = 1},
sounds = default.node_sound_sand_defaults(),
})

View File

@ -71,18 +71,18 @@ end
is_ground_content = true,
groups = {cracky=3, stone=2},
})
minetest.register_node("lib_materials:dirt_cobble_stone", {
tiles = {"lib_materials_stone_cobble_default.png^(lib_materials_dirt.png^[mask:lib_materials_mask_cobble.png)"},
description = "Dirt Cobble Stone",
is_ground_content = true,
groups = {cracky=3, stone=2},
})
minetest.register_node("lib_materials:dirt_stone", {
tiles = { "lib_materials_stone_default.png^(lib_materials_dirt.png^[mask:lib_materials_mask_stone.png)" },
description = "Dirt Stone",
is_ground_content = true,
groups = {cracky=3, stone=2},
})
-- minetest.register_node("lib_materials:dirt_cobble_stone", {
-- tiles = {"lib_materials_stone_cobble_default.png^(lib_materials_dirt.png^[mask:lib_materials_mask_cobble.png)"},
-- description = "Dirt Cobble Stone",
-- is_ground_content = true,
-- groups = {cracky=3, stone=2},
-- })
-- minetest.register_node("lib_materials:dirt_stone", {
-- tiles = { "lib_materials_stone_default.png^(lib_materials_dirt.png^[mask:lib_materials_mask_stone.png)" },
-- description = "Dirt Stone",
-- is_ground_content = true,
-- groups = {cracky=3, stone=2},
-- })
minetest.register_node("lib_materials:sand_with_stone_desert", {
tiles = { "lib_materials_stone_desert_default.png^(lib_materials_sand_desert_default.png^[mask:lib_materials_mask_stone.png)" },
description = "Desert Sand with Desert Stone",
@ -235,6 +235,14 @@ end
groups = {cracky = 3, stone = 2},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("lib_materials:stone_cobble_hot", {
description = S("Stone - Cobble Hot"),
tiles = {"lib_materials_stone_cobble_hot.png"},
is_ground_content = false,
groups = {cracky = 3, stone = 2},
sounds = default.node_sound_stone_defaults(),
damage_per_second = 2 * 2,
})
minetest.register_node("lib_materials:stone_cobble_small", {
description = S("Stone - Cobble Small"),
tiles = {"lib_materials_stone_default_cobble_small.png"},
@ -309,6 +317,13 @@ end
groups = {cracky = 3, stone = 2},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("lib_materials:stone_desert_gravel", {
description = S("Stone - Desert Gravel"),
tiles = {"lib_materials_stone_desert_gravel.png"},
is_ground_content = false,
groups = {cracky = 3, stone = 2},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("lib_materials:stone_desert_rockwall", {
description = S("Stone - Desert Rockwall"),
tiles = {"lib_materials_stone_desert_rockwall.png"},
@ -459,7 +474,13 @@ end
description = S("Stone - Basalt 01"),
tiles = {"lib_materials_stone_basalt_01.png"},
is_ground_content = true,
drop = get_node_drops("lib_materials:stone_basalt_01","lib_materials:stone_basalt_01_cobble"),
drop = {
max_items = 1,
items = {
{items = {"lib_materials:stone_basalt_01_cobble"}},
{items = {"lib_materials:stone_basalt_01"}, rarity = 20},
}
},
groups = {cracky = 3, stone = 1},
sounds = default.node_sound_stone_defaults()
})
@ -541,7 +562,13 @@ end
tiles = {"lib_materials_stone_gneiss_01.png"},
is_ground_content = true,
groups = {cracky = 3, stone = 1},
drop = get_node_drops("lib_materials:stone_gneiss_01", "lib_materials:stone_gneiss_01_cobble"),
drop = {
max_items = 1,
items = {
{items = {"lib_materials:stone_gneiss_01_cobble"}},
{items = {"lib_materials:stone_gneiss_01"}, rarity = 20},
}
},
sounds = default.node_sound_stone_defaults()
})
minetest.register_node("lib_materials:stone_gneiss_01_block", {
@ -587,9 +614,9 @@ end
groups = {cracky = 3, stone = 1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("lib_materials:stone_granite_brown", {
description = S("Stone - Granite Brown"),
tiles = {"lib_materials_stone_granite_brown.png"},
minetest.register_node("lib_materials:stone_granite_02_block", {
description = S("Stone - Granite 02 Block"),
tiles = {"lib_materials_stone_granite_02_block.png"},
groups = {cracky = 3, stone = 1},
sounds = default.node_sound_stone_defaults(),
})
@ -600,6 +627,43 @@ end
sounds = default.node_sound_stone_defaults(),
groups = {cracky=3, stone=1},
})
minetest.register_node("lib_materials:stone_granite_04", {
description = S("Stone - Granite 04"),
tiles = {"lib_materials_stone_granite_04.png" },
is_ground_content = true,
sounds = default.node_sound_stone_defaults(),
groups = {cracky=3, stone=1},
})
minetest.register_node("lib_materials:stone_granite_black", {
description = S("Stone - Granite Black"),
tiles = {"lib_materials_stone_granite_black.png"},
groups = {cracky = 3, stone = 1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("lib_materials:stone_granite_brown", {
description = S("Stone - Granite Brown"),
tiles = {"lib_materials_stone_granite_brown.png"},
groups = {cracky = 3, stone = 1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("lib_materials:stone_granite_brown_block", {
description = S("Stone - Granite Brown Block"),
tiles = {"lib_materials_stone_granite_brown_block.png"},
groups = {cracky = 3, stone = 1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("lib_materials:stone_granite_brown_02", {
description = S("Stone - Granite Brown 02"),
tiles = {"lib_materials_stone_granite_brown_02.png"},
groups = {cracky = 3, stone = 1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("lib_materials:stone_granite_pink", {
description = S("Stone - Granite Pink"),
tiles = {"lib_materials_stone_granite_pink.png"},
groups = {cracky = 3, stone = 1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node("lib_materials:stone_laterite", {
description = S("Stone - Laterite clay"),
tiles = {"lib_materials_stone_laterite.png" },