diff --git a/depends.txt b/depends.txt index b75e061..54897ce 100644 --- a/depends.txt +++ b/depends.txt @@ -1,2 +1,3 @@ default? -carpathian_mapgen? +stairs? +game? \ No newline at end of file diff --git a/init.lua b/init.lua index 2f8fea6..6080112 100644 --- a/init.lua +++ b/init.lua @@ -1,132 +1,103 @@ lib_materials = {} - +lib_materials.version = "5.0" lib_materials.path = minetest.get_modpath(minetest.get_current_modname()) -lib_materials.gettext, lib_materials.ngettext = dofile(lib_materials.path.."/intllib.lua") -local S = lib_materials.gettext -local NS = lib_materials.ngettext + +-- Intllib +local S +local NS +if minetest.get_modpath("game") then + S = game.intllib +else + if minetest.get_modpath("intllib") then + S = intllib.Getter() + else + S, NS = dofile(lib_materials.path.."/intllib.lua") + end +end +lib_materials.intllib = S + +lib_materials.mgv7_mapgen_scale_factor = minetest.setting_get("lib_materials_mgv7_mapgen_scale_factor") or 8 +lib_materials.biome_altitude_range = minetest.setting_get("lib_materials_biome_altitude_range") or 40 + +lib_materials.mg_params = minetest.get_mapgen_params() +lib_materials.mg_seed = lib_materials.mg_params.seed +--DEFAULTS +-- -192, -4, 0, 4, 30, 60, 90, 120, 150, 285, 485, 1250 +-- -192, -4, 0, 4, 40, 80, 120, 160, 200, 380, 780, 1800 +lib_materials.ocean_depth = -192 +lib_materials.beach_depth = -4 +lib_materials.sea_level = 0 +lib_materials.maxheight_beach = 4 +--lib_materials.maxheight_coastal = 30 +--lib_materials.maxheight_lowland = 60 +--lib_materials.maxheight_shelf = 90 +--lib_materials.maxheight_highland = 120 +--lib_materials.maxheight_mountain = 150 +lib_materials.maxheight_coastal = lib_materials.sea_level + lib_materials.biome_altitude_range +lib_materials.maxheight_lowland = lib_materials.maxheight_coastal + lib_materials.biome_altitude_range +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 = 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 = 100 +lib_materials.temperature_warm = 75 +lib_materials.temperature_temperate = 50 +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 = 25 +lib_materials.humidity_arid = 0 + +-- 8, 4 +--lib_materials.biome_vertical_blend = 4 +lib_materials.biome_vertical_blend = lib_materials.biome_altitude_range / 5 + +minetest.clear_registered_biomes() +minetest.clear_registered_decorations() +minetest.clear_registered_ores() + +minetest.log(S("[MOD] lib_materials: Loading...")) + +dofile(lib_materials.path.."/lib_materials_sound_defaults.lua") + +dofile(lib_materials.path.."/type_fluids.lua") +dofile(lib_materials.path.."/type_stone.lua") +dofile(lib_materials.path.."/type_stone_deco.lua") +dofile(lib_materials.path.."/type_dirt.lua") +dofile(lib_materials.path.."/type_sand.lua") +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_utils.lua") -dofile(lib_materials.path.."/lib_materials_water.lua") - -dofile(lib_materials.path.."/type_dirt.lua") - -dofile(lib_materials.path.."/type_sand.lua") - -dofile(lib_materials.path.."/type_ore.lua") - -dofile(lib_materials.path.."/type_stone.lua") - -dofile(lib_materials.path.."/lib_materials_ore_defs.lua") - - - - ---[[ - -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 +dofile(lib_materials.path.."/lib_materials_abms.lua") +dofile(lib_materials.path.."/lib_materials_chatcommands.lua") +minetest.log(S("[MOD] lib_materials: Successfully loaded.")) diff --git a/lib_materials_abms.lua b/lib_materials_abms.lua new file mode 100644 index 0000000..0c93a30 --- /dev/null +++ b/lib_materials_abms.lua @@ -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 +}) + + diff --git a/lib_materials_biomes.lua b/lib_materials_biomes.lua new file mode 100644 index 0000000..61c1f5c --- /dev/null +++ b/lib_materials_biomes.lua @@ -0,0 +1,1119 @@ +-- +-- Register biomes +-- + +local add_biome = function(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) + + minetest.register_biome({ + name = a, + node_dust = b, + node_top = c, + depth_top = d, + node_filler = e, + depth_filler = f, + node_stone = g, + node_water_top = h, + depth_water_top = i, + node_water = j, + node_river_water = k, + y_min = l, + y_max = m, + vertical_blend = lib_materials.biome_vertical_blend, + heat_point = n, + humidity_point = o, + }) + +end + + +--TEMP BIOMES +--[[ +--]] +--BIOME: hot_ +local add_biomes_hot_humid = function() + --BIOME: hot_humid + --add_biome("hot_humid", nil, "lib_materials:dirt_clayey_with_rainforest_litter", 1, "lib_materials:dirt_clayey", 4, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_hot, lib_materials.humidity_humid) + --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: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) + add_biome("hot_humid_shelf", nil, "lib_materials:dirt_with_grass_hot_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_hot, lib_materials.humidity_humid) + add_biome("hot_humid_highland", nil, "lib_materials:dirt_with_grass_hot_humid_highland", 1, "lib_materials:dirt", 3, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_hot, lib_materials.humidity_humid) + + add_biome("hot_humid_mountain", nil, "lib_materials:stone_brown", 10, "lib_materials:stone_basalt_01", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_hot, lib_materials.humidity_humid) + add_biome("hot_humid_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_humid) + + --add_biome("hot_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_hot, lib_materials.humidity_humid) + --add_biome("hot_humid_sky", nil, "lib_clouds:cloud_cirrus", 3, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_hot, lib_materials.humidity_humid) +end + +local add_biomes_hot_semihumid = function() + --BIOME: hot_semihumid + --add_biome("hot_semihumid", nil, "lib_materials:dirt_clayey_with_coniferous_litter", 1, "lib_materials:dirt_clayey", 4, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_hot, lib_materials.humidity_semihumid) + --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: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) + add_biome("hot_semihumid_shelf", nil, "lib_materials:dirt_with_grass_hot_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_hot, lib_materials.humidity_semihumid) + add_biome("hot_semihumid_highland", nil, "lib_materials:dirt_with_grass_hot_semihumid_highland", 1, "lib_materials:dirt_coarse", 3, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_hot, lib_materials.humidity_semihumid) + + add_biome("hot_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_hot, lib_materials.humidity_semihumid) + add_biome("hot_semihumid_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_semihumid) + + --add_biome("hot_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_hot, lib_materials.humidity_semihumid) + --add_biome("hot_semihumid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_hot, lib_materials.humidity_semihumid) +end + +local add_biomes_hot_temperate = function() + --BIOME: hot_temperate + --add_biome("hot_temperate", nil, "lib_materials:dirt_clayey_with_grass", 1, "lib_materials:dirt_clayey", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_hot, lib_materials.humidity_temperate) + --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: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) + add_biome("hot_temperate_shelf", nil, "lib_materials:dirt_with_grass_hot_temperate_shelf", 1, "lib_materials:dirt_coarse", 4, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_hot, lib_materials.humidity_temperate) + add_biome("hot_temperate_highland", nil, "lib_materials:dirt_with_grass_hot_temperate_highland", 1, "lib_materials:dirt_clay_red", 3, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_hot, lib_materials.humidity_temperate) + + add_biome("hot_temperate_mountain", nil, "lib_materials:stone_desert", 10, "default:stone_sand", 20, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_hot, lib_materials.humidity_temperate) + add_biome("hot_temperate_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_temperate) + + --add_biome("hot_temperate_volcanic", nil, "lib_materials:stone_basalt_01_cobble", 1, "lib_materials:stone_basalt_01", 4, "default:lava", nil, nil, nil, nil, 140, 140, lib_materials.temperature_hot, lib_materials.humidity_temperate) + --add_biome("hot_temperate_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_hot, lib_materials.humidity_temperate) +end + +local add_biomes_hot_semiarid = function() + --BIOME: hot_semiarid + --add_biome("hot_semiarid", nil, "lib_materials:dirt_clayey_with_dry_grass", 1, "lib_materials:dirt_clayey", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_hot, lib_materials.humidity_semiarid) + --add_biome("hot_semiarid_generic", nil, "lib_materials:dirt_clayey_with_dry_grass", 1, "lib_materials:dirt_clayey", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_hot, lib_materials.humidity_semiarid) + --add_biome("hot_semiarid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_sand", nil, nil, nil, nil, -6000, -192, lib_materials.temperature_hot, lib_materials.humidity_semiarid) + + add_biome("hot_semiarid_ocean", nil, "lib_materials:sand", 2, "lib_materials:sand", 4, "lib_materials:stone_sand", nil, nil, nil, nil, -192, -4, lib_materials.temperature_hot, lib_materials.humidity_semiarid) + add_biome("hot_semiarid_beach", nil, "lib_materials:sand_beach", 1, "lib_materials:dirt_clayey", 4, "lib_materials:stone_sand", nil, nil, nil, nil, -4, 4, lib_materials.temperature_hot, lib_materials.humidity_semiarid) + + add_biome("hot_semiarid_coastal", nil, "lib_materials:dirt_with_grass_hot_semiarid_coastal", 1, "lib_materials:dirt", 6, "lib_materials:stone_sand", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_hot, lib_materials.humidity_semiarid) + add_biome("hot_semiarid_lowland", nil, "lib_materials:dirt_with_grass_hot_semiarid_lowland", 1, "lib_materials:dirt_coarse", 5, "lib_materials:stone_sand", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_hot, lib_materials.humidity_semiarid) + add_biome("hot_semiarid_shelf", nil, "lib_materials:dirt_with_grass_hot_semiarid_shelf", 1, "lib_materials:dirt_clay_red", 4, "lib_materials:stone_sand", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_hot, lib_materials.humidity_semiarid) + add_biome("hot_semiarid_highland", nil, "lib_materials:dirt_with_grass_hot_semiarid_highland", 1, "lib_materials:dirt_clayey", 3, "lib_materials:stone_sand", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_hot, lib_materials.humidity_semiarid) + + add_biome("hot_semiarid_mountain", nil, "lib_materials:stone_sandstone_desert", 10, "lib_materials:stone_desert", 20, "lib_materials:stone_sand", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_hot, lib_materials.humidity_semiarid) + add_biome("hot_semiarid_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_semiarid) + + --add_biome("hot_semiarid_volcanic", nil, "lib_materials:stone_basalt_01_cobble", 1, "lib_materials:stone_basalt_01", 4, "default:lava", nil, nil, nil, nil, 140, 140, lib_materials.temperature_hot, lib_materials.humidity_semiarid) + --add_biome("hot_semiarid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_hot, lib_materials.humidity_semiarid) +end + +local add_biomes_hot_arid = function() + --BIOME: hot_arid + --add_biome("hot_arid", nil, "default:desert_sand", 1, "lib_materials:stone_brown", 4, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_hot, lib_materials.humidity_arid) + --add_biome("hot_arid_generic", nil, "default:desert_sand", 1, "lib_materials:stone_brown", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_hot, lib_materials.humidity_arid) + --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: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_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) + + --add_biome("hot_arid_volcanic", nil, "lib_materials:stone_basalt_01_cobble", 1, "lib_materials:stone_basalt_01", 4, "default:lava", nil, nil, nil, nil, 140, 140, lib_materials.temperature_hot, lib_materials.humidity_arid) + --add_biome("hot_arid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_hot, lib_materials.humidity_arid) +end + + + +--BIOME: warm_ +local add_biomes_warm_humid = function() + --BIOME: warm_humid + --add_biome("warm_humid", nil, "lib_materials:dirt_dark_with_rainforest_litter", 1, "lib_materials:dirt_dark", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_warm, lib_materials.humidity_humid) + --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: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) + add_biome("warm_humid_lowland", nil, "lib_materials:dirt_with_grass_warm_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_warm, lib_materials.humidity_humid) + add_biome("warm_humid_shelf", nil, "lib_materials:dirt_with_grass_warm_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_warm, lib_materials.humidity_humid) + add_biome("warm_humid_highland", nil, "lib_materials:dirt_with_grass_warm_humid_highland", 1, "lib_materials:dirt", 3, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_warm, lib_materials.humidity_humid) + + add_biome("warm_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_warm, lib_materials.humidity_humid) + add_biome("warm_humid_strato", nil, "lib_materials:stone_sandstone_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_warm, lib_materials.humidity_humid) + + --add_biome("warm_humid_volcanic", nil, "lib_materials:stone_basalt_01_cobble", 1, "lib_materials:stone_basalt_01", 4, "default:lava", nil, nil, nil, nil, 140, 140, lib_materials.temperature_warm, lib_materials.humidity_humid) + --add_biome("warm_semihumid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_warm, lib_materials.humidity_humid) +end + +local add_biomes_warm_semihumid = function() + --BIOME: warm_semihumid + --add_biome("warm_semihumid", nil, "lib_materials:dirt_dark_with_coniferous_litter", 1, "lib_materials:dirt_dark", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_warm, lib_materials.humidity_semihumid) + --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: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) + add_biome("warm_semihumid_lowland", nil, "lib_materials:dirt_with_grass_warm_semihumid_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_warm, lib_materials.humidity_semihumid) + add_biome("warm_semihumid_shelf", nil, "lib_materials:dirt_with_grass_warm_semihumid_shelf", 1, "lib_materials:dirt_coarse", 4, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_warm, lib_materials.humidity_semihumid) + add_biome("warm_semihumid_highland", nil, "lib_materials:dirt_with_grass_warm_semihumid_highland", 1, "lib_materials:dirt_dry", 3, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_warm, lib_materials.humidity_semihumid) + + add_biome("warm_semihumid_mountain", nil, "lib_materials:stone_granite_brown", 10, "lib_materials:stone_andesite", 20, "lib_materials:stone_basalt_01", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_warm, lib_materials.humidity_semihumid) + add_biome("warm_semihumid_strato", nil, "lib_materials:stone_sandstone_desert", 15, "lib_materials:stone_granite_brown", 25, "lib_materials:stone_andesite", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_warm, lib_materials.humidity_semihumid) + + --add_biome("warm_semihumid_volcanic", nil, "lib_materials:stone_basalt_01_cobble", 1, "lib_materials:stone_basalt_01", 4, "default:lava", nil, nil, nil, nil, 140, 140, lib_materials.temperature_warm, lib_materials.humidity_semihumid) + --add_biome("warm_semihumid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_warm, lib_materials.humidity_semihumid) +end + +local add_biomes_warm_temperate = function() + --BIOME: warm_temperate + --add_biome("warm_temperate", nil, "lib_materials:dirt_dark_with_grass", 1, "lib_materials:dirt_dark", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_warm, lib_materials.humidity_temperate) + --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: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) + add_biome("warm_temperate_lowland", nil, "lib_materials:dirt_with_grass_warm_temperate_lowland", 1, "lib_materials:dirt", 5, "lib_materials:stone_limestone_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_warm, lib_materials.humidity_temperate) + add_biome("warm_temperate_shelf", nil, "lib_materials:dirt_with_grass_warm_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_warm, lib_materials.humidity_temperate) + add_biome("warm_temperate_highland", nil, "lib_materials:dirt_with_grass_warm_temperate_highland", 1, "lib_materials:dirt_clay_red", 3, "lib_materials:stone_limestone_01", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_warm, lib_materials.humidity_temperate) + + add_biome("warm_temperate_mountain", nil, "lib_materials:stone_sandstone_desert", 10, "lib_materials:stone_sand", 20, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_warm, lib_materials.humidity_temperate) + add_biome("warm_temperate_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_warm, lib_materials.humidity_temperate) + + --add_biome("warm_temperate_volcanic", nil, "air", 2, "air", 4, "default:lava_source", nil, nil, nil, nil, 140, 140, 15, 15) + --add_biome("warm_temperate_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_warm, lib_materials.humidity_temperate) +end + +local add_biomes_warm_semiarid = function() + --BIOME: warm_semiarid + --add_biome("warm_semiarid", nil, "lib_materials:dirt_dark_with_dry_grass", 1, "lib_materials:dirt_dark", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_warm, lib_materials.humidity_semiarid) + --add_biome("warm_semiarid_generic", nil, "lib_materials:dirt_dark_with_dry_grass", 1, "lib_materials:dirt_dark", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_warm, lib_materials.humidity_semiarid) + --add_biome("warm_semiarid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_desert", nil, nil, nil, nil, -lib_materials.humidity_temperate00, -192, lib_materials.temperature_warm, lib_materials.humidity_semiarid) + + add_biome("warm_semiarid_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_semiarid) + add_biome("warm_semiarid_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_semiarid) + + add_biome("warm_semiarid_coastal", nil, "lib_materials:dirt_with_grass_warm_semiarid_coastal", 1, "lib_materials:dirt", 4, "lib_materials:stone_desert", nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_warm, lib_materials.humidity_semiarid) + add_biome("warm_semiarid_lowland", nil, "lib_materials:dirt_with_grass_warm_semiarid_lowland", 1, "lib_materials:dirt_coarse", 4, "lib_materials:stone_desert", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_warm, lib_materials.humidity_semiarid) + add_biome("warm_semiarid_shelf", nil, "lib_materials:dirt_with_grass_warm_semiarid_shelf", 1, "lib_materials:dirt_clay_red", 4, "lib_materials:stone_desert", nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_warm, lib_materials.humidity_semiarid) + add_biome("warm_semiarid_highland", nil, "lib_materials:dirt_with_grass_warm_semiarid_highland", 1, "lib_materials:dirt_clayey", 4, "lib_materials:stone_desert", nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_warm, lib_materials.humidity_semiarid) + + add_biome("warm_semiarid_mountain", nil, "lib_materials:stone_sandstone_desert", 10, "lib_materials:stone_sand", 20, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_warm, lib_materials.humidity_semiarid) + add_biome("warm_semiarid_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_warm, lib_materials.humidity_semiarid) + + --add_biome("warm_semiarid_volcanic", nil, "lib_materials:dirt_dark_with_grass", 1, "lib_materials:dirt_dark", 4, "lib_materials:stone_limestone_01", nil, nil, nil, nil, 140, 140, lib_materials.temperature_warm, lib_materials.humidity_semiarid) + --add_biome("warm_semiarid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_warm, lib_materials.humidity_semiarid) +end + +local add_biomes_warm_arid = function() +--BIOME: warm_arid +--add_biome("warm_arid", nil, "default:desert_sand", 1, "lib_materials:stone_sand", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_warm, lib_materials.humidity_arid) +--add_biome("warm_arid_generic", nil, "default:desert_sand", 1, "lib_materials:stone_sand", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_warm, lib_materials.humidity_arid) +--add_biome("warm_arid_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_arid) + +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: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: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) +add_biome("warm_arid_strato", nil, "lib_materials:stone_sandstone", 15, "lib_materials:stone_sandstone_desert", 25, "lib_materials:stone_sand", nil, nil, nil, "lib_materials:stone_sandstone_white_gravel", lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_warm, lib_materials.humidity_arid) + +--add_biome("warm_arid_volcanic", nil, "lib_materials:stone_sandstone_desert", 10, "lib_materials:stone_sand", 40, "lib_materials:stone_basalt_01", nil, nil, nil, nil, 140, 140, lib_materials.temperature_warm, lib_materials.humidity_arid) +--add_biome("warm_arid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_warm, lib_materials.humidity_arid) +end + + +--BIOMES: temperate_ +local add_biomes_temperate_humid = function() + --BIOME: temperate_humid + --add_biome("temperate_humid", nil, "default:dirt_with_rainforest_litter", 1, "default:dirt", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_temperate, lib_materials.humidity_humid) + --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: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) + add_biome("temperate_humid_lowland", nil, "lib_materials:dirt_with_grass_temperate_humid_lowland", 1, "lib_materials:dirt_silty", 5, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_temperate, lib_materials.humidity_humid) + 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", "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) +end + +local add_biomes_temperate_semihumid = function() + --BIOME: temperate_semihumid + --add_biome("temperate_semihumid", nil, "default:dirt_with_coniferous_litter", 1, "default:dirt", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_temperate, lib_materials.humidity_semihumid) + --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: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) + add_biome("temperate_semihumid_lowland", nil, "lib_materials:dirt_with_grass_temperate_semihumid_lowland", 1, "lib_materials:dirt_dark", 4, "lib_materials:stone_bluestone", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_temperate, lib_materials.humidity_semihumid) + 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", "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) +end + +local add_biomes_temperate_temperate = function() + --BIOME: temperate_temperate + --add_biome("temperate_temperate", nil, "default:dirt_with_grass", 1, "default:dirt", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + --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: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) + add_biome("temperate_temperate_lowland", nil, "lib_materials:dirt_with_grass_temperate_temperate_lowland", 1, "lib_materials:dirt", 4, "lib_materials:stone_limestone_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + add_biome("temperate_temperate_shelf", nil, "lib_materials:dirt_with_grass_temperate_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_temperate, lib_materials.humidity_temperate) + add_biome("temperate_temperate_highland", nil, "lib_materials:dirt_with_grass_temperate_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_temperate, lib_materials.humidity_temperate) + + add_biome("temperate_temperate_mountain", nil, "lib_materials:stone_greenstone", 10, "lib_materials:stone_schist", 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_temperate) + add_biome("temperate_temperate_strato", "default:snowblock", "lib_materials:stone_basalt_02", 15, "lib_materials:stone_greenstone", 25, "lib_materials:stone_schist", nil, nil, nil, nil, lib_materials.minheight_snow, lib_materials.maxheight_snow, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + add_biome("temperate_temperate_strato", nil, "lib_materials:stone_basalt_02", 15, "lib_materials:stone_greenstone", 25, "lib_materials:stone_schist", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + + --add_biome("temperate_temperate_volcanic", nil, "air", 2, "air", 4, "default:lava_source", nil, nil, nil, nil, 140, 140, 15, 15) + --add_biome("temperate_temperate_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_temperate, lib_materials.humidity_temperate) +end + +local add_biomes_temperate_semiarid = function() + --BIOME: temperate_semiarid + --add_biome("temperate_semiarid", nil, "default:dirt_with_dry_grass", 1, "default:dirt", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_temperate, lib_materials.humidity_semiarid) + --add_biome("temperate_semiarid_generic", nil, "lib_materials:dirt_with_dry_grass", 1, "default:dirt", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_temperate, lib_materials.humidity_semiarid) + --add_biome("temperate_semiarid_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_semiarid) + + add_biome("temperate_semiarid_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_semiarid) + add_biome("temperate_semiarid_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_semiarid) + + add_biome("temperate_semiarid_coastal", nil, "lib_materials:dirt_with_grass_temperate_semiarid_coastal", 1, "lib_materials:dirt", 4, nil, nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_temperate, lib_materials.humidity_semiarid) + add_biome("temperate_semiarid_lowland", nil, "lib_materials:dirt_with_grass_temperate_semiarid_lowland", 1, "lib_materials:dirt_coarse", 4, nil, nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_temperate, lib_materials.humidity_semiarid) + add_biome("temperate_semiarid_shelf", nil, "lib_materials:dirt_with_grass_temperate_semiarid_shelf", 1, "lib_materials:dirt_clay_red", 4, nil, nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_temperate, lib_materials.humidity_semiarid) + add_biome("temperate_semiarid_highland", nil, "lib_materials:dirt_with_grass_temperate_semiarid_highland", 1, "lib_materials:dirt_clayey", 4, nil, nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_temperate, lib_materials.humidity_semiarid) + + add_biome("temperate_semiarid_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_temperate, lib_materials.humidity_semiarid) + add_biome("temperate_semiarid_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_semiarid) + + --add_biome("temperate_semiarid_volcanic", nil, "air", 2, "air", 4, "default:lava_source", nil, nil, nil, nil, 140, 140, lib_materials.temperature_temperate, lib_materials.humidity_semiarid) + --add_biome("temperate_semiarid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_temperate, lib_materials.humidity_semiarid) +end + +local add_biomes_temperate_arid = function() +--BIOME: temperate_arid +--add_biome("temperate_arid", nil, "default:desert_sand", 1, "lib_materials:stone_sandstone_desert", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_temperate, lib_materials.humidity_arid) +--add_biome("temperate_arid_generic", nil, "lib_materials:sand_desert", 1, "lib_materials:stone_sandstone_desert", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_temperate, lib_materials.humidity_arid) +--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: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: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) + +--add_biome("temperate_arid_volcanic", nil, "lib_materials:stone_basalt_01_cobble", lib_materials.temperature_cold, "lib_materials:stone_basalt_01", 20, "default:lava_source", nil, nil, nil, nil, 140, 140, lib_materials.temperature_temperate, lib_materials.humidity_arid) +--add_biome("temperate_arid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_temperate, lib_materials.humidity_arid) +end + + +--BIOMES: cool_ +local add_biomes_cool_humid = function() + --BIOME: cool_humid + --add_biome("cool_humid", nil, "lib_materials:dirt_sandy_with_coniferous_litter", 1, "lib_materials:dirt_sandy", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_cool, lib_materials.humidity_humid) + --add_biome("cool_humid_generic", nil, "lib_materials:dirt_sandy_with_coniferous_litter", 1, "lib_materials:dirt_sandy", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_cool, lib_materials.humidity_humid) + --add_biome("cool_humid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -31000, -lib_materials.temperature_hot, lib_materials.temperature_cool, lib_materials.humidity_humid) + + add_biome("cool_humid_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_humid) + add_biome("cool_humid_beach", nil, "lib_materials:sand_beach", 1, "default:sand", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -4, 4, lib_materials.temperature_cool, lib_materials.humidity_humid) + + add_biome("cool_humid_coastal", nil, "lib_materials:dirt_with_grass_cool_humid_coastal", 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_cool, lib_materials.humidity_humid) + add_biome("cool_humid_lowland", nil, "lib_materials:dirt_with_grass_cool_humid_lowland", 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_cool, lib_materials.humidity_humid) + 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", "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) +end + +local add_biomes_cool_semihumid = function() + --BIOME: cool_semihumid + --add_biome("cool_semihumid", nil, "lib_materials:dirt_sandy_with_coniferous_litter", 1, "lib_materials:dirt_sandy", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_cool, lib_materials.humidity_semihumid) + --add_biome("cool_semihumid_generic", nil, "lib_materials:dirt_sandy_with_coniferous_litter", 1, "lib_materials:dirt_sandy", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_cool, lib_materials.humidity_semihumid) + --add_biome("cool_semihumid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -31000, -lib_materials.temperature_hot, lib_materials.temperature_cool, lib_materials.humidity_semihumid) + + add_biome("cool_semihumid_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_semihumid) + add_biome("cool_semihumid_beach", nil, "lib_materials:sand_beach", 1, "lib_materials:sand", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -4, 4, lib_materials.temperature_cool, lib_materials.humidity_semihumid) + + add_biome("cool_semihumid_coastal", nil, "lib_materials:dirt_with_grass_cool_semihumid_coastal", 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_cool, lib_materials.humidity_semihumid) + add_biome("cool_semihumid_lowland", nil, "lib_materials:dirt_with_grass_cool_semihumid_lowland", 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_cool, lib_materials.humidity_semihumid) + 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", "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) +end + +local add_biomes_cool_temperate = function() + --BIOME: cool_temperate + --add_biome("cool_temperate", nil, "lib_materials:dirt_sandy_with_grass", 1, "lib_materials:dirt_sandy", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_cool, lib_materials.humidity_temperate) + --add_biome("cool_temperate_generic", nil, "lib_materials:dirt_sandy_with_grass", 1, "lib_materials:dirt_sandy", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_cool, lib_materials.humidity_temperate) + --add_biome("cool_temperate_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -31000, -lib_materials.temperature_hot, lib_materials.temperature_cool, lib_materials.humidity_temperate) + + add_biome("cool_temperate_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_temperate) + add_biome("cool_temperate_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_temperate) + + add_biome("cool_temperate_coastal", nil, "lib_materials:dirt_with_grass_cool_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_cool, lib_materials.humidity_temperate) + add_biome("cool_temperate_lowland", nil, "lib_materials:dirt_with_grass_cool_temperate_lowland", 1, "lib_materials:dirt", 4, "lib_materials:stone_limestone_01", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cool, lib_materials.humidity_temperate) + 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", "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) +end + +local add_biomes_cool_semiarid = function() + --BIOME: cool_semiarid + --add_biome("cool_semiarid", nil, "lib_materials:dirt_sandy_with_dry_grass", 1, "lib_materials:dirt_sandy", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_cool, lib_materials.humidity_semiarid) + --add_biome("cool_semiarid_generic", nil, "lib_materials:dirt_sandy_with_dry_grass", 1, "lib_materials:dirt_sandy", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_cool, lib_materials.humidity_semiarid) + --add_biome("cool_semiarid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -31000, -lib_materials.temperature_hot, lib_materials.temperature_cool, lib_materials.humidity_semiarid) + + add_biome("cool_semiarid_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_semiarid) + add_biome("cool_semiarid_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_semiarid) + + add_biome("cool_semiarid_coastal", nil, "lib_materials:dirt_with_grass_cool_semiarid_coastal", 1, "lib_materials:dirt_sandy", 4, nil, nil, nil, nil, nil, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, lib_materials.temperature_cool, lib_materials.humidity_semiarid) + add_biome("cool_semiarid_lowland", nil, "lib_materials:dirt_with_grass_cool_semiarid_lowland", 1, "lib_materials:dirt_coarse", 4, nil, nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, lib_materials.temperature_cool, lib_materials.humidity_semiarid) + add_biome("cool_semiarid_shelf", nil, "lib_materials:dirt_with_grass_cool_semiarid_shelf", 1, "lib_materials:dirt_clay_red", 4, nil, nil, nil, nil, nil, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, lib_materials.temperature_cool, lib_materials.humidity_semiarid) + add_biome("cool_semiarid_highland", nil, "lib_materials:dirt_with_grass_cool_semiarid_highland", 1, "lib_materials:dirt_clayey", 4, nil, nil, nil, nil, nil, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, lib_materials.temperature_cool, lib_materials.humidity_semiarid) + + add_biome("cool_semiarid_mountain", nil, "lib_materials:stone_granite_01", 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_semiarid) + add_biome("cool_semiarid_strato", nil, "lib_materials:stone_gneiss_02", 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_cool, lib_materials.humidity_semiarid) + + --add_biome("cool_semiarid_volcanic", nil, "air", 1, "air", 1, "default:lava_source", nil, nil, nil, nil, 140, 140, lib_materials.temperature_cool, lib_materials.humidity_semiarid) + --add_biome("cool_semiarid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_cool, lib_materials.humidity_semiarid) +end + +local add_biomes_cool_arid = function() + --BIOME: cool_arid + --add_biome("cool_arid", nil, "lib_materials:dirt_sandy", 1, "lib_materials:stone_sand", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_cool, lib_materials.humidity_arid) + --add_biome("cool_arid_generic", nil, "lib_materials:dirt_sandy", 1, "lib_materials:stone_sand", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_cool, lib_materials.humidity_arid) + --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: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: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) + add_biome("cool_arid_strato", nil, "lib_materials:stone_gneiss_02", 15, "lib_materials:stone_granite_02", 25, "lib_materials:stone_andesite", nil, nil, nil, nil, lib_materials.maxheight_mountain, lib_materials.maxheight_strato, lib_materials.temperature_cool, lib_materials.humidity_arid) + + --add_biome("cool_arid_volcanic", nil, "air", 1, "air", 4, "default:lava_source", nil, nil, nil, nil, 140, 140, lib_materials.temperature_cool, lib_materials.humidity_arid) + --add_biome("cool_arid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_cool, lib_materials.humidity_arid) +end + + +--BIOME: cold_ +local add_biomes_cold_humid = function() + --BIOME: cold_humid + --add_biome("cold_humid", nil, "lib_materials:dirt_coarse_with_rainforest_litter", 1, "lib_materials:dirt_coarse", 4, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_cold, lib_materials.humidity_humid) + --add_biome("cold_humid_generic", nil, "lib_materials:dirt_coarse_with_rainforest_litter", 1, "lib_materials:dirt_coarse", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_cold, lib_materials.humidity_humid) + --add_biome("cold_humid_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_humid) + + 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", 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", "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) +end + +local add_biomes_cold_semihumid = function() + --BIOME: cold_semihumid + --add_biome("cold_semihumid", nil, "lib_materials:dirt_coarse_with_coniferous_litter", 1, "lib_materials:dirt_coarse", 4, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_cold, lib_materials.humidity_semihumid) + --add_biome("cold_semihumid_generic", nil, "lib_materials:dirt_coarse_with_coniferous_litter", 1, "lib_materials:dirt_coarse", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_cold, lib_materials.humidity_semihumid) + --add_biome("cold_semihumid_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_semihumid) + + 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_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", "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) +end + +local add_biomes_cold_temperate = function() + --BIOME: cold_temperate + --add_biome("cold_temperate", nil, "lib_materials:dirt_coarse_with_grass", 1, "lib_materials:dirt_coarse", 4, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_cold, lib_materials.humidity_temperate) + --add_biome("cold_temperate_generic", nil, "lib_materials:dirt_coarse_with_grass", 1, "lib_materials:dirt_coarse", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_cold, lib_materials.humidity_temperate) + --add_biome("cold_temperate_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_temperate) + + 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_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", "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) +end + +local add_biomes_cold_semiarid = function() + --BIOME: cold_semiarid + --add_biome("cold_semiarid", nil, "lib_materials:dirt_coarse_with_dry_grass", 1, "lib_materials:dirt_coarse", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_cold, lib_materials.humidity_semiarid) + --add_biome("cold_semiarid_generic", nil, "lib_materials:dirt_coarse_with_dry_grass", 1, "lib_materials:dirt_coarse", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_cold, lib_materials.humidity_semiarid) + --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_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_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) + + --add_biome("cold_semiarid_volcanic", nil, "air", 1, "air", 1, "default:lava_source", nil, nil, nil, nil, 140, 140, lib_materials.temperature_cold, lib_materials.humidity_semiarid) + --add_biome("cold_temperate_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_cold, lib_materials.humidity_semiarid) +end + +local add_biomes_cold_arid = function() + --BIOME: cold_arid + --add_biome("cold_arid", nil, "lib_materials:dirt_coarse", 1, "lib_materials:savanna_stone", 2, nil, nil, nil, nil, nil, 0, 100, lib_materials.temperature_cold, lib_materials.humidity_arid) + --add_biome("cold_arid_generic", nil, "lib_materials:dirt_coarse", 1, "lib_materials:savanna_stone", 4, nil, nil, nil, nil, nil, -192, 31000, lib_materials.temperature_cold, lib_materials.humidity_arid) + --add_biome("cold_arid_underground", nil, nil, nil, nil, nil, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -31000, -192, lib_materials.temperature_cold, lib_materials.humidity_arid) + + 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_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) + + --add_biome("cold_arid_volcanic", nil, "air", 1, "air", 1, "default:lava_source", nil, nil, nil, nil, 140, 140, 15, 15) + --add_biome("cold_arid_sky", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 180, 31000, lib_materials.temperature_cold, lib_materials.humidity_arid) +end + + +--BIOME: generic_ filler biomes, to cover certains temp/humid combos that may be missed above, and special biomes +local add_biomes_generic = function() + --add_biome("generic_beach", nil, "default:sand", 1, "lib_materials:stone_sandstone", 4, nil, nil, nil, nil, nil, -4, 4, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + --add_biome("generic_ocean", nil, "lib_materials:dirt_silt_01", 1, "lib_materials:dirt_silt_02", 4, nil, nil, nil, nil, nil, -192, -4, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + --add_biome("generic_underground", nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, -31000, -192, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + --add_biome("generic_mountain", nil, "default:snowblock", 1, "default:ice", 4, nil, nil, nil, nil, nil, lib_materials.maxheight_highland, lib_materials.maxheight_mountain, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + --add_biome("generic_volcanic", nil, "lib_materials:stone_basalt_01_cobble", 1, "lib_materials:stone_basalt_01", 3, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.temperature_temperate, 31000, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + + add_biome("generic_mantle", nil, nil, 1, nil, 4, "default:lava_source", nil, nil, nil, nil, -31000, -20000, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + add_biome("stone_basalt_01_layer", nil, nil, 1, nil, 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -20000, -15000, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + add_biome("stone_brown_layer", nil, nil, 1, nil, 4, "lib_materials:stone_brown", nil, nil, nil, nil, -15000, -10000, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + add_biome("stone_sand_layer", nil, nil, 1, nil, 4, "lib_materials:stone_sand", nil, nil, nil, nil, -10000, -6000, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + add_biome("desert_stone_layer", nil, nil, 1, nil, 4, "lib_materials:stone_desert", nil, nil, nil, nil, -6000, -5000, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + add_biome("desert_sandstone_layer", nil, nil, 1, nil, 4, "lib_materials:stone_sandstone_desert", nil, nil, nil, nil, -5000, -4000, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + add_biome("generic_stone_limestone_01_layer", nil, nil, 1, nil, 4, "lib_materials:stone_limestone_01", nil, nil, nil, nil, -4000, -3000, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + add_biome("generic_granite_layer", nil, nil, 1, nil, 4, "lib_materials:stone_granite_01", nil, nil, nil, nil, -3000, -2000, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + add_biome("generic_stone_layer", nil, nil, 1, nil, 4, "default:stone", nil, nil, nil, nil, -2000, -192, lib_materials.temperature_temperate, lib_materials.humidity_temperate) + + --add_biome("generic_burned", nil, "lib_materials:gray_dirt", 1, "lib_materials:stone_basalt_01_cobble", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, 30, 45, 63, 37) + --add_biome("generic_mushroom", nil, "lib_materials:dirt_with_fungi_covered_grass", 1, "default:dirt", 3, nil, nil, nil, nil, nil, 30, lib_materials.temperature_temperate, 45, 55) + --add_biome("generic_desert", nil, "default:sand", 1, "default:desert_sand", 3, nil, nil, nil, nil, nil, 4, 31000, lib_materials.temperature_cool, 30) + --add_biome("generic_cavern", nil, "lib_materials:stone_limestone_01", 4, "air", 8, "lib_materials:stone_basalt_01", nil, nil, nil, nil, -115, -85, -lib_materials.temperature_cold, 60) +end + + +local add_biomes = function() + + add_biomes_generic() + + add_biomes_hot_humid() + add_biomes_hot_semihumid() + add_biomes_hot_temperate() + add_biomes_hot_semiarid() + add_biomes_hot_arid() + add_biomes_warm_humid() + add_biomes_warm_semihumid() + add_biomes_warm_temperate() + add_biomes_warm_semiarid() + add_biomes_warm_arid() + add_biomes_temperate_humid() + add_biomes_temperate_semihumid() + add_biomes_temperate_temperate() + add_biomes_temperate_semiarid() + add_biomes_temperate_arid() + add_biomes_cool_humid() + add_biomes_cool_semihumid() + add_biomes_cool_temperate() + add_biomes_cool_semiarid() + add_biomes_cool_arid() + add_biomes_cold_humid() + add_biomes_cold_semihumid() + add_biomes_cold_temperate() + add_biomes_cold_semiarid() + add_biomes_cold_arid() + +end + +add_biomes() + + +-- --valleys_c biomes + +-- -- --hot + --add_biome("lib_materials_desert", nil, "lib_materials:sand_desert", 1, "lib_materials:stone_sandstone_desert", 3, "lib_materials:stone_desert", nil, nil, nil, nil, 30, 90, 80, lib_materials.humidity_arid) + -- add_biome("lib_materials_desertstone_grassland", nil, "lib_materials:dirt_clayey_with_grass_hot_temperate_lowland", 1, "lib_materials:dirt_clayey", 2, "lib_materials:stone_desert", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, 80, 55) + -- add_biome("lib_materials_savanna", nil, "lib_materials:dirt_clayey_with_grass_hot_semiarid_lowland", 1, "lib_materials:dirt_clay_red", 4, "lib_materials:stone_claystone", nil, nil, nil, nil, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, 80, lib_materials.humidity_semiarid) + -- add_biome("lib_materials_savanna_swamp", nil, "lib_materials:dirt_clayey", 1, "lib_materials:dirt_clay_red", 3, "lib_materials:stone_claystone", nil, nil, nil, nil, -3, 0, 80, lib_materials.humidity_semiarid) + --add_biome("lib_materials_tropical_rainforest", nil, "lib_materials:dirt_with_rainforest_litter", 1, "lib_materials:dirt", 2, "lib_materials:stone_brown", nil, nil, nil, nil, 30, 90, 85, 95) + add_biome("lib_materials_tropical_rainforest_swamp", nil, "lib_materials:dirt_mud_01", 1, "lib_materials:dirt_mud_01", 2, "lib_materials:stone_brown", nil, nil, nil, nil, -1, 2, 85, 95) +-- -- --warm + -- add_biome("lib_materials_subtropical_rainforest", nil, "lib_materials:dirt_with_rainforest_litter", 1, "lib_materials:dirt", 2, "lib_materials:stone_brown", nil, nil, nil, nil, 30, 90, 75, 95) + add_biome("lib_materials_subtropical_rainforest_swamp", nil, "lib_materials:dirt_mud_01", 1, "lib_materials:dirt_mud_01", 2, "lib_materials:stone_brown", nil, nil, nil, nil, -1, 2, 75, 95) +-- -- --temperate + add_biome("lib_materials_deciduous_forest_swamp", nil, "lib_materials:dirt_mud_01", 1, "lib_materials:dirt_silty", 3, "lib_materials:stone_mudstone", nil, nil, nil, nil, -4, 4, 60, 60) + -- add_biome("lib_materials_sandstone_grassland", nil, "lib_materials:dirt_sandy_with_grass_temperate_temperate_coastal", 1, "lib_materials:dirt_sandy", 2, "lib_materials:stone_limestone_01", nil, nil, nil, nil, 5, 24, 55, 40) + -- add_biome("lib_materials_sandstone_grassland_dunes", nil, "lib_materials:sand", 1, "lib_materials:dirt_sandy", 2, "lib_materials:stone_sandstone", nil, nil, nil, nil, 1, 5, 55, 40) + --add_biome("lib_materials_temperate_rainforest", nil, "lib_materials:dirt_with_rainforest_litter", 1, "lib_materials:dirt", 2, "lib_materials:stone_brown", nil, nil, nil, nil, 30, 90, 50, 95) + add_biome("lib_materials_temperate_rainforest_swamp", nil, "lib_materials:dirt_mud_01", 1, "lib_materials:dirt_mud_01", 2, "lib_materials:stone_brown", nil, nil, nil, nil, -1, 2, 50, 95) +-- -- --cool + --add_biome("lib_materials_coniferous_forest_dunes", nil, "lib_materials:sand_beach", 1, "lib_materials:dirt_sandy", 3, "lib_materials:stone_limestone_01", nil, nil, nil, nil, 1, 5, 35, 60) + -- add_biome("lib_materials_stone_grassland_dunes", nil, "lib_materials:sand_beach", 1, "lib_materials:dirt_sandy", 3, "lib_materials:stone_limestone_01", nil, nil, nil, nil, 5, 5, 35, 40) +-- -- --cold + + + -- add_biome("lib_materials_rainforest", nil, "lib_materials:dirt_with_rainforest_litter", 1, "lib_materials:dirt", 2, "lib_materials:stone_brown", nil, nil, nil, nil, 30, 90, 85, 70) + -- add_biome("lib_materials_rainforest_swamp", nil, "lib_materials:dirt_mud_01", 1, "lib_materials:dirt_mud_01", 2, nil, nil, nil, nil, nil, -1, 2, 85, 60) + +--[[ + + -- Permanent ice + + -- minetest.register_biome({name = "lib_materials_glacier", + -- node_dust = "default:snowblock", + -- node_top = "default:snowblock", + -- depth_top = 1, + -- node_filler = "default:snowblock", + -- depth_filler = 3, + -- node_stone = "default:ice", + -- node_water_top = "lib_materials:ice", + -- depth_water_top = lib_materials.temperature_cold, + -- --node_water = "", + -- node_river_water = "lib_materials:ice", + -- y_min = -8, + -- y_max = 31000, + -- heat_point = 0, + -- humidity_point = lib_materials.temperature_temperate, + -- }) + + -- Cold + -- minetest.register_biome({name = "lib_materials_tundra", + -- --node_dust = "", + -- node_top = "default:dirt_with_snow", + -- depth_top = 1, + -- node_filler = "default:dirt", + -- depth_filler = 1, + -- --node_stone = "", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = 2, + -- y_max = 31000, + -- heat_point = 15, + -- humidity_point = 35, + -- }) + -- minetest.register_biome({name = "lib_materials_tundra_beach", + -- --node_dust = "", + -- node_top = "default:gravel", + -- depth_top = 1, + -- node_filler = "default:gravel", + -- depth_filler = 2, + -- --node_stone = "", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = -3, + -- y_max = 1, + -- heat_point = 15, + -- humidity_point = 35, + -- }) + + -- minetest.register_biome({name = "lib_materials_taiga", + -- node_dust = "", + -- node_top = "default:dirt_with_snow", + -- depth_top = 1, + -- node_filler = "default:dirt", + -- depth_filler = 3, + -- --node_stone = "", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = 2, + -- y_max = 31000, + -- heat_point = 15, + -- humidity_point = 65, + -- }) + -- minetest.register_biome({name = "lib_materials_cold_desert", + -- --node_dust = "", + -- node_top = "default:silver_sand", + -- depth_top = 1, + -- node_filler = "default:silver_sandstone", + -- depth_filler = 1, + -- node_stone = "lib_materials:stone_sand", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = 5, + -- y_max = 31000, + -- heat_point = lib_materials.temperature_cool, + -- humidity_point = 0, + -- }) + -- minetest.register_biome({name = "lib_materials_cold_desert_ocean", + -- --node_dust = "", + -- node_top = "default:sand", + -- depth_top = 1, + -- node_filler = "default:sand", + -- depth_filler = 3, + -- node_stone = "lib_materials:stone_desert", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = -112, + -- y_max = 4, + -- heat_point = lib_materials.temperature_cool, + -- humidity_point = lib_materials.temperature_cold, + -- }) + + + -- -- Temperate + -- minetest.register_biome({name = "lib_materials_stone_grassland", + -- --node_dust = "", + -- node_top = "lib_materials:dirt_sandy_with_grass", + -- depth_top = 1, + -- node_filler = "default:dirt", + -- depth_filler = 1, + -- --node_stone = "", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = 6, + -- y_max = 31000, + -- heat_point = 35, + -- humidity_point = 40, + -- }) + -- minetest.register_biome({name = "lib_materials_stone_grassland_dunes", + -- --node_dust = "", + -- node_top = "default:sand", + -- depth_top = 1, + -- node_filler = "default:sand", + -- depth_filler = 2, + -- --node_stone = "", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = 5, + -- y_max = 5, + -- heat_point = 35, + -- humidity_point = 40, + -- }) + -- minetest.register_biome({name = "lib_materials_stone_grassland_ocean", + -- --node_dust = "", + -- node_top = "default:sand", + -- depth_top = 1, + -- node_filler = "default:sand", + -- depth_filler = 3, + -- --node_stone = "", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = -112, + -- y_max = 4, + -- heat_point = 35, + -- humidity_point = 40, + -- }) + + -- minetest.register_biome({name = "lib_materials_coniferous_forest", + -- --node_dust = "", + -- node_top = "default:dirt_with_coniferous_litter", + -- depth_top = 1, + -- node_filler = "default:dirt", + -- depth_filler = 3, + -- --node_stone = "", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = 6, + -- y_max = 31000, + -- heat_point = 35, + -- humidity_point = 60, + -- }) + -- minetest.register_biome({name = "lib_materials_coniferous_forest_dunes", + -- --node_dust = "", + -- node_top = "default:sand", + -- depth_top = 1, + -- node_filler = "default:dirt", + -- depth_filler = 3, + -- --node_stone = "", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = 5, + -- y_max = 5, + -- heat_point = 35, + -- humidity_point = 60, + -- }) + -- minetest.register_biome({name = "lib_materials_coniferous_forest_ocean", + -- --node_dust = "", + -- node_top = "default:sand", + -- depth_top = 1, + -- node_filler = "default:sand", + -- depth_filler = 3, + -- --node_stone = "", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = -112, + -- y_max = 4, + -- heat_point = 35, + -- humidity_point = 60, + -- }) +--]] + +--[[ + minetest.register_biome({name = "lib_materials_sandstone_grassland", + --node_dust = "", + node_top = "lib_materials:dirt_sandy_with_dry_grass4", + depth_top = 1, + node_filler = "lib_materials:dirt_sandy", + depth_filler = 2, + node_stone = "lib_materials:stone_sandstone", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = 5, + y_max = 24, + heat_point = 55, + humidity_point = 40, + }) + minetest.register_biome({name = "lib_materials_sandstone_grassland_dunes", + --node_dust = "", + node_top = "lib_materials:sand", + depth_top = 1, + node_filler = "lib_materials:sand", + depth_filler = 2, + node_stone = "lib_materials:stone_sandstone", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = 1, + y_max = 5, + heat_point = 55, + humidity_point = 40, + }) +--]] + +--[[ + -- minetest.register_biome({name = "lib_materials_sandstone_grassland_ocean", + -- --node_dust = "", + -- node_top = "default:sand", + -- depth_top = 1, + -- node_filler = "default:sand", + -- depth_filler = 3, + -- node_stone = "lib_materials:stone_sandstone", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = -112, + -- y_max = 4, + -- heat_point = 55, + -- humidity_point = 40, + -- }) + + -- minetest.register_biome({name = "lib_materials_deciduous_forest", + -- --node_dust = "", + -- node_top = "default:dirt_with_grass", + -- depth_top = 1, + -- node_filler = "default:dirt", + -- depth_filler = 3, + -- --node_stone = "", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = 1, + -- y_max = 31000, + -- heat_point = 60, + -- humidity_point = 60, + -- }) +--]] + +--[[ + minetest.register_biome({name = "lib_materials_deciduous_forest_swamp", + --node_dust = "", + node_top = "lib_materials:dirt_silty_with_coniferous_litter", + depth_top = 1, + node_filler = "lib_materials:dirt_silty", + depth_filler = 3, + --node_stone = "", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = -3, + y_max = 0, + heat_point = 60, + humidity_point = 60, + }) +--]] + +--[[ + -- minetest.register_biome({name = "lib_materials_deciduous_forest_ocean", + -- --node_dust = "", + -- node_top = "default:sand", + -- depth_top = 1, + -- node_filler = "default:sand", + -- depth_filler = 3, + -- --node_stone = "", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = -112, + -- y_max = -4, + -- heat_point = 60, + -- humidity_point = 60, + -- }) +--]] + +--[[ + -- Hot + minetest.register_biome({name = "lib_materials_desert", + --node_dust = "", + node_top = "lib_materials:sand_desert", + depth_top = 1, + node_filler = "lib_materials:stone_sandstone_desert", + depth_filler = 3, + node_stone = "lib_materials:stone_desert", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = 30, + y_max = lib_materials.temperature_hot, + heat_point = 80, + humidity_point = lib_materials.temperature_cold, + }) +--]] + +--[[ + -- minetest.register_biome({name = "lib_materials_desert_ocean", + -- --node_dust = "", + -- node_top = "default:sand", + -- depth_top = 1, + -- node_filler = "lib_materials:stone_sandstone", + -- depth_filler = 3, + -- --node_stone = "lib_materials:stone_desert", + -- --node_water_top = "", + -- --depth_water_top = , + -- --node_water = "", + -- --node_river_water = "", + -- y_min = -112, + -- y_max = 4, + -- heat_point = 80, + -- humidity_point = lib_materials.temperature_cold, + -- }) +--]] + +--[[ + minetest.register_biome({name = "lib_materials_savanna", + --node_dust = "", + node_top = "lib_materials:dirt_with_dry_grass", + depth_top = 1, + node_filler = "lib_materials:dirt", + depth_filler = 4, + --node_stone = "", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = 30, + y_max = 60, + heat_point = 80, + humidity_point = lib_materials.temperature_cool, + }) + minetest.register_biome({name = "lib_materials_savanna_swamp", + --node_dust = "", + node_top = "lib_materials:dirt_clayey_with_rainforest_litter", + depth_top = 1, + node_filler = "lib_materials:dirt_clay_red", + depth_filler = 3, + --node_stone = "", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = -3, + y_max = 0, + heat_point = 80, + humidity_point = lib_materials.temperature_cool, + }) + + minetest.register_biome({name = "lib_materials_desertstone_grassland", + --node_dust = "", + node_top = "lib_materials:dirt_clayey_with_dry_grass", + depth_top = 1, + node_filler = "lib_materials:dirt_clayey", + depth_filler = 2, + node_stone = "lib_materials:stone_desert", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = 30, + y_max = 60, + heat_point = 80, + humidity_point = 55, + }) + minetest.register_biome({name = "lib_materials_rainforest", + --node_dust = "", + node_top = "lib_materials:dirt_with_rainforest_litter", + depth_top = 1, + node_filler = "lib_materials:dirt", + depth_filler = 3, + node_stone = "lib_materials:stone_brown", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = 30, + y_max = lib_materials.temperature_hot, + heat_point = 85, + humidity_point = 70, + }) + minetest.register_biome({name = "lib_materials_rainforest_swamp", + --node_dust = "", + node_top = "lib_materials:dirt_silty_with_rainforest_litter", + depth_top = 1, + node_filler = "default:clay", + depth_filler = 3, + node_stone = "lib_materials:stone_brown", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + y_min = -3, + y_max = 0, + heat_point = 85, + humidity_point = 70, + }) +--]] + + + +--Ethereal Biomes + + -- add_biome("alpine", nil, "lib_materials:dirt_with_snow", 1, "lib_materials:dirt", 2, nil, nil, nil, nil, nil, 85, 95, lib_materials.temperature_cold, 37) + -- add_biome("desert", nil, "lib_materials:sand_desert", 1, "lib_materials:sand_desert", 3, nil, nil, nil, nil, nil, 3, 23, 35, 20) + -- add_biome("fiery", nil, "lib_materials:dirt_with_grass_fiery", 1, "lib_materials:dirt", 3, nil, nil, nil, nil, nil, 5, 20, lib_materials.temperature_warm, lib_materials.humidity_arid) + -- add_biome("frost", nil, "lib_materials:dirt_with_grass_crystal", 1, "lib_materials:dirt", 3, nil, nil, nil, nil, nil, 118, 122, lib_materials.temperature_cold, 37) + -- add_biome("junglee", nil, "lib_materials:dirt_with_grass_jungle_01", 1, "lib_materials:dirt", 3, nil, nil, nil, nil, nil, 1, 11, 82, 62) + -- add_biome("plains", nil, "lib_materials:dirt_dried", 1, "lib_materials:dirt", 3, nil, nil, nil, nil, nil, 3, 25, 65, lib_materials.humidity_semiarid) + -- add_biome("prairie", nil, "lib_materials:dirt_with_grass_prairie", 1, "lib_materials:dirt", 3, nil, nil, nil, nil, nil, 20, 40, 20, 40) + -- add_biome("sandclay", nil, "lib_materials:sand", 3, "default:clay", 2, nil, nil, nil, nil, nil, 1, 11, 65, 2) + -- add_biome("sandstone", nil, "lib_materials:stone_sandstone", 1, "lib_materials:stone_sandstone", 1, nil, nil, nil, nil, nil, 3, 23, lib_materials.temperature_temperate, 20) + -- add_biome("savannah", nil, "lib_materials:dirt_with_dry_grass", 1, "lib_materials:dirt", 3, nil, nil, nil, nil, nil, 3, 50, 55, lib_materials.humidity_semiarid) + -- add_biome("snowy", nil, "lib_materials:dirt_with_grass_cold", 1, "lib_materials:dirt", 2, nil, nil, nil, nil, nil, 10, 35, lib_materials.temperature_cold, 37) + -- add_biome("swamp", nil, "lib_materials:dirt_with_grass_swamp", 1, "lib_materials:dirt", 3, nil, nil, nil, nil, nil, 1, 7, 80, lib_materials.humidity_humid) + + --add_biome("bamboo", nil, "lib_materials:dirt_with_bamboo_grass", 1, "default:dirt", 3, nil, nil, nil, nil, nil, 41, 71, 45, lib_materials.humidity_semihumid) + --add_biome("caves", nil, "lib_materials:stone_limestone_01", 8, "air", 6, nil, nil, nil, nil, nil, -4, 15, 15, lib_materials.humidity_semiarid) + --add_biome("clearing", nil, "lib_materials:green_dirt", 1, "default:dirt", 3, nil, nil, nil, nil, nil, 3, 71, 45, 65, 1) -- ADDED + --add_biome("grassy", nil, "lib_materials:green_dirt", 1, "default:dirt", 3, nil, nil, nil, nil, nil, 3, 91, 13, 40) + --add_biome("grayness", nil, "lib_materials:gray_dirt", 3, "lib_materials:stone_basalt_01_cobble", 4, "lib_materials:stone_basalt_01", nil, nil, nil, nil, 1lib_materials.temperature_cool, 1lib_materials.temperature_temperate, 15, 30) + --add_biome("grayness2", nil, "lib_materials:gray_dirt", 1, "lib_materials:dirt_sandy", 3, "lib_materials:stone_brown", nil, nil, nil, nil, lib_materials.temperature_warm, 95, lib_materials.temperature_cool, 74) + --add_biome("grassytwo", nil, "lib_materials:green_dirt", 1, "default:dirt", 3, nil, nil, nil, nil, nil, 1, 91, 15, 40) + --add_biome("grove", nil, "lib_materials:grove_dirt", 1, "default:dirt", 3, nil, nil, nil, nil, nil, 3, 23, 45, 35) + --add_biome("jumble", nil, "lib_materials:green_dirt", 1, "lib_materials:dirt", 3, nil, nil, nil, nil, nil, 1, 71, lib_materials.temperature_cool, lib_materials.humidity_temperate) + diff --git a/lib_materials_chatcommands.lua b/lib_materials_chatcommands.lua new file mode 100644 index 0000000..d38d39f --- /dev/null +++ b/lib_materials_chatcommands.lua @@ -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 +}) + diff --git a/lib_materials_lakes.lua b/lib_materials_lakes.lua new file mode 100644 index 0000000..a7af066 --- /dev/null +++ b/lib_materials_lakes.lua @@ -0,0 +1,253 @@ +--[[ + 1. We choose a random position in the same way plants are placed. That's the root for our lake. + 2. From there we go lx in the x direction and lz in the z direction. That gives us a rectangle. + 3. We check the sides of the rectangle for air and itterate down until the rectangle is closed. + 4. Now we repeat this itteration, but search for the opposite, not for solid nodes but for air. + 5. As soon as we found the lower limit, we check if the bottom is sealed. Now we have some jar. + 6. Now as we made sure no water can escape we can replace all air inside the volume with water. +--]] + +--lib_lakes = {} + +local c_air = minetest.get_content_id("air") +local c_ignore = minetest.get_content_id("ignore") +local c_lava = minetest.get_content_id("default:lava_source") +local c_water = minetest.get_content_id("lib_materials:fluid_water_source") +local c_ice = minetest.get_content_id("lib_materials:ice_default") +local c_murky = minetest.get_content_id("lib_materials:fluid_water_murky_source") +local c_dirty = minetest.get_content_id("lib_materials:fluid_water_dirty_source") +local c_muddy = minetest.get_content_id("lib_materials:fluid_water_river_muddy_source") +local c_quick_source = minetest.get_content_id("lib_materials:fluid_quicksand_source") +local c_quick = minetest.get_content_id("lib_materials:quicksand") +local c_mud_wet = minetest.get_content_id("lib_materials:mud_wet") +local c_mud_dried = minetest.get_content_id("lib_materials:dirt_mud_dried") +local c_fluid_id + +-- +-- Find position +-- + +minetest.register_on_generated(function(minp, maxp, seed) + if maxp.y <= 1024 and minp.y >= -32 then + local perlin1 = minetest.get_perlin(318, 3, 0.6, 100) + -- Lua Voxel Machine + local vm = minetest.get_voxel_manip() + local vm_minp, vm_maxp = vm:read_from_map({x=minp.x, y=minp.y, z=minp.z-16}, {x=maxp.x+16, y=maxp.y+16, z=maxp.z+16}) + local a = VoxelArea:new{MinEdge=vm_minp, MaxEdge=vm_maxp} + local data = vm:get_data() + -- Assume X and Z lengths are equal + local divlen = 32 + local divs = (maxp.x-minp.x)/divlen+1; + for divx=0,divs-1 do + for divz=0,divs-1 do + local x0 = minp.x + math.floor((divx+0)*divlen) + local z0 = minp.z + math.floor((divz+0)*divlen) + local x1 = minp.x + math.floor((divx+1)*divlen) + local z1 = minp.z + math.floor((divz+1)*divlen) + -- Determine amount from perlin noise + local amount = math.floor(perlin1:get2d({x=x0, y=z0}) * 5 + 10) + -- Find random positions based on this random + local pr = PseudoRandom(seed+486) + for i=0,amount do + local x = pr:next(x0, x1) + local z = pr:next(z0, z1) + local ground_y = nil + -- Prevent from starting underground + local nn = minetest.get_node({x=x,y=maxp.y,z=z}).name + if nn ~= "air" and nn ~= "ignore" then + return + end + -- Find groundlevel + for y=maxp.y,minp.y,-1 do + local nn = minetest.get_node({x=x,y=y,z=z}).name + if nn ~= "air" and nn~= "ignore" then + --local is_leaves = minetest.registered_nodes[nn].groups.leaves + --if is_leaves == nil or is_leaves == 0 then + -- ground_y = y + -- break + --end + local is_leaves = minetest.registered_nodes[nn].groups.leaves + local is_plant = minetest.registered_nodes[nn].groups.plant + local is_le_plant = minetest.registered_nodes[nn].groups.lib_ecology_plant + 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 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 + 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:sand") then + -- c_fluid_id = c_quick + --end + if string.match(node_name, "lib_materials:dirt_with_rainforest_litter") then + c_fluid_id = c_murky + end + if string.match(node_name, "lib_materials:dirt_mud_01") then + c_fluid_id = c_muddy + end + if string.match(node_name, "lib_materials:dirt_clayey") then + c_fluid_id = c_muddy + end + if string.match(node_name, "lib_materials:sand_desert") then + c_fluid_id = c_mud_dried + end + if string.match(node_name, "lib_materials:sand") then + c_fluid_id = c_mud_dried + end + --if string.match(node_name, "lib_materials:dirt_with_grass_warm_semihumid_coastal") or string.match(node_name, "lib_materials:dirt_with_grass_temperate_semihumid_coastal") then + -- c_fluid_id = c_dirty + --end + --if string.match(node_name, "lib_materials:dirt_with_grass_warm_semihumid_lowland") or string.match(node_name, "lib_materials:dirt_with_grass_temperate_semihumid_lowland") then + -- c_fluid_id = c_dirty + --end + --if string.match(node_name, "lib_materials:dirt_with_grass_warm_semihumid_shelf") or string.match(node_name, "lib_materials:dirt_with_grass_temperate_semihumid_shelf") then + -- c_fluid_id = c_dirty + --end + --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_greenstone") then + c_fluid_id = c_lava + end + if string.match(node_name, "snow") then + c_fluid_id = c_ice + end + if ground_y >= lib_materials.minheight_snow then + c_fluid_id = c_ice + end + -- if c_water == "" then + + -- else + -- c_water = minetest.get_content_id("default:river_water_source") + -- end + lib_materials.lakes_fill(data, a, p, lx, lz) + --c_fluid_id = "" + end + + end + end + end + -- Write to map + vm:set_data(data) + vm:write_to_map(data) + vm:update_map() + end +end) + +-- +-- Make lake +-- + +-- TODO: combine functions into one +local function check_x(data, a, x, y, z, lx, lz) + for xi = 0, lx do + local vi = a:index(x+xi, y, z) + if data[vi] == c_air or data[vi] == c_ignore then + return true + end + local vii = a:index(x+xi, y, z+lz) + if data[vii] == c_air or data[vii] == c_ignore then + return true + end + end +end + +local function check_z(data, a, x, y, z, lx, lz) + for zi = 0, lz do + local vi = a:index(x, y, z+zi) + if data[vi] == c_air or data[vi] == c_ignore then + return true + end + local vii = a:index(x+lx, y, z+zi) + if data[vii] == c_air or data[vii] == c_ignore then + return true + end + end +end + +local function leak(data, a, j, lx, lz) + for xi = 0, lx do + for zi = 0, lz do + local vi = a:index(xi, -j, zi) + if data[vi] == c_air or data[vi] == c_ignore then + return true + end + end + end +end + +function lib_materials.lakes_fill(data, a, pos, lx, lz) + local x, y, z = pos.x, pos.y, pos.z + local water_a = VoxelArea:new{MinEdge={x=0, y=-32, z=0}, MaxEdge={x=lx, y=0, z=lz}} + local water_buffer = {} + -- Find upper start + local i = 0 + while i <= 16 do + if check_x(data, a, x, y-i, z, lx, lz) or check_z(data, a, x, y-i, z, lx, lz) then + i = i + 1 + else + break + end + end + if i >= 16 then return end + -- Itterate downwards + local j = i + while j <= (i+16) do + if check_x(data, a, x, y-j, z, lx, lz) or check_z(data, a, x, y-j, z, lx, lz) then + j = j - 1 + break + else + j = j + 1 + end + end + if j >= i+16 then return end +-- print ('[lib_lakes] i = '.. i ..'') +-- print ('[lib_lakes] j = '.. j ..'') + -- Check bottom + if leak(data, a, j, lx, lz) then return end + -- Add volume to buffer + for xi = 0, lx do + for yi = -i, -j, -1 do + for zi = 0, lz do + water_buffer[water_a:index(xi, yi, zi)] = true + end + end + end + -- Add the water + for xi = water_a.MinEdge.x, water_a.MaxEdge.x do + for yi = water_a.MinEdge.y, water_a.MaxEdge.y do + for zi = water_a.MinEdge.z, water_a.MaxEdge.z do + if a:contains(x+xi, y+yi, z+zi) then + local vi = a:index(x+xi, y+yi, z+zi) + if data[vi] == c_air or data[vi] == c_ignore then + if water_buffer[water_a:index(xi, yi, zi)] then + data[vi] = c_fluid_id +-- print ('[lib_lakes] Wasser auf (' .. x+xi .. ',' .. y+yi .. ',' .. z+zi .. ')') + end + end + end + end + end + end +end + diff --git a/lib_materials_ore_defs.lua b/lib_materials_ore_defs.lua index 0ea486d..2636e48 100644 --- a/lib_materials_ore_defs.lua +++ b/lib_materials_ore_defs.lua @@ -1,156 +1,1064 @@ --- Adds stone types(default types{desert_stone, sandstone, desert_sandstone, silver_sandstone}; lib_materials types{stone_brown, stone_sand}) as ores within default:stone +local S = lib_materials.intllib -minetest.register_ore({ore_type="sheet", ore="default:sandstone", wherein="default:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshhold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=4130293965, octaves=5, persist=0.60}, random_factor=1.0}) -minetest.register_ore({ore_type="sheet", ore="default:desert_sandstone", wherein="default:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshhold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=4130293965, octaves=5, persist=0.60}, random_factor=1.0}) -minetest.register_ore({ore_type="sheet", ore="default:silver_sandstone", wherein="default:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshhold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=4130293965, octaves=5, persist=0.60}, random_factor=1.0}) -minetest.register_ore({ore_type="sheet", ore="default:desert_stone", wherein="default:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshhold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=163281090, octaves=5, persist=0.60}, random_factor=1.0}) -minetest.register_ore({ore_type="sheet", ore="lib_materials:stone_brown", wherein="default:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshhold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=163281090, octaves=5, persist=0.60}, random_factor=1.0}) -minetest.register_ore({ore_type="sheet", ore="lib_materials:stone_sand", wherein="default:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshhold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=163281090, octaves=5, persist=0.60}, random_factor=1.0}) +local mgparams = minetest.get_mapgen_params() +local seed = mgparams.seed +--local mg_seed = mgparams.seed + +local oredefs = {} + +lib_materials.add_oredef = function(ore_name, ore_seed) + + oredefs[ore_name] = ore_seed +end + +lib_materials.get_oredefs = function() + + local str = "" + + for n, s in pairs(oredefs) do + + str = str .. n .. " - " .. s .. "\n" + + end + + return str + +end + +minetest.register_chatcommand("get_oredefs", { + description = S("Get a list of ore names and seeds."), + func = function(name, params) + + --lib_materials.get_oredefs() + --minetest.debug(lib_shapes.shapes_created) + --minetest.log(S("[MOD] lib_materials: Decorating Hot Humid Biomes")) + minetest.chat_send_player(name, lib_materials.get_oredefs()) + + end --- Adds default desert_stone, desert_sandstone, and stone_brown to stone_sand -minetest.register_ore({ - ore_type = "scatter", - ore = "default:desert_stone", - wherein = {"lib_materials:stone_sand"}, - clust_scarcity = 4 * 4 * 4, - clust_num_ores = 8, - clust_size = 6, - y_min = -10, - y_max = 71, - noise_params = { - offset = 0.35, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = -316, - octaves = 1, - persist = 0.5 - }, }) -minetest.register_ore({ - ore_type = "scatter", - ore = "default:desert_sandstone", - wherein = {"lib_materials:stone_sand"}, - clust_scarcity = 4 * 4 * 4, - clust_num_ores = 8, - clust_size = 6, - y_min = -10, - y_max = 71, - noise_params = { - offset = 0.35, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = -613, - octaves = 1, - persist = 0.5 - }, -}) -minetest.register_ore({ - ore_type = "scatter", - ore = "lib_materials:stone_brown", - wherein = {"lib_materials:stone_sand"}, - clust_scarcity = 4 * 4 * 4, - clust_num_ores = 8, - clust_size = 6, - y_min = -10, - y_max = 71, - noise_params = { - offset = 0.35, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = -613, - octaves = 1, - persist = 0.5 - }, -}) +local add_ore_blob = function(name, parent, biomes) + minetest.register_ore({ + ore_type = "blob", + ore = name, + wherein = parent, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 8, + clust_size = 6, + y_min = -10, + y_max = 71, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = -316, + octaves = 1, + persist = 0.5 + }, + biomes = biomes or nil, + random_factor = 1.0 + }) + +end + +local add_ore_blob2 = function(name, parent, biomes) + + local ore_seed = tonumber(name) + + minetest.register_ore({ + ore_type = "blob", + ore = name, + wherein = parent, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 32, + clust_size = 20, + y_min = -1000, + y_max = 31000, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 64, y = 64, z = 64}, + seed = ore_seed, + octaves = 1, + persist = 0.5 + }, + biomes = biomes or nil, + random_factor = 1.0 + }) + +end + + +local add_ore_sheet = function(name, parent, density, min_y, max_y, biomes) + + local spread_val = 2^(density * 10) + --local ore_seed = seed + --local ore_seed = 4130293965 + --local ore_seed = 89 + local ore_seed = math.random(1, spread_val) + --local ore_seed = string.len(name) + spread_val + + lib_materials.add_oredef(name, ore_seed) + + minetest.register_ore({ + ore_type = "sheet", + ore = name, + wherein = parent, + clust_size = 8, + y_min = min_y - lib_materials.biome_vertical_blend, + y_max = max_y + lib_materials.biome_vertical_blend, + noise_threshold = density, + noise_params = { + offset = 0, + scale = 1, + spread = {x = 128, y = 128, z = 128}, + seed = ore_seed, + octaves = 5, + persist = 0.60 + }, + column_height_min = (lib_materials.biome_altitude_range / 2) + lib_materials.biome_vertical_blend, --1 + column_height_max = lib_materials.biome_altitude_range + (lib_materials.biome_vertical_blend * 2), + column_midpoint_factor = 0.5, + biomes = biomes or nil + }) + + +end + +local add_ore_sheet_01 = function(name, parent, density, min_y, max_y, biomes) + + local spread_val = 2^(density * 10) + local ore_seed = math.random(1, spread_val) + + minetest.register_ore({ + ore_type = "sheet", + ore = name, + wherein = parent, + clust_size = (density * 10), + y_min = min_y, + y_max = max_y, + noise_threshold = density, + noise_params = { + offset = 0, + scale = 1, + spread = {x = spread_val, y = spread_val, z = spread_val}, + seed = ore_seed, + octaves = 5, + persist = 0.60 + }, + column_height_min = 1, + column_height_max = lib_materials.biome_altitude_range, + column_midpoint_factor = 0.5, + biomes = biomes or nil + }) + + +end + +local add_ore_sheet_03 = function(name, parent, density, min_y, max_y, biomes) + + --local ore_seed = seed + math.random() --4130293965 + --local name_num = tonumber(name) + local spread_val = 2^(density * 10) + local ore_seed = math.random(1, spread_val) + + minetest.register_ore({ + ore_type = "sheet", + ore = name, + wherein = parent, + clust_size = 8, + y_min = min_y, + y_max = max_y, + noise_threshold = density, + noise_params = { + offset = 0, + scale = 1, + spread = {x = 64, y = 64, z = 64}, + seed = ore_seed, + octaves = 5, + persist = 0.60 + }, + column_height_min = 1, + column_height_max = lib_materials.biome_altitude_range, + column_midpoint_factor = 0.5, + biomes = biomes or nil + }) + + +end + +local add_ore_sheet_orig = function(name, parent, density, biomes) + + --local ore_seed = seed + math.random() --4130293965 + local ore_seed = tonumber(name) + + minetest.register_ore({ + ore_type = "sheet", + ore = name, + wherein = parent, + clust_size = 40, + y_min = -1000, + y_max = 31000, + noise_threshold = density, + noise_params = { + offset = 0, + scale = 1, + spread = {x = 128, y = 128, z = 128}, + seed = ore_seed, + octaves = 5, + persist = 0.60 + }, + column_height_min = 1, + column_height_max = 16, + column_midpoint_factor = 0.5, + biomes = biomes or nil + }) + + +end + + +local add_ore_blob_01 = function(name, parent, min_y, max_y, biomes) + + local ore_seed = tonumber(name) + + minetest.register_ore({ + ore_type = "blob", + ore = name, + wherein = parent, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 32, + clust_size = 6, + y_min = min_y - (lib_materials.biome_altitude_range / 2), + y_max = max_y + (lib_materials.biome_altitude_range / 2), + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 64, y = 64, z = 64}, + seed = ore_seed, + octaves = 1, + persist = 0.5 + }, + biomes = biomes or nil, + random_factor = 1.0 + }) + +end + +local add_ore_stratum = function(name, parent, biomes) + + minetest.register_ore({ + ore_type = "stratum", + ore = name, + wherein = parent, +-- clust_num_ores = 250, + clust_scarcity = 1, +-- clust_size = 10, + y_min = lib_materials.maxheight_beach, -- -1000, + y_max = (lib_materials.maxheight_highland - 10), -- 31000, +-- noise_threshold = 0.1, + np_stratum_thickness = { + offset = 8, + scale = 4, + spread = {x = 100, y = 100, z = 100}, + seed = 17, + octaves = 3, + persist = 0.7 + }, + noise_params = { + offset = 0, + scale = 1, + spread = {x = 256, y = 256, z = 256}, + seed = 4130293965, + octaves = 5, + persist = 0.60 + }, + biomes = biomes or nil, +-- random_factor = 1.0 + }) + + +end + +local add_ore_vein = function() + +end + +--[[ + -- -- Adds stone types(default types{desert_stone, sandstone, desert_sandstone, silver_sandstone}; lib_materials types{stone_brown, stone_sand}) as ores within default:stone + -- minetest.register_ore({ore_type="sheet", ore="lib_materials:stone_sandstone", wherein="lib_materials:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=4130293965, octaves=5, persist=0.60}, random_factor=1.0}) + -- minetest.register_ore({ore_type="sheet", ore="lib_materials:stone_sandstone_desert", wherein="lib_materials:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=4130293965, octaves=5, persist=0.60}, random_factor=1.0}) + -- minetest.register_ore({ore_type="sheet", ore="lib_materials:stone_sandstone_silver", wherein="lib_materials:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=4130293965, octaves=5, persist=0.60}, random_factor=1.0}) + -- minetest.register_ore({ore_type="sheet", ore="lib_materials:stone_desert", wherein="lib_materials:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=163281090, octaves=5, persist=0.60}, random_factor=1.0}) + -- minetest.register_ore({ore_type="sheet", ore="lib_materials:stone_brown", wherein="lib_materials:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=163281090, octaves=5, persist=0.60}, random_factor=1.0}) + -- minetest.register_ore({ore_type="sheet", ore="lib_materials:stone_sand", wherein="lib_materials:stone", clust_num_ores=250, clust_scarcity=60, clust_size=10, y_min=-1000, y_max=31000, noise_threshold=0.1, noise_params={offset=0, scale=1, spread={x=256, y=256, z=256}, seed=163281090, octaves=5, persist=0.60}, random_factor=1.0}) + -- -- Adds default desert_stone, desert_sandstone, and stone_brown to stone_sand + -- minetest.register_ore({ore_type = "blob", ore = "lib_materials:stone_desert", wherein = {"lib_materials:stone_sand"}, clust_scarcity = 4 * 4 * 4, clust_num_ores = 8, clust_size = 6, y_min = -10, y_max = 71, noise_params = { offset = 0.35, scale = 0.2, spread = {x = 5, y = 5, z = 5}, seed = -316, octaves = 1, persist = 0.5 }, }) + -- minetest.register_ore({ore_type = "blob", ore = "lib_materials:stone_sandstone_desert", wherein = {"lib_materials:stone_sand"}, clust_scarcity = 4 * 4 * 4, clust_num_ores = 8, clust_size = 6, y_min = -10, y_max = 71, noise_params = {offset = 0.35, scale = 0.2, spread = {x = 5, y = 5, z = 5}, seed = -613, octaves = 1, persist = 0.5},}) + -- minetest.register_ore({ore_type = "blob", ore = "lib_materials:stone_brown", wherein = {"lib_materials:stone_sand"}, clust_scarcity = 4 * 4 * 4, clust_num_ores = 8, clust_size = 6, y_min = -10, y_max = 71, noise_params = { offset = 0.35, scale = 0.2, spread = {x = 5, y = 5, z = 5}, seed = -613, octaves = 1, persist = 0.5 },}) + + -- add_ore_sheet("lib_materials:stone_sandstone", "lib_materials:stone") + -- add_ore_sheet("lib_materials:stone_sandstone_desert", "lib_materials:stone") + -- add_ore_sheet("lib_materials:stone_sandstone_silver", "lib_materials:stone") + -- add_ore_sheet("lib_materials:stone_desert", "lib_materials:stone") + -- add_ore_sheet("lib_materials:stone_brown", "lib_materials:stone") + -- add_ore_sheet("lib_materials:stone_sand", "lib_materials:stone") + -- add_ore_sheet("lib_materials:stone_desert", "lib_materials:stone_sand") + -- add_ore_sheet("lib_materials:stone_sandstone_desert", "lib_materials:stone_sand") + -- add_ore_sheet("lib_materials:stone_brown", "lib_materials:stone_sand") +--]] + +local function add_dirt_grass_types_as_ore() + +--HOT HUMID + add_ore_sheet("lib_materials:dirt_silt_01", {"lib_materials:sand", }, 0.8, lib_materials.beach_depth, lib_materials.maxheight_beach, {"hot_humid_beach", }) + + add_ore_sheet("lib_materials:dirt_black_with_grass_hot_humid_coastal", {"lib_materials:dirt_with_grass_hot_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_hot_humid_coastal", {"lib_materials:dirt_with_grass_hot_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_humid_coastal", {"lib_materials:dirt_with_grass_hot_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_humid_coastal", {"lib_materials:dirt_with_grass_hot_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_humid_coastal", {"lib_materials:dirt_with_grass_hot_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_humid_coastal", }) + add_ore_sheet_01("lib_materials:dirt_black_with_litter_fungi", {"lib_materials:dirt_with_grass_hot_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_humid_coastal", }) + + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_humid_lowland", {"lib_materials:dirt_with_grass_hot_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_humid_lowland", {"lib_materials:dirt_with_grass_hot_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_humid_lowland", {"lib_materials:dirt_with_grass_hot_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_humid_lowland", }) + add_ore_sheet_01("lib_materials:dirt_black_with_litter_fungi", {"lib_materials:dirt_with_grass_hot_humid_lowland", }, 0.6, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_humid_lowland", }) + + add_ore_sheet("lib_materials:dirt_black_with_grass_hot_humid_shelf", {"lib_materials:dirt_with_grass_hot_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_hot_humid_shelf", {"lib_materials:dirt_with_grass_hot_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_humid_shelf", {"lib_materials:dirt_with_grass_hot_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_humid_shelf", {"lib_materials:dirt_with_grass_hot_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_humid_shelf", {"lib_materials:dirt_with_grass_hot_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_humid_shelf", }) + add_ore_sheet_01("lib_materials:dirt_black_with_litter_fungi", {"lib_materials:dirt_with_grass_hot_humid_shelf", }, 0.6, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_humid_shelf", }) + + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_humid_highland", {"lib_materials:dirt_with_grass_hot_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_humid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_humid_highland", {"lib_materials:dirt_with_grass_hot_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_humid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_humid_highland", {"lib_materials:dirt_with_grass_hot_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_humid_highland", }) + add_ore_sheet_01("lib_materials:dirt_black_with_litter_fungi", {"lib_materials:dirt_with_grass_hot_humid_highland", }, 0.4, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_humid_highland", }) + add_ore_sheet("lib_materials:dirt_black_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_humid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_humid_highland", }) +--HOT SEMIHUMID + add_ore_sheet("lib_materials:dirt_silt_01", {"lib_materials:sand_volcanic", }, 0.8, lib_materials.beach_depth, lib_materials.maxheight_beach, {"hot_semihumid_beach", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_semihumid_coastal", {"lib_materials:dirt_with_grass_hot_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_semihumid_coastal", {"lib_materials:dirt_with_grass_hot_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_semihumid_coastal", {"lib_materials:dirt_with_grass_hot_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_semihumid_lowland", {"lib_materials:dirt_with_grass_hot_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_semihumid_lowland", {"lib_materials:dirt_with_grass_hot_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_semihumid_lowland", {"lib_materials:dirt_with_grass_hot_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_semihumid_shelf", {"lib_materials:dirt_with_grass_hot_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_semihumid_shelf", {"lib_materials:dirt_with_grass_hot_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_semihumid_shelf", {"lib_materials:dirt_with_grass_hot_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_semihumid_highland", {"lib_materials:dirt_with_grass_hot_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_semihumid_highland", {"lib_materials:dirt_with_grass_hot_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_semihumid_highland", {"lib_materials:dirt_with_grass_hot_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_black_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_rainforest", {"lib_materials:dirt_with_grass_hot_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_semihumid_highland", }) +--HOT TEMPERATE + add_ore_sheet("lib_materials:dirt_black_with_grass_hot_temperate_coastal", {"lib_materials:dirt_with_grass_hot_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_hot_temperate_coastal", {"lib_materials:dirt_with_grass_hot_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_temperate_coastal", {"lib_materials:dirt_with_grass_hot_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_temperate_coastal", {"lib_materials:dirt_with_grass_hot_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_temperate_coastal", {"lib_materials:dirt_with_grass_hot_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_hot_temperate_lowland", {"lib_materials:dirt_with_grass_hot_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_hot_temperate_lowland", {"lib_materials:dirt_with_grass_hot_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_temperate_lowland", {"lib_materials:dirt_with_grass_hot_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_temperate_lowland", {"lib_materials:dirt_with_grass_hot_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_temperate_lowland", {"lib_materials:dirt_with_grass_hot_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_hot_temperate_shelf", {"lib_materials:dirt_with_grass_hot_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_hot_temperate_shelf", {"lib_materials:dirt_with_grass_hot_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_temperate_shelf", {"lib_materials:dirt_with_grass_hot_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_temperate_shelf", {"lib_materials:dirt_with_grass_hot_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_temperate_shelf", {"lib_materials:dirt_with_grass_hot_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_hot_temperate_highland", {"lib_materials:dirt_with_grass_hot_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_hot_temperate_highland", {"lib_materials:dirt_with_grass_hot_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_temperate_highland", {"lib_materials:dirt_with_grass_hot_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_temperate_highland", {"lib_materials:dirt_with_grass_hot_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_temperate_highland", {"lib_materials:dirt_with_grass_hot_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_temperate_highland", }) +--HOT SEMIARID + add_ore_sheet("lib_materials:dirt_black_with_grass_hot_semiarid_coastal", {"lib_materials:dirt_with_grass_hot_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_hot_semiarid_coastal", {"lib_materials:dirt_with_grass_hot_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_semiarid_coastal", {"lib_materials:dirt_with_grass_hot_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_semiarid_coastal", {"lib_materials:dirt_with_grass_hot_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_semiarid_coastal", {"lib_materials:dirt_with_grass_hot_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_hot_semiarid_lowland", {"lib_materials:dirt_with_grass_hot_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_hot_semiarid_lowland", {"lib_materials:dirt_with_grass_hot_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_semiarid_lowland", {"lib_materials:dirt_with_grass_hot_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_semiarid_lowland", {"lib_materials:dirt_with_grass_hot_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_semiarid_lowland", {"lib_materials:dirt_with_grass_hot_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_hot_semiarid_shelf", {"lib_materials:dirt_with_grass_hot_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_hot_semiarid_shelf", {"lib_materials:dirt_with_grass_hot_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_semiarid_shelf", {"lib_materials:dirt_with_grass_hot_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_semiarid_shelf", {"lib_materials:dirt_with_grass_hot_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_semiarid_shelf", {"lib_materials:dirt_with_grass_hot_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_hot_semiarid_highland", {"lib_materials:dirt_with_grass_hot_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_hot_semiarid_highland", {"lib_materials:dirt_with_grass_hot_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_hot_semiarid_highland", {"lib_materials:dirt_with_grass_hot_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_hot_semiarid_highland", {"lib_materials:dirt_with_grass_hot_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_hot_semiarid_highland", {"lib_materials:dirt_with_grass_hot_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_semiarid_highland", }) +--HOT_ARID + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_arid_coastal", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_arid_coastal", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_arid_coastal", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_arid_coastal", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"hot_arid_coastal", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_arid_lowland", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_arid_lowland", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_arid_lowland", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_arid_lowland", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"hot_arid_lowland", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_arid_shelf", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_arid_shelf", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_arid_shelf", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_arid_shelf", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"hot_arid_shelf", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_arid_highland", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_arid_highland", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_arid_highland", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_arid_highland", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"hot_arid_highland", }) + +--WARM HUMID + add_ore_sheet("lib_materials:dirt_silt_01", {"lib_materials:sand_white", }, 0.8, lib_materials.beach_depth, lib_materials.maxheight_beach, {"warm_humid_beach", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_humid_coastal", {"lib_materials:dirt_with_grass_warm_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_humid_coastal", {"lib_materials:dirt_with_grass_warm_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_humid_coastal", {"lib_materials:dirt_with_grass_warm_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_humid_coastal", {"lib_materials:dirt_with_grass_warm_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_humid_coastal", {"lib_materials:dirt_with_grass_warm_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_humid_lowland", {"lib_materials:dirt_with_grass_warm_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_humid_lowland", {"lib_materials:dirt_with_grass_warm_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_humid_lowland", {"lib_materials:dirt_with_grass_warm_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_humid_lowland", {"lib_materials:dirt_with_grass_warm_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_humid_lowland", {"lib_materials:dirt_with_grass_warm_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_humid_shelf", {"lib_materials:dirt_with_grass_warm_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_humid_shelf", {"lib_materials:dirt_with_grass_warm_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_humid_shelf", {"lib_materials:dirt_with_grass_warm_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_humid_shelf", {"lib_materials:dirt_with_grass_warm_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_humid_shelf", {"lib_materials:dirt_with_grass_warm_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_humid_highland", {"lib_materials:dirt_with_grass_warm_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_humid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_humid_highland", {"lib_materials:dirt_with_grass_warm_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_humid_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_humid_highland", {"lib_materials:dirt_with_grass_warm_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_humid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_humid_highland", {"lib_materials:dirt_with_grass_warm_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_humid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_humid_highland", {"lib_materials:dirt_with_grass_warm_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_humid_highland", }) +--WARM SEMIHUMID + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_semihumid_coastal", {"lib_materials:dirt_with_grass_warm_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_semihumid_coastal", {"lib_materials:dirt_with_grass_warm_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_semihumid_coastal", {"lib_materials:dirt_with_grass_warm_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_semihumid_coastal", {"lib_materials:dirt_with_grass_warm_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_semihumid_coastal", {"lib_materials:dirt_with_grass_warm_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_semihumid_lowland", {"lib_materials:dirt_with_grass_warm_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_semihumid_lowland", {"lib_materials:dirt_with_grass_warm_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_semihumid_lowland", {"lib_materials:dirt_with_grass_warm_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_semihumid_lowland", {"lib_materials:dirt_with_grass_warm_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_semihumid_lowland", {"lib_materials:dirt_with_grass_warm_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_semihumid_shelf", {"lib_materials:dirt_with_grass_warm_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_semihumid_shelf", {"lib_materials:dirt_with_grass_warm_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_semihumid_shelf", {"lib_materials:dirt_with_grass_warm_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_semihumid_shelf", {"lib_materials:dirt_with_grass_warm_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_semihumid_shelf", {"lib_materials:dirt_with_grass_warm_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_semihumid_highland", {"lib_materials:dirt_with_grass_warm_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_semihumid_highland", {"lib_materials:dirt_with_grass_warm_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_semihumid_highland", {"lib_materials:dirt_with_grass_warm_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_semihumid_highland", {"lib_materials:dirt_with_grass_warm_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_semihumid_highland", {"lib_materials:dirt_with_grass_warm_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_semihumid_highland", }) +--WARM TEMPERATE + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_temperate_coastal", {"lib_materials:dirt_with_grass_warm_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_temperate_coastal", {"lib_materials:dirt_with_grass_warm_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_temperate_coastal", {"lib_materials:dirt_with_grass_warm_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_temperate_coastal", {"lib_materials:dirt_with_grass_warm_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_temperate_coastal", {"lib_materials:dirt_with_grass_warm_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_temperate_lowland", {"lib_materials:dirt_with_grass_warm_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_temperate_lowland", {"lib_materials:dirt_with_grass_warm_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_temperate_lowland", {"lib_materials:dirt_with_grass_warm_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_temperate_lowland", {"lib_materials:dirt_with_grass_warm_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_temperate_lowland", {"lib_materials:dirt_with_grass_warm_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_temperate_shelf", {"lib_materials:dirt_with_grass_warm_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_temperate_shelf", {"lib_materials:dirt_with_grass_warm_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_temperate_shelf", {"lib_materials:dirt_with_grass_warm_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_temperate_shelf", {"lib_materials:dirt_with_grass_warm_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_temperate_shelf", {"lib_materials:dirt_with_grass_warm_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_temperate_highland", {"lib_materials:dirt_with_grass_warm_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_temperate_highland", {"lib_materials:dirt_with_grass_warm_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_temperate_highland", {"lib_materials:dirt_with_grass_warm_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_temperate_highland", {"lib_materials:dirt_with_grass_warm_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_temperate_highland", {"lib_materials:dirt_with_grass_warm_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_temperate_highland", }) +--WARM SEMIARID + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_semiarid_coastal", {"lib_materials:dirt_with_grass_warm_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_semiarid_coastal", {"lib_materials:dirt_with_grass_warm_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_semiarid_coastal", {"lib_materials:dirt_with_grass_warm_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_semiarid_coastal", {"lib_materials:dirt_with_grass_warm_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_semiarid_coastal", {"lib_materials:dirt_with_grass_warm_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_semiarid_lowland", {"lib_materials:dirt_with_grass_warm_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_semiarid_lowland", {"lib_materials:dirt_with_grass_warm_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_semiarid_lowland", {"lib_materials:dirt_with_grass_warm_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_semiarid_lowland", {"lib_materials:dirt_with_grass_warm_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_semiarid_lowland", {"lib_materials:dirt_with_grass_warm_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_semiarid_shelf", {"lib_materials:dirt_with_grass_warm_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_semiarid_shelf", {"lib_materials:dirt_with_grass_warm_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_semiarid_shelf", {"lib_materials:dirt_with_grass_warm_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_semiarid_shelf", {"lib_materials:dirt_with_grass_warm_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_semiarid_shelf", {"lib_materials:dirt_with_grass_warm_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_warm_semiarid_highland", {"lib_materials:dirt_with_grass_warm_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_warm_semiarid_highland", {"lib_materials:dirt_with_grass_warm_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_warm_semiarid_highland", {"lib_materials:dirt_with_grass_warm_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_warm_semiarid_highland", {"lib_materials:dirt_with_grass_warm_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_warm_semiarid_highland", {"lib_materials:dirt_with_grass_warm_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_semiarid_highland", }) +--WARM ARID + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_arid_coastal", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_arid_coastal", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_arid_coastal", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_arid_coastal", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"warm_arid_coastal", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_arid_lowland", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_arid_lowland", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_arid_lowland", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_arid_lowland", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"warm_arid_lowland", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_arid_shelf", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_arid_shelf", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_arid_shelf", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_arid_shelf", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"warm_arid_shelf", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_arid_highland", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_arid_highland", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_arid_highland", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_arid_highland", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"warm_arid_highland", }) + +--TEMPERATE HUMID + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_humid_coastal", {"lib_materials:dirt_with_grass_temperate_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_humid_coastal", {"lib_materials:dirt_with_grass_temperate_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_humid_coastal", {"lib_materials:dirt_with_grass_temperate_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_humid_coastal", {"lib_materials:dirt_with_grass_temperate_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_humid_coastal", {"lib_materials:dirt_with_grass_temperate_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_humid_lowland", {"lib_materials:dirt_with_grass_temperate_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_humid_lowland", {"lib_materials:dirt_with_grass_temperate_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_humid_lowland", {"lib_materials:dirt_with_grass_temperate_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_humid_lowland", {"lib_materials:dirt_with_grass_temperate_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_humid_lowland", {"lib_materials:dirt_with_grass_temperate_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_humid_shelf", {"lib_materials:dirt_with_grass_temperate_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_humid_shelf", {"lib_materials:dirt_with_grass_temperate_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_humid_shelf", {"lib_materials:dirt_with_grass_temperate_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_humid_shelf", {"lib_materials:dirt_with_grass_temperate_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_humid_shelf", {"lib_materials:dirt_with_grass_temperate_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_humid_highland", {"lib_materials:dirt_with_grass_temperate_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_humid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_humid_highland", {"lib_materials:dirt_with_grass_temperate_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_humid_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_humid_highland", {"lib_materials:dirt_with_grass_temperate_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_humid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_humid_highland", {"lib_materials:dirt_with_grass_temperate_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_humid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_humid_highland", {"lib_materials:dirt_with_grass_temperate_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_humid_highland", }) +--TEMPERATE SEMIHUMID + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_semihumid_coastal", {"lib_materials:dirt_with_grass_temperate_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_semihumid_coastal", {"lib_materials:dirt_with_grass_temperate_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_semihumid_coastal", {"lib_materials:dirt_with_grass_temperate_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_semihumid_coastal", {"lib_materials:dirt_with_grass_temperate_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_semihumid_coastal", {"lib_materials:dirt_with_grass_temperate_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_semihumid_lowland", {"lib_materials:dirt_with_grass_temperate_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_semihumid_lowland", {"lib_materials:dirt_with_grass_temperate_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_semihumid_lowland", {"lib_materials:dirt_with_grass_temperate_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_semihumid_lowland", {"lib_materials:dirt_with_grass_temperate_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_semihumid_lowland", {"lib_materials:dirt_with_grass_temperate_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_semihumid_shelf", {"lib_materials:dirt_with_grass_temperate_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_semihumid_shelf", {"lib_materials:dirt_with_grass_temperate_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_semihumid_shelf", {"lib_materials:dirt_with_grass_temperate_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_semihumid_shelf", {"lib_materials:dirt_with_grass_temperate_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_semihumid_shelf", {"lib_materials:dirt_with_grass_temperate_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_semihumid_highland", {"lib_materials:dirt_with_grass_temperate_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_semihumid_highland", {"lib_materials:dirt_with_grass_temperate_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_semihumid_highland", {"lib_materials:dirt_with_grass_temperate_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_semihumid_highland", {"lib_materials:dirt_with_grass_temperate_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_semihumid_highland", {"lib_materials:dirt_with_grass_temperate_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_semihumid_highland", }) +--TEMPERATE TEMPERATE + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_temperate_coastal", {"lib_materials:dirt_with_grass_temperate_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_temperate_coastal", {"lib_materials:dirt_with_grass_temperate_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_temperate_coastal", {"lib_materials:dirt_with_grass_temperate_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_temperate_coastal", {"lib_materials:dirt_with_grass_temperate_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_temperate_coastal", {"lib_materials:dirt_with_grass_temperate_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_temperate_lowland", {"lib_materials:dirt_with_grass_temperate_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_temperate_lowland", {"lib_materials:dirt_with_grass_temperate_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_temperate_lowland", {"lib_materials:dirt_with_grass_temperate_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_temperate_lowland", {"lib_materials:dirt_with_grass_temperate_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_temperate_lowland", {"lib_materials:dirt_with_grass_temperate_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_with_grass_gray", {"lib_materials:dirt_with_grass_temperate_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_temperate_shelf", {"lib_materials:dirt_with_grass_temperate_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_temperate_shelf", {"lib_materials:dirt_with_grass_temperate_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_temperate_shelf", {"lib_materials:dirt_with_grass_temperate_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_temperate_shelf", {"lib_materials:dirt_with_grass_temperate_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_temperate_shelf", {"lib_materials:dirt_with_grass_temperate_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_with_grass_gray", {"lib_materials:dirt_with_grass_temperate_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_temperate_highland", {"lib_materials:dirt_with_grass_temperate_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_temperate_highland", {"lib_materials:dirt_with_grass_temperate_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_temperate_highland", {"lib_materials:dirt_with_grass_temperate_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_temperate_highland", {"lib_materials:dirt_with_grass_temperate_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_temperate_highland", {"lib_materials:dirt_with_grass_temperate_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_temperate_highland", }) +--TEMPERATE SEMIARID + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_semiarid_coastal", {"lib_materials:dirt_with_grass_temperate_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_semiarid_coastal", {"lib_materials:dirt_with_grass_temperate_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_semiarid_coastal", {"lib_materials:dirt_with_grass_temperate_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_semiarid_coastal", {"lib_materials:dirt_with_grass_temperate_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_semiarid_coastal", {"lib_materials:dirt_with_grass_temperate_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_semiarid_lowland", {"lib_materials:dirt_with_grass_temperate_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_semiarid_lowland", {"lib_materials:dirt_with_grass_temperate_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_semiarid_lowland", {"lib_materials:dirt_with_grass_temperate_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_semiarid_lowland", {"lib_materials:dirt_with_grass_temperate_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_semiarid_lowland", {"lib_materials:dirt_with_grass_temperate_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_semiarid_shelf", {"lib_materials:dirt_with_grass_temperate_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_semiarid_shelf", {"lib_materials:dirt_with_grass_temperate_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_semiarid_shelf", {"lib_materials:dirt_with_grass_temperate_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_semiarid_shelf", {"lib_materials:dirt_with_grass_temperate_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_semiarid_shelf", {"lib_materials:dirt_with_grass_temperate_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_temperate_semiarid_highland", {"lib_materials:dirt_with_grass_temperate_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_temperate_semiarid_highland", {"lib_materials:dirt_with_grass_temperate_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_temperate_semiarid_highland", {"lib_materials:dirt_with_grass_temperate_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_temperate_semiarid_highland", {"lib_materials:dirt_with_grass_temperate_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_temperate_semiarid_highland", {"lib_materials:dirt_with_grass_temperate_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_semiarid_highland", }) +--TEMPERATE ARID + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_arid_coastal", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_arid_coastal", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_arid_coastal", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_arid_coastal", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"temperate_arid_coastal", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_arid_lowland", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_arid_lowland", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_arid_lowland", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_arid_lowland", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"temperate_arid_lowland", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_arid_shelf", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_arid_shelf", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_arid_shelf", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_arid_shelf", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"temperate_arid_shelf", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_arid_highland", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_arid_highland", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_arid_highland", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_arid_highland", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"temperate_arid_highland", }) + +--COOL HUMID + add_ore_sheet("lib_materials:dirt_black_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_humid_coastal", {"lib_materials:dirt_with_grass_cool_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_humid_coastal", {"lib_materials:dirt_with_grass_cool_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_humid_coastal", {"lib_materials:dirt_with_grass_cool_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_humid_coastal", {"lib_materials:dirt_with_grass_cool_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_humid_coastal", {"lib_materials:dirt_with_grass_cool_humid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_humid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_humid_lowland", {"lib_materials:dirt_with_grass_cool_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_humid_lowland", {"lib_materials:dirt_with_grass_cool_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_humid_lowland", {"lib_materials:dirt_with_grass_cool_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_humid_lowland", {"lib_materials:dirt_with_grass_cool_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_humid_lowland", {"lib_materials:dirt_with_grass_cool_humid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_humid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_humid_shelf", {"lib_materials:dirt_with_grass_cool_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_humid_shelf", {"lib_materials:dirt_with_grass_cool_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_humid_shelf", {"lib_materials:dirt_with_grass_cool_humid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_humid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_humid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_litter_coniferous", {"lib_materials:dirt_with_grass_cool_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_humid_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_humid_highland", {"lib_materials:dirt_with_grass_cool_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_humid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_humid_highland", {"lib_materials:dirt_with_grass_cool_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_humid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_humid_highland", {"lib_materials:dirt_with_grass_cool_humid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_humid_highland", }) +--COOL SEMIHUMID + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_semihumid_coastal", {"lib_materials:dirt_with_grass_cool_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_semihumid_coastal", {"lib_materials:dirt_with_grass_cool_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_semihumid_coastal", {"lib_materials:dirt_with_grass_cool_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_semihumid_coastal", {"lib_materials:dirt_with_grass_cool_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_semihumid_coastal", {"lib_materials:dirt_with_grass_cool_semihumid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_semihumid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_semihumid_lowland", {"lib_materials:dirt_with_grass_cool_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_semihumid_lowland", {"lib_materials:dirt_with_grass_cool_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_semihumid_lowland", {"lib_materials:dirt_with_grass_cool_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_semihumid_lowland", {"lib_materials:dirt_with_grass_cool_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_semihumid_lowland", {"lib_materials:dirt_with_grass_cool_semihumid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_semihumid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_semihumid_shelf", {"lib_materials:dirt_with_grass_cool_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_semihumid_shelf", {"lib_materials:dirt_with_grass_cool_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_semihumid_shelf", {"lib_materials:dirt_with_grass_cool_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_semihumid_shelf", {"lib_materials:dirt_with_grass_cool_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_semihumid_shelf", {"lib_materials:dirt_with_grass_cool_semihumid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_semihumid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_semihumid_highland", {"lib_materials:dirt_with_grass_cool_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_semihumid_highland", {"lib_materials:dirt_with_grass_cool_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_semihumid_highland", {"lib_materials:dirt_with_grass_cool_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_semihumid_highland", {"lib_materials:dirt_with_grass_cool_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_semihumid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_semihumid_highland", {"lib_materials:dirt_with_grass_cool_semihumid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_semihumid_highland", }) +--COOL TEMPERATE + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_temperate_coastal", {"lib_materials:dirt_with_grass_cool_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_temperate_coastal", {"lib_materials:dirt_with_grass_cool_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_temperate_coastal", {"lib_materials:dirt_with_grass_cool_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_temperate_coastal", {"lib_materials:dirt_with_grass_cool_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_temperate_coastal", {"lib_materials:dirt_with_grass_cool_temperate_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_temperate_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_temperate_lowland", {"lib_materials:dirt_with_grass_cool_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_temperate_lowland", {"lib_materials:dirt_with_grass_cool_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_temperate_lowland", {"lib_materials:dirt_with_grass_cool_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_temperate_lowland", {"lib_materials:dirt_with_grass_cool_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_temperate_lowland", {"lib_materials:dirt_with_grass_cool_temperate_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_temperate_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_temperate_shelf", {"lib_materials:dirt_with_grass_cool_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_temperate_shelf", {"lib_materials:dirt_with_grass_cool_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_temperate_shelf", {"lib_materials:dirt_with_grass_cool_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_temperate_shelf", {"lib_materials:dirt_with_grass_cool_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_temperate_shelf", {"lib_materials:dirt_with_grass_cool_temperate_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_temperate_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_temperate_highland", {"lib_materials:dirt_with_grass_cool_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_temperate_highland", {"lib_materials:dirt_with_grass_cool_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_temperate_highland", {"lib_materials:dirt_with_grass_cool_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_temperate_highland", {"lib_materials:dirt_with_grass_cool_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_temperate_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_temperate_highland", {"lib_materials:dirt_with_grass_cool_temperate_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_temperate_highland", }) +--COOL SEMIRID + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_semiarid_coastal", {"lib_materials:dirt_with_grass_cool_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_semiarid_coastal", {"lib_materials:dirt_with_grass_cool_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_semiarid_coastal", {"lib_materials:dirt_with_grass_cool_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_semiarid_coastal", {"lib_materials:dirt_with_grass_cool_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_semiarid_coastal", {"lib_materials:dirt_with_grass_cool_semiarid_coastal", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_semiarid_coastal", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_semiarid_lowland", {"lib_materials:dirt_with_grass_cool_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_semiarid_lowland", {"lib_materials:dirt_with_grass_cool_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_semiarid_lowland", {"lib_materials:dirt_with_grass_cool_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_semiarid_lowland", {"lib_materials:dirt_with_grass_cool_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_semiarid_lowland", {"lib_materials:dirt_with_grass_cool_semiarid_lowland", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_semiarid_lowland", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_semiarid_shelf", {"lib_materials:dirt_with_grass_cool_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_semiarid_shelf", {"lib_materials:dirt_with_grass_cool_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_semiarid_shelf", {"lib_materials:dirt_with_grass_cool_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_semiarid_shelf", {"lib_materials:dirt_with_grass_cool_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_semiarid_shelf", {"lib_materials:dirt_with_grass_cool_semiarid_shelf", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_semiarid_shelf", }) + add_ore_sheet("lib_materials:dirt_black_with_grass_cool_semiarid_highland", {"lib_materials:dirt_with_grass_cool_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_brown_with_grass_cool_semiarid_highland", {"lib_materials:dirt_with_grass_cool_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_clayey_with_grass_cool_semiarid_highland", {"lib_materials:dirt_with_grass_cool_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_sandy_with_grass_cool_semiarid_highland", {"lib_materials:dirt_with_grass_cool_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_semiarid_highland", }) + add_ore_sheet("lib_materials:dirt_silty_with_grass_cool_semiarid_highland", {"lib_materials:dirt_with_grass_cool_semiarid_highland", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_semiarid_highland", }) +--COOL ARID + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_arid_coastal", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_arid_coastal", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_arid_coastal", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_arid_coastal", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_beach, lib_materials.maxheight_coastal, {"cool_arid_coastal", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_arid_lowland", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_arid_lowland", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_arid_lowland", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_arid_lowland", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_coastal, lib_materials.maxheight_lowland, {"cool_arid_lowland", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_arid_shelf", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_arid_shelf", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_arid_shelf", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_arid_shelf", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_lowland, lib_materials.maxheight_shelf, {"cool_arid_shelf", }) + add_ore_sheet("lib_materials:sand", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_arid_highland", }) + add_ore_sheet("lib_materials:sand_desert", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_arid_highland", }) + add_ore_sheet("lib_materials:sand_white", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_arid_highland", }) + add_ore_sheet("lib_materials:stone_desert_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_arid_highland", }) + add_ore_sheet("lib_materials:stone_sandstone_white_gravel", {"lib_materials:stone_sandstone_desert_gravel", }, 0.8, lib_materials.maxheight_shelf, lib_materials.maxheight_highland, {"cool_arid_highland", }) + +end + +add_dirt_grass_types_as_ore() + + +--[[ -- Adds Air as ore within default:stone minetest.register_ore({ - ore_type = "scatter", + ore_type = "blob", ore = "air", - wherein = {"groups:stone"}, - clust_scarcity = 4 * 4 * 4, - clust_num_ores = 8, - clust_size = 6, + wherein = {"lib_materials:stone_limestone_01"}, + clust_scarcity = 16*8*16, + clust_num_ores = 16*16, + clust_size = 16, y_min = -50, y_max = -11, noise_params = { - offset = 0.35, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = -316, - octaves = 1, - persist = 0.5 + offset = 0, + scale = 1, + spread = {x = 256, y = 256, z = 256}, + seed = 4130293965, + octaves = 3, + persist = 0.6 }, }) +--]] --Adds default:water_source within default:stone -minetest.register_ore({ - ore_type = "scatter", - ore = "default:river_water_source", - wherein = {"groups:stone"}, - clust_scarcity = 4 * 4 * 4, - clust_num_ores = 8, - clust_size = 6, - y_min = -30, - y_max = 0, - noise_params = { - offset = 0.35, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = -316, - octaves = 1, - persist = 0.5 - }, -}) - - - --- Baked Clay within Orange Clay minetest.register_ore({ ore_type = "blob", - ore = "bakedclay:red", - wherein = {"bakedclay:orange"}, - clust_scarcity = 4 * 4 * 4, - clust_num_ores = 8, - clust_size = 6, - y_min = -10, - y_max = 71, + ore = "lib_materials:fluid_water_river_source", + wherein = {"lib_materials:stone_limestone_01"}, + clust_scarcity = 16*4*16, + clust_num_ores = 16*16, + clust_size = 16, + y_min = -50, + y_max = -11, noise_params = { - offset = 0.35, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = -316, - octaves = 1, - persist = 0.5 + offset = 0, + scale = 1, + spread = {x = 256, y = 256, z = 256}, + seed = 163281090, + octaves = 3, + persist = 0.6 }, }) -minetest.register_ore({ - ore_type = "blob", - ore = "bakedclay:grey", - wherein = {"bakedclay:orange"}, - clust_scarcity = 4 * 4 * 4, - clust_num_ores = 8, - clust_size = 6, - y_min = -10, - y_max = 71, - noise_params = { - offset = 0.35, - scale = 0.2, - spread = {x = 5, y = 5, z = 5}, - seed = -613, - octaves = 1, - persist = 0.5 - }, -}) +--Quicksand and Mud + minetest.register_ore({ + ore_type = "blob", + ore = "lib_materials:quicksand", + wherein = {"lib_materials:sand"}, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 8, + clust_size = 6, + y_min = 4, + y_max = 30, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = -316, + octaves = 1, + persist = 0.5 + }, + }) + minetest.register_ore({ + ore_type = "blob", + ore = "lib_materials:mud_wet", + wherein = {"lib_materials:dirt_mud_01"}, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 8, + clust_size = 6, + y_min = 4, + y_max = 30, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = -316, + octaves = 1, + persist = 0.5 + }, + }) +-- Clay, Sand, Silt within Dirt + minetest.register_ore({ + ore_type = "blob", + ore = "lib_materials:dirt_clayey", + wherein = {"lib_materials:dirt"}, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 8, + clust_size = 6, + y_min = -10, + y_max = 71, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = -316, + octaves = 1, + persist = 0.5 + }, + }) + minetest.register_ore({ + ore_type = "blob", + ore = "lib_materials:dirt_clay_red", + wherein = {"lib_materials:dirt_clayey"}, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 8, + clust_size = 6, + y_min = -10, + y_max = 71, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = -316, + octaves = 1, + persist = 0.5 + }, + }) + minetest.register_ore({ + ore_type = "blob", + ore = "lib_materials:dirt_clay_white", + wherein = {"lib_materials:dirt_clayey"}, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 8, + clust_size = 6, + y_min = -10, + y_max = 71, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = -316, + octaves = 1, + persist = 0.5 + }, + }) + minetest.register_ore({ + ore_type = "blob", + ore = "lib_materials:dirt_sandy", + wherein = {"lib_materials:dirt"}, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 8, + clust_size = 6, + y_min = -10, + y_max = 71, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = -613, + octaves = 1, + persist = 0.5 + }, + }) + minetest.register_ore({ + ore_type = "blob", + ore = "lib_materials:sand", + wherein = {"lib_materials:dirt_sandy"}, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 8, + clust_size = 6, + y_min = -10, + y_max = 71, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = -613, + octaves = 1, + persist = 0.5 + }, + }) + minetest.register_ore({ + ore_type = "blob", + ore = "lib_materials:dirt_silty", + wherein = {"lib_materials:dirt"}, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 8, + clust_size = 6, + y_min = -10, + y_max = 71, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = -613, + octaves = 1, + persist = 0.5 + }, + }) + minetest.register_ore({ + ore_type = "blob", + ore = "lib_materials:dirt_silt_01", + wherein = {"lib_materials:dirt_silty"}, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 8, + clust_size = 6, + y_min = -10, + y_max = 71, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = -316, + octaves = 1, + persist = 0.5 + }, + }) + minetest.register_ore({ + ore_type = "blob", + ore = "lib_materials:dirt_silt_02", + wherein = {"lib_materials:dirt_silty"}, + clust_scarcity = 4 * 4 * 4, + clust_num_ores = 8, + clust_size = 6, + y_min = -10, + y_max = 71, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 5, y = 5, z = 5}, + seed = -613, + octaves = 1, + persist = 0.5 + }, + }) + + +--Quartz + minetest.register_ore({ + ore_type = "scatter", + ore = "lib_materials:ore_stone_with_quartz", + wherein = "lib_materials:stone", + clust_scarcity = 5000, + clust_num_ores = 10, + clust_size = 5, + y_min = -59, + y_max = -10, + }) + minetest.register_ore({ + ore_type = "scatter", + ore = "lib_materials:ore_stone_with_quartz", + wherein = "lib_materials:desert_stone", + clust_scarcity = 5000, + clust_num_ores = 10, + clust_size = 5, + y_min = -59, + y_max = -10, + }) + minetest.register_ore({ + ore_type = "scatter", + ore = "lib_materials:ore_stone_with_quartz", + wherein = "lib_materials:desert_sandstone", + clust_scarcity = 5000, + clust_num_ores = 10, + clust_size = 5, + y_min = -59, + y_max = -10, + }) + minetest.register_ore({ + ore_type = "scatter", + ore = "lib_materials:ore_stone_with_quartz", + wherein = "lib_materials:sandstone", + clust_scarcity = 5000, + clust_num_ores = 10, + clust_size = 5, + y_min = -59, + y_max = -10, + }) + minetest.register_ore({ + ore_type = "scatter", + ore = "lib_materials:ore_stone_with_quartz", + wherein = "lib_materials:stone_brown", + clust_scarcity = 5000, + clust_num_ores = 10, + clust_size = 5, + y_min = -59, + y_max = -10, + }) + --Adds default ores to desert_stone -local add_ore = function(a, b, c, d, e, f, g) +local add_ore_scatter = function(a, b, c, d, e, f, g) minetest.register_ore({ ore_type = "scatter", @@ -165,33 +1073,619 @@ local add_ore = function(a, b, c, d, e, f, g) end -- Coal + add_ore_scatter("lib_materials:ore_stone_with_coal", "lib_materials:stone", 8 * 8 * 8, 9, 3, 31000, 1025) + add_ore_scatter("lib_materials:ore_stone_with_coal", "lib_materials:stone", 8 * 8 * 8, 8, 3, 64, -127) + add_ore_scatter("lib_materials:ore_stone_with_coal", "lib_materials:stone", 12 * 12 * 12, 30, 5, -128, -31000) + add_ore_scatter("lib_materials:ore_stone_with_coal", "lib_materials:stone_desert", 24*24*24, 27, 6, -31000, -16) -add_ore("default:stone_with_coal", "default:desert_stone", 24*24*24, 27, 6, -31000, -16) - --- Iron - -add_ore("default:stone_with_iron", "default:desert_stone", 9*9*9, 5, 3, -63, -16) -add_ore("default:stone_with_iron", "default:desert_stone", 24*24*24, 27, 6, -31000, -64) - ---Mese - -add_ore("default:stone_with_mese", "default:desert_stone", 14*14*14, 5, 3, -31000, -256) - --- Gold - -add_ore("default:stone_with_gold", "default:desert_stone", 15*15*15, 3, 2, -255, -64) -add_ore("default:stone_with_gold", "default:desert_stone", 13*13*13, 5, 3, -31000, -256) - --- Diamond - -add_ore("default:stone_with_diamond", "default:desert_stone", 17*17*17, 4, 3, -255, -128) -add_ore("default:stone_with_diamond", "default:desert_stone", 15*15*15, 4, 3, -31000, -256) +-- Tin + add_ore_scatter("lib_materials:ore_stone_with_tin", "lib_materials:stone", 10 * 10 * 10, 5, 3, 31000, 1025) + add_ore_scatter("lib_materials:ore_stone_with_tin", "lib_materials:stone", 13 * 13 * 13, 4, 3, 64, -127) + add_ore_scatter("lib_materials:ore_stone_with_tin", "lib_materials:stone", 10 * 10 * 10, 5, 3, -128, -31000) -- Copper + add_ore_scatter("lib_materials:ore_stone_with_copper", "lib_materials:stone", 9 * 9 * 9, 5, 3, 31000, 1025) + add_ore_scatter("lib_materials:ore_stone_with_copper", "lib_materials:stone", 12 * 12 * 12, 4, 3, 64, -127) + add_ore_scatter("lib_materials:ore_stone_with_copper", "lib_materials:stone", 9 * 9 * 9, 5, 3, -128, -31000) + add_ore_scatter("lib_materials:ore_stone_with_copper", "lib_materials:stone_desert", 9*9*9, 5, 3, -31000, -64) + +--Lead + add_ore_scatter("lib_materials:ore_stone_with_lead", "lib_materials:stone", 10*10*10, 24, 4, -100, -10) + add_ore_scatter("lib_materials:ore_stone_with_lead", "default:stone_desert", 10*10*10, 24, 4, -100, -10) + add_ore_scatter("lib_materials:ore_stone_with_lead", "lib_materials:stone_brown", 10*10*10, 24, 4, -100, -10) + +-- Iron + add_ore_scatter("lib_materials:ore_stone_with_iron", "lib_materials:stone", 9 * 9 * 9, 12, 3, 31000, 1025) + add_ore_scatter("lib_materials:ore_stone_with_iron", "lib_materials:stone", 7 * 7 * 7, 5, 3, -128, -255) + add_ore_scatter("lib_materials:ore_stone_with_iron", "lib_materials:stone", 12 * 12 * 12, 29, 5, -256, -31000) + add_ore_scatter("lib_materials:ore_stone_with_iron", "lib_materials:stone_desert", 9 * 9 * 9, 5, 3, -63, -16) + add_ore_scatter("lib_materials:ore_stone_with_iron", "lib_materials:stone_desert", 24 * 24 * 24, 27, 6, -31000, -64) + add_ore_scatter("lib_materials:ore_stone_desert_with_iron", "lib_materials:stone_desert", 12 * 12 * 12, 3, 2, -1, 200) + +-- Silver + add_ore_scatter("lib_materials:ore_stone_with_silver", "lib_materials:stone", 10*10*10, 24, 4, -100, -10) + add_ore_scatter("lib_materials:ore_stone_with_silver", "default:stone_desert", 10*10*10, 24, 4, -100, -10) + add_ore_scatter("lib_materials:ore_stone_with_silver", "lib_materials:stone_brown", 10*10*10, 24, 4, -100, -10) + +-- Gold + add_ore_scatter("lib_materials:ore_stone_with_gold", "lib_materials:stone", 13 * 13 * 13, 5, 3, 31000, 1025) + add_ore_scatter("lib_materials:ore_stone_with_gold", "lib_materials:stone", 15 * 15 * 15, 3, 2, -256, -511) + add_ore_scatter("lib_materials:ore_stone_with_gold", "lib_materials:stone", 13 * 13 * 13, 5, 3, -512, -31000) + add_ore_scatter("lib_materials:ore_stone_with_gold", "lib_materials:stone_desert", 15*15*15, 3, 2, -255, -64) + add_ore_scatter("lib_materials:ore_stone_with_gold", "lib_materials:stone_desert", 13*13*13, 5, 3, -31000, -256) + +-- Diamond + add_ore_scatter("lib_materials:ore_stone_with_diamond", "lib_materials:stone", 15 * 15 * 15, 4, 3, 31000, 1025) + add_ore_scatter("lib_materials:ore_stone_with_diamond", "lib_materials:stone", 17 * 17 * 17, 4, 3, -1024, -2047) + add_ore_scatter("lib_materials:ore_stone_with_diamond", "lib_materials:stone", 15 * 15 * 15, 4, 3, -2048, -31000) + add_ore_scatter("lib_materials:ore_stone_with_diamond", "lib_materials:stone_desert", 17*17*17, 4, 3, -255, -128) + add_ore_scatter("lib_materials:ore_stone_with_diamond", "lib_materials:stone_desert", 15*15*15, 4, 3, -31000, -256) + +-- Mese crystal + add_ore_scatter("lib_materials:ore_stone_with_mese", "lib_materials:stone", 14 * 14 * 14, 5, 3, 31000, 1025) + add_ore_scatter("lib_materials:ore_stone_with_mese", "lib_materials:stone", 18 * 18 * 18, 3, 2, -512, -1023) + add_ore_scatter("lib_materials:ore_stone_with_mese", "lib_materials:stone", 9 * 9 * 9, 5, 3, -1024, -31000) + +-- Mese block + add_ore_scatter("lib_materials:mineral_mese_block", "lib_materials:stone", 36 * 36 * 36, 3, 2, 31000, 1025) + add_ore_scatter("lib_materials:mineral_mese_block", "lib_materials:stone", 36 * 36 * 36, 3, 2, -2048, -4095) + add_ore_scatter("lib_materials:mineral_mese_block", "lib_materials:stone", 28 * 28 * 28, 5, 3, -4096, -31000) + add_ore_scatter("lib_materials:ore_stone_with_mese", "lib_materials:stone_desert", 14*14*14, 5, 3, -31000, -256) + + +--Darkage Ores + +--[[ +-- Some local constants to use for mapgen +local c_air = minetest.CONTENT_AIR +local c_ignore = minetest.CONTENT_IGNORE + +local c_stone = minetest.get_content_id("default:stone") +local c_water = minetest.get_content_id("default:water_source") +local c_sand = minetest.get_content_id("default:sand") +local c_dirt = minetest.get_content_id("default:dirt") +local c_lawn = minetest.get_content_id("default:dirt_with_grass") + +local stone_and_air_assoc = {[c_stone]=true,[c_air]=true} --associative array + +--Makes a stratus of rocks +--name of the rock to generate +--c_wherein id of node to replace, for example minetest.get_content_id("default:stone") +--ca_ceilin associative array +--minp, maxp the corners of the map to be generated +--seed random seed +--stratus_chance inverse probability in a given radius 1:2, 1:3 etc +--radius horizontal radius of the stratus +--radius_y vertical radius of the stratus +--deep how deep can be from the ground +local function generate_stratus(data, area, name, c_wherein, ca_ceilin, minp, maxp, seed, stratus_chance, radius, radius_y, deep, y_min, y_max) + if maxp.y < y_min + or minp.y > y_max then + return + end + + local c_node = minetest.get_content_id(name) + + -- it will be only generate a stratus for every 100 m of area + local stratus_per_volume=1 + local area_size = 45 + local y_min = math.max(minp.y, y_min) + local y_max = math.min(maxp.y, y_max) + local volume = ((maxp.x-minp.x+1)/area_size)*((y_max-y_min+1)/area_size)*((maxp.z-minp.z+1)/area_size) + local pr = PseudoRandom(seed) + local blocks = math.floor(stratus_per_volume*volume) + minetest.log("info", " <<"..name..">>"); + if blocks == 0 then + blocks = 1 + end + minetest.log("info", string.format(" blocks: %d in vol: %d (%d,%d,%d)", + blocks, volume, maxp.x-minp.x+1, y_max-y_min+1, maxp.z-minp.z+1)) + for i = 1,blocks do + if pr:next(1,stratus_chance) == 1 then + -- TODO deep + local y0=y_max-radius_y+1 + if y0 < y_min then + y0=y_min + else + y0=pr:next(y_min, y0) + end + local x0 = maxp.x-radius+1 + if x0 < minp.x then + x0 = minp.x + else + x0 = pr:next(minp.x, x0) + end + local z0 = maxp.z-radius+1 + if z0 < minp.z then + x0 = minp.z + else + z0 = pr:next(minp.z, z0) + end + local n = data[area:index(x0, y0, z0)] + local i = 0 + + if ca_ceilin[n] then + -- search for the node to replace + --print(" Searching nodes to replace from "..dump(y0-1).." to "..dump(y_min)) + local vi = area:index(x0, y0-1, z0) + for y1 = y0-1,y_min,-1 do + if data[vi] == c_wherein then + y0 = math.max(y1-deep, y_min) + break + end + vi = vi - area.ystride + end + local rx=pr:next(radius/2,radius)+1 + local rz=pr:next(radius/2,radius)+1 + local ry=pr:next(radius_y/2,radius_y)+1 + --print(" area of generation ("..dump(rx)..","..dump(rz)..","..dump(ry)..")") + vi = area:index(x0, y0, z0) + for x1=0,rx do + local vi = vi + x1 + rz = math.max(rz + 3 - pr:next(1,6), 1) + for z1=pr:next(1,3),rz do + local vi = vi + z1 * area.zstride + for y1 = pr:next(1,3), ry + pr:next(1,3) do + local vi = vi + y1 * area.ystride + if data[vi] == c_wherein then + data[vi] = c_node + i = i + 1 + end + end + end + end + end + minetest.log("info", " generated "..i.." blocks in ("..x0..","..y0..","..z0..")") + end + end + --print("generate_ore done") +end +--]] +--[[ +local function generate_claylike(data, varea, name, minp, maxp, seed, chance, minh, maxh, needs_dirt) + if maxp.y >= maxh+1 and minp.y <= minh-1 then + local c_ore = minetest.get_content_id(name) + local pr = PseudoRandom(seed) + + local divlen = 4 + local divs = (maxp.x-minp.x)/divlen+1; + for yy=minh,maxh do + local x = pr:next(1,chance) + if x == 1 then + for divx=0+1,divs-1-1 do + for divz=0+1,divs-1-1 do + local cx = minp.x + math.floor((divx+0.5)*divlen) + local cz = minp.z + math.floor((divz+0.5)*divlen) + local up = data[varea:index(cx,yy,cz)] + local down = data[varea:index(cx,yy-1,cz)] + if ( up == c_water or up == c_air ) and ( down == c_sand or (needs_dirt and (down == c_dirt or down == c_lawn ))) then + local num_water_around = 0 + if data[varea:index(cx-divlen*2,yy,cz)] == c_water then + num_water_around = num_water_around + 1 + end + if data[varea:index(cx+divlen*2,yy,cz)] == c_water then + num_water_around = num_water_around + 1 + end + if data[varea:index(cx,yy,cz-divlen*2)] == c_water then + num_water_around = num_water_around + 1 + end + if data[varea:index(cx,yy,cz+divlen*2)] == c_water then + num_water_around = num_water_around + 1 + end + if num_water_around < 3 then + for x1=-divlen,divlen do + for z1=-divlen,divlen do + local i = varea:index(cx+x1,yy-1,cz+z1) + local down = data[i] + if down == c_sand or (needs_dirt and (down == c_dirt or down == c_lawn)) then + data[i] = c_ore + end + end + end + end + end + end + end + end + end + end +end +--]] + +-- Generate chalk inside mountains + minetest.register_ore({ + ore_type = "sheet", + ore = "lib_materials:stone_chalk", + wherein = {"lib_materials:stone"}, + column_height_max = 30, + column_height_min = 20, + y_min = -20, + y_max = 50, + noise_threshold = 0.45, + noise_params = { + offset = 0.35, + scale = 0.2, + spread = {x = 30, y = 30, z = 30}, + octaves = 1, + persistence = 0.6 + }, + }) + + minetest.register_ore({ + ore_type = "sheet", + ore = "lib_materials:stone_tuff", + wherein = {"lib_materials:stone", "lib_materials:stone_gravel", }, + column_height_max = 20, + column_height_min = 15, + y_min = -200, + y_max = 200, + noise_threshold = 0.5, + noise_params = { + offset = 0.35, + scale = 0.19, + seed = seed+12, + spread = {x = 45, y = 45, z = 45}, + octaves = 1, + persistence = 0.6 + }, + }) + + minetest.register_ore({ + ore_type = "sheet", + ore = "lib_materials:stone_rhyolitic_tuff", + wherein = {"lib_materials:stone", "lib_materials:stone_gravel", }, + column_height_max = 20, + column_height_min = 15, + y_min = -2000, + y_max = 200, + noise_threshold = 0.53, + noise_params = { + offset = 0.35, + scale = 0.2, + seed = seed+13, + spread = {x = 100, y = 100, z = 100}, + octaves = 1, + persistence = 0.6 + }, + }) + +--old red sandstone + minetest.register_ore({ + ore_type = "sheet", + ore = "lib_materials:stone_sandstone_old_red", + wherein = {"lib_materials:stone", "lib_materials:dirt", "lib_materials:stone_gravel", }, + column_height_max = 8, + column_height_min = 6, + y_min = -200, + y_max = 500, + noise_threshold = 0.49, + noise_params = { + offset = 0.28, + scale = 0.3, + seed = seed+4, + spread = {x = 10, y = 10, z = 10}, + octaves = 1, + persistence = 0.6 + }, + }) + + + +--TO DOs Gneiss, Marble_03, Schist, Serpentine, Shale, Slate_01, ---ShadMOrdre +--[[ +--]] + minetest.register_ore({ + ore_type = "sheet", + ore = "lib_materials:stone_gneiss_01", + wherein = {"lib_materials:stone", }, + column_height_max = 8, + column_height_min = 6, + y_min = -200, + y_max = 500, + noise_threshold = 0.49, + noise_params = { + offset = 0.28, + scale = 0.3, + seed = seed+4, + spread = {x = 10, y = 10, z = 10}, + octaves = 1, + persistence = 0.6 + }, + }) + minetest.register_ore({ + ore_type = "sheet", + ore = "lib_materials:stone_marble_03", + wherein = {"lib_materials:stone", }, + column_height_max = 8, + column_height_min = 6, + y_min = -200, + y_max = 500, + noise_threshold = 0.49, + noise_params = { + offset = 0.28, + scale = 0.3, + seed = seed+4, + spread = {x = 10, y = 10, z = 10}, + octaves = 1, + persistence = 0.6 + }, + }) + minetest.register_ore({ + ore_type = "sheet", + ore = "lib_materials:stone_schist", + wherein = {"lib_materials:stone", }, + column_height_max = 8, + column_height_min = 6, + y_min = -200, + y_max = 500, + noise_threshold = 0.49, + noise_params = { + offset = 0.28, + scale = 0.3, + seed = seed+4, + spread = {x = 10, y = 10, z = 10}, + octaves = 1, + persistence = 0.6 + }, + }) + minetest.register_ore({ + ore_type = "sheet", + ore = "lib_materials:stone_serpentine", + wherein = {"lib_materials:stone", }, + column_height_max = 8, + column_height_min = 6, + y_min = -200, + y_max = 500, + noise_threshold = 0.49, + noise_params = { + offset = 0.28, + scale = 0.3, + seed = seed+4, + spread = {x = 10, y = 10, z = 10}, + octaves = 1, + persistence = 0.6 + }, + }) + minetest.register_ore({ + ore_type = "sheet", + ore = "lib_materials:stone_shale", + wherein = {"lib_materials:stone", }, + column_height_max = 8, + column_height_min = 6, + y_min = -200, + y_max = 500, + noise_threshold = 0.49, + noise_params = { + offset = 0.28, + scale = 0.3, + seed = seed+4, + spread = {x = 10, y = 10, z = 10}, + octaves = 1, + persistence = 0.6 + }, + }) + minetest.register_ore({ + ore_type = "sheet", + ore = "lib_materials:stone_slate_01", + wherein = {"lib_materials:stone", }, + column_height_max = 8, + column_height_min = 6, + y_min = -200, + y_max = 500, + noise_threshold = 0.49, + noise_params = { + offset = 0.28, + scale = 0.3, + seed = seed+4, + spread = {x = 10, y = 10, z = 10}, + octaves = 1, + persistence = 0.6 + }, + }) + +--[[ +-- Generate strati +local dbuf = {} --for mapgen +local function generate_strati(minp, maxp, seed) + + local t1 = os.clock() + + local vm, emin, emax = minetest.get_mapgen_object("voxelmanip") + local area = VoxelArea:new({MinEdge = emin, MaxEdge = emax}) + local data = vm:get_data(dbuf) + + + generate_claylike(data, area, "lib_materials:mud_01", minp, maxp, seed+1, 4, 0, 2, false) + generate_claylike(data, area, "lib_materials:silt_02", minp, maxp, seed+2, 4, -1, 1, true) + + -- TODO: Maybe realize the following stuff with register ore. somehow. + generate_stratus(data, area, "lib_materials:shale", + c_stone, + stone_and_air_assoc, + minp, maxp, seed+5, 4, 23, 7, 50, -50, 20) + + generate_stratus(data, area, "lib_materials:slate", + c_stone, + stone_and_air_assoc, + minp, maxp, seed+6, 6, 23, 5, 50, -500, 0) + + generate_stratus(data, area, "lib_materials:schist", + c_stone, + stone_and_air_assoc, + minp, maxp, seed+7, 6, 19, 6, 50, -31000, -10) + + generate_stratus(data, area, "lib_materials:basalt", + c_stone, + stone_and_air_assoc, + minp, maxp, seed+8, 5, 20, 5, 20, -31000, -50) + + generate_stratus(data, area, "lib_materials:marble_03", + c_stone, + stone_and_air_assoc, + minp, maxp, seed+9, 4, 25, 6, 50, -31000, -75) + + generate_stratus(data, area, "lib_materials:serpentine", + c_stone, + stone_and_air_assoc, + minp, maxp, seed+10, 4, 28, 8, 50, -31000, -350) + + generate_stratus(data, area, "lib_materials:gneiss", + c_stone, + stone_and_air_assoc, + minp, maxp, seed+11, 4, 15, 5, 50, -31000, -250) + + vm:set_data(data) + vm:write_to_map() + + minetest.log("info", string.format("[darkage] Generated Strati after %.2fs.", os.clock() - t1)) +end +--]] +--[[ + minetest.register_on_generated(generate_strati) +--]] + + + + +--ROCKS/MINERALS stone and ore defs +-- ores have to be redefined for skarn background +-- Chalcopyrite/Malachyte skarn mix + minetest.register_ore({ + ore_type = "scatter", + wherein="lib_materials:stone_skarn", + ore="lib_materials:ore_stone_skarn_with_chalcopyrite", + clust_size=3, + clust_num_ores=12, + clust_scarcity=4^3, + noise_treshold=0.333, + noise_params={ + offset = 0, + scale = 1, + spread = {x = 256, y = 256, z = 256}, + seed = 163281090, + octaves = 5, + persist = 0.6 + }, + }) + minetest.register_ore({ + ore_type = "scatter", + wherein="lib_materials:stone_skarn", + ore="lib_materials:ore_stone_skarn_with_malachyte", + clust_size=3, + clust_num_ores=11, + clust_scarcity=4^3, + noise_treshold=0.333, + noise_params={ + offset = 0, + scale = 1, + spread = {x = 256, y = 256, z = 256}, + seed = 163281090, + octaves = 5, + persist = 0.6 + }, + }) + +-- Pb Zn skarn mix + -- marble and hornfels, as well as unchanged limestone. + -- { ore="rocks:marble", percent=10 }, + -- { ore="rocks:hornfels", percent=10 }, + -- { ore="rocks:skarn_galena", percent=25 }, + -- { ore="rocks:skarn_sphalerite", percent=25 }, + minetest.register_ore({ + ore_type = "scatter", + wherein="lib_materials:stone_skarn", + ore="lib_materials:ore_stone_skarn_with_sphalerite", + clust_size=3, + clust_num_ores=9, + clust_scarcity=4^3, + noise_treshold=0.38, + noise_params={ + offset = 0, + scale = 1, + spread = {x = 256, y = 256, z = 256}, + seed = 163281090, + octaves = 5, + persist = 0.6 + }, + }) + minetest.register_ore({ + ore_type = "scatter", + wherein="lib_materials:stone_skarn", + ore="lib_materials:ore_stone_skarn_with_galena", + clust_size=3, + clust_num_ores=10, + clust_scarcity=4^3, + noise_treshold=0.38, + noise_params={ + offset = 0, + scale = 1, + spread = {x = 256, y = 256, z = 256}, + seed = 163281090, + octaves = 5, + persist = 0.6 + }, + }) + +-- Fe skarn mix + -- marble and hornfels, as well as unchanged limestone. + -- { ore="rocks:marble", percent=10 }, + -- { ore="rocks:hornfels", percent=10 }, + -- { ore="rocks:skarn_magnetite", percent=40 }, + minetest.register_ore({ + ore_type = "scatter", + wherein="lib_materials:stone_skarn", + ore="lib_materials:ore_stone_skarn_with_magnetite", + clust_size=3, + clust_num_ores=13, + clust_scarcity=4^3, + noise_treshold=0.3, + noise_params={ + offset = 0, + scale = 1, + spread = {x = 256, y = 256, z = 256}, + seed = 163281090, + octaves = 5, + persist = 0.6 + }, + }) + +-- magnesite/vermiculite skarn mix + -- marble and hornfels, as well as unchanged limestone. + -- { ore="rocks:marble", percent=10 }, + -- { ore="rocks:hornfels", percent=10 }, + -- { ore="rocks:skarn_magnesite", percent=30 }, + -- { ore="rocks:vermiculite", percent=20 }, + + +-- ores have to be redefined for pegmatite background +-- Ore/Mineral Percent +-- Spodumene 7% +-- Muscovite (mica) 7% +-- Kyanite 5% +-- Lepidolite 2.5% +-- Tantalite 2% +-- Cassiterite 1.5% +-- Wolframite 1% +-- Pollucite 0.1% + minetest.register_ore({ + ore_type = "scatter", + wherein="lib_materials:stone_pegmatite", + ore="lib_materials:ore_stone_pegmatite_with_cassiterite", + clust_size=3, + clust_num_ores=9, + clust_scarcity=4^3, + noise_treshold=-0.1, + noise_params={ + offset = 0, + scale = 1, + spread = {x = 256, y = 256, z = 256}, + seed = 163281090, + octaves = 5, + persist = 0.6 + }, + }) + -add_ore("default:stone_with_copper", "default:desert_stone", 9*9*9, 5, 3, -31000, -64) --- Coral Sand -add_ore("ethereal:sandy", "default:sand", 10*10*10, 24, 4, -100, -10) diff --git a/lib_materials_schematics.lua b/lib_materials_schematics.lua new file mode 100644 index 0000000..4ddbff8 --- /dev/null +++ b/lib_materials_schematics.lua @@ -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} + } + } + + + + + + + + \ No newline at end of file diff --git a/lib_materials_sound_defaults.lua b/lib_materials_sound_defaults.lua new file mode 100644 index 0000000..0d40462 --- /dev/null +++ b/lib_materials_sound_defaults.lua @@ -0,0 +1,132 @@ +-- +-- Sounds +-- + +function lib_materials.node_sound_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "", gain = 1.0} + table.dug = table.dug or + {name = "default_dug_node", gain = 0.25} + table.place = table.place or + {name = "default_place_node_hard", gain = 1.0} + return table +end + +function lib_materials.node_sound_stone_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_hard_footstep", gain = 0.3} + table.dug = table.dug or + {name = "default_hard_footstep", gain = 1.0} + lib_materials.node_sound_defaults(table) + return table +end + +function lib_materials.node_sound_dirt_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_dirt_footstep", gain = 0.4} + table.dug = table.dug or + {name = "default_dirt_footstep", gain = 1.0} + table.place = table.place or + {name = "default_place_node", gain = 1.0} + lib_materials.node_sound_defaults(table) + return table +end + +function lib_materials.node_sound_sand_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_sand_footstep", gain = 0.12} + table.dug = table.dug or + {name = "default_sand_footstep", gain = 0.24} + table.place = table.place or + {name = "default_place_node", gain = 1.0} + lib_materials.node_sound_defaults(table) + return table +end + +function lib_materials.node_sound_gravel_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_gravel_footstep", gain = 0.4} + table.dug = table.dug or + {name = "default_gravel_footstep", gain = 1.0} + table.place = table.place or + {name = "default_place_node", gain = 1.0} + lib_materials.node_sound_defaults(table) + return table +end + +function lib_materials.node_sound_wood_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_wood_footstep", gain = 0.3} + table.dug = table.dug or + {name = "default_wood_footstep", gain = 1.0} + lib_materials.node_sound_defaults(table) + return table +end + +function lib_materials.node_sound_leaves_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_grass_footstep", gain = 0.45} + table.dug = table.dug or + {name = "default_grass_footstep", gain = 0.7} + table.place = table.place or + {name = "default_place_node", gain = 1.0} + lib_materials.node_sound_defaults(table) + return table +end + +function lib_materials.node_sound_glass_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_glass_footstep", gain = 0.3} + table.dig = table.dig or + {name = "default_glass_footstep", gain = 0.5} + table.dug = table.dug or + {name = "default_break_glass", gain = 1.0} + lib_materials.node_sound_defaults(table) + return table +end + +function lib_materials.node_sound_metal_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_metal_footstep", gain = 0.4} + table.dig = table.dig or + {name = "default_dig_metal", gain = 0.5} + table.dug = table.dug or + {name = "default_dug_metal", gain = 0.5} + table.place = table.place or + {name = "default_place_node_metal", gain = 0.5} + lib_materials.node_sound_defaults(table) + return table +end + +function lib_materials.node_sound_water_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_water_footstep", gain = 0.2} + lib_materials.node_sound_defaults(table) + return table +end + +function lib_materials.node_sound_snow_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_snow_footstep", gain = 0.2} + table.dig = table.dig or + {name = "default_snow_footstep", gain = 0.3} + table.dug = table.dug or + {name = "default_snow_footstep", gain = 0.3} + table.place = table.place or + {name = "default_place_node", gain = 1.0} + lib_materials.node_sound_defaults(table) + return table +end + + diff --git a/lib_materials_tools.lua b/lib_materials_tools.lua new file mode 100644 index 0000000..872c010 --- /dev/null +++ b/lib_materials_tools.lua @@ -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}, + } +}) + diff --git a/lib_materials_utils.lua b/lib_materials_utils.lua index d7e977c..0debe0f 100644 --- a/lib_materials_utils.lua +++ b/lib_materials_utils.lua @@ -1,19 +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 - + +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}, + } + }, + 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", + }) diff --git a/mod.conf b/mod.conf new file mode 100644 index 0000000..2e3d744 --- /dev/null +++ b/mod.conf @@ -0,0 +1,4 @@ +name=lib_materials +description=A collection of naturally occuring materials, including: sand, clay, dirt, stone, ore, metals, glass, various water types, oil, lava, grease, liquid soils, and decorative stones. +depends= +optional_depends=default,stairs \ No newline at end of file diff --git a/screenshot.jpg b/screenshot.jpg new file mode 100644 index 0000000..84b55c8 Binary files /dev/null and b/screenshot.jpg differ diff --git a/settingtypes.txt b/settingtypes.txt new file mode 100644 index 0000000..0fb5ab2 --- /dev/null +++ b/settingtypes.txt @@ -0,0 +1,17 @@ +#lib_materials settings + +#[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 (Defines the scale factor for mgv7 based maps) int 8 + + + +#[Biome Altitude Range (Integer. Recommended Value greater than +10) - Defines the height range for biomes based on altitude.] +#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 (Defines the height range for biomes based on altitude) int 40 + + + diff --git a/sounds/default_break_glass.1.ogg b/sounds/default_break_glass.1.ogg new file mode 100644 index 0000000..b1ccc5f Binary files /dev/null and b/sounds/default_break_glass.1.ogg differ diff --git a/sounds/default_break_glass.2.ogg b/sounds/default_break_glass.2.ogg new file mode 100644 index 0000000..b6cc9e8 Binary files /dev/null and b/sounds/default_break_glass.2.ogg differ diff --git a/sounds/default_break_glass.3.ogg b/sounds/default_break_glass.3.ogg new file mode 100644 index 0000000..ae6a6bf Binary files /dev/null and b/sounds/default_break_glass.3.ogg differ diff --git a/sounds/default_chest_close.ogg b/sounds/default_chest_close.ogg new file mode 100644 index 0000000..068d900 Binary files /dev/null and b/sounds/default_chest_close.ogg differ diff --git a/sounds/default_chest_open.ogg b/sounds/default_chest_open.ogg new file mode 100644 index 0000000..40b0b93 Binary files /dev/null and b/sounds/default_chest_open.ogg differ diff --git a/sounds/default_cool_lava.1.ogg b/sounds/default_cool_lava.1.ogg new file mode 100644 index 0000000..42506dd Binary files /dev/null and b/sounds/default_cool_lava.1.ogg differ diff --git a/sounds/default_cool_lava.2.ogg b/sounds/default_cool_lava.2.ogg new file mode 100644 index 0000000..2747ab8 Binary files /dev/null and b/sounds/default_cool_lava.2.ogg differ diff --git a/sounds/default_cool_lava.3.ogg b/sounds/default_cool_lava.3.ogg new file mode 100644 index 0000000..8baeac3 Binary files /dev/null and b/sounds/default_cool_lava.3.ogg differ diff --git a/sounds/default_dig_choppy.ogg b/sounds/default_dig_choppy.ogg new file mode 100644 index 0000000..e2ecd84 Binary files /dev/null and b/sounds/default_dig_choppy.ogg differ diff --git a/sounds/default_dig_cracky.ogg b/sounds/default_dig_cracky.ogg new file mode 100644 index 0000000..da11679 Binary files /dev/null and b/sounds/default_dig_cracky.ogg differ diff --git a/sounds/default_dig_crumbly.ogg b/sounds/default_dig_crumbly.ogg new file mode 100644 index 0000000..a0b2a1f Binary files /dev/null and b/sounds/default_dig_crumbly.ogg differ diff --git a/sounds/default_dig_dig_immediate.ogg b/sounds/default_dig_dig_immediate.ogg new file mode 100644 index 0000000..e65d766 Binary files /dev/null and b/sounds/default_dig_dig_immediate.ogg differ diff --git a/sounds/default_dig_metal.ogg b/sounds/default_dig_metal.ogg new file mode 100644 index 0000000..0b58509 Binary files /dev/null and b/sounds/default_dig_metal.ogg differ diff --git a/sounds/default_dig_oddly_breakable_by_hand.ogg b/sounds/default_dig_oddly_breakable_by_hand.ogg new file mode 100644 index 0000000..ef4d7b1 Binary files /dev/null and b/sounds/default_dig_oddly_breakable_by_hand.ogg differ diff --git a/sounds/default_dig_snappy.ogg b/sounds/default_dig_snappy.ogg new file mode 100644 index 0000000..3686fcd Binary files /dev/null and b/sounds/default_dig_snappy.ogg differ diff --git a/sounds/default_dirt_footstep.1.ogg b/sounds/default_dirt_footstep.1.ogg new file mode 100644 index 0000000..201aa3b Binary files /dev/null and b/sounds/default_dirt_footstep.1.ogg differ diff --git a/sounds/default_dirt_footstep.2.ogg b/sounds/default_dirt_footstep.2.ogg new file mode 100644 index 0000000..2667dbc Binary files /dev/null and b/sounds/default_dirt_footstep.2.ogg differ diff --git a/sounds/default_dug_metal.1.ogg b/sounds/default_dug_metal.1.ogg new file mode 100644 index 0000000..5d6cb5b Binary files /dev/null and b/sounds/default_dug_metal.1.ogg differ diff --git a/sounds/default_dug_metal.2.ogg b/sounds/default_dug_metal.2.ogg new file mode 100644 index 0000000..63567fc Binary files /dev/null and b/sounds/default_dug_metal.2.ogg differ diff --git a/sounds/default_dug_node.1.ogg b/sounds/default_dug_node.1.ogg new file mode 100644 index 0000000..c04975d Binary files /dev/null and b/sounds/default_dug_node.1.ogg differ diff --git a/sounds/default_dug_node.2.ogg b/sounds/default_dug_node.2.ogg new file mode 100644 index 0000000..9f20926 Binary files /dev/null and b/sounds/default_dug_node.2.ogg differ diff --git a/sounds/default_glass_footstep.ogg b/sounds/default_glass_footstep.ogg new file mode 100644 index 0000000..191287a Binary files /dev/null and b/sounds/default_glass_footstep.ogg differ diff --git a/sounds/default_grass_footstep.1.ogg b/sounds/default_grass_footstep.1.ogg new file mode 100644 index 0000000..22d1ad6 Binary files /dev/null and b/sounds/default_grass_footstep.1.ogg differ diff --git a/sounds/default_grass_footstep.2.ogg b/sounds/default_grass_footstep.2.ogg new file mode 100644 index 0000000..4ccd8a0 Binary files /dev/null and b/sounds/default_grass_footstep.2.ogg differ diff --git a/sounds/default_grass_footstep.3.ogg b/sounds/default_grass_footstep.3.ogg new file mode 100644 index 0000000..20db84e Binary files /dev/null and b/sounds/default_grass_footstep.3.ogg differ diff --git a/sounds/default_gravel_footstep.1.ogg b/sounds/default_gravel_footstep.1.ogg new file mode 100644 index 0000000..8d260ce Binary files /dev/null and b/sounds/default_gravel_footstep.1.ogg differ diff --git a/sounds/default_gravel_footstep.2.ogg b/sounds/default_gravel_footstep.2.ogg new file mode 100644 index 0000000..2aba2c6 Binary files /dev/null and b/sounds/default_gravel_footstep.2.ogg differ diff --git a/sounds/default_gravel_footstep.3.ogg b/sounds/default_gravel_footstep.3.ogg new file mode 100644 index 0000000..1bcd8a1 Binary files /dev/null and b/sounds/default_gravel_footstep.3.ogg differ diff --git a/sounds/default_gravel_footstep.4.ogg b/sounds/default_gravel_footstep.4.ogg new file mode 100644 index 0000000..696c9ff Binary files /dev/null and b/sounds/default_gravel_footstep.4.ogg differ diff --git a/sounds/default_hard_footstep.1.ogg b/sounds/default_hard_footstep.1.ogg new file mode 100644 index 0000000..1748bc5 Binary files /dev/null and b/sounds/default_hard_footstep.1.ogg differ diff --git a/sounds/default_hard_footstep.2.ogg b/sounds/default_hard_footstep.2.ogg new file mode 100644 index 0000000..fe39fd7 Binary files /dev/null and b/sounds/default_hard_footstep.2.ogg differ diff --git a/sounds/default_hard_footstep.3.ogg b/sounds/default_hard_footstep.3.ogg new file mode 100644 index 0000000..5030e06 Binary files /dev/null and b/sounds/default_hard_footstep.3.ogg differ diff --git a/sounds/default_item_smoke.ogg b/sounds/default_item_smoke.ogg new file mode 100644 index 0000000..038a46e Binary files /dev/null and b/sounds/default_item_smoke.ogg differ diff --git a/sounds/default_metal_footstep.1.ogg b/sounds/default_metal_footstep.1.ogg new file mode 100644 index 0000000..841286b Binary files /dev/null and b/sounds/default_metal_footstep.1.ogg differ diff --git a/sounds/default_metal_footstep.2.ogg b/sounds/default_metal_footstep.2.ogg new file mode 100644 index 0000000..aa61ed3 Binary files /dev/null and b/sounds/default_metal_footstep.2.ogg differ diff --git a/sounds/default_metal_footstep.3.ogg b/sounds/default_metal_footstep.3.ogg new file mode 100644 index 0000000..4cc1ca4 Binary files /dev/null and b/sounds/default_metal_footstep.3.ogg differ diff --git a/sounds/default_place_node.1.ogg b/sounds/default_place_node.1.ogg new file mode 100644 index 0000000..46b9756 Binary files /dev/null and b/sounds/default_place_node.1.ogg differ diff --git a/sounds/default_place_node.2.ogg b/sounds/default_place_node.2.ogg new file mode 100644 index 0000000..d34c01a Binary files /dev/null and b/sounds/default_place_node.2.ogg differ diff --git a/sounds/default_place_node.3.ogg b/sounds/default_place_node.3.ogg new file mode 100644 index 0000000..fc29365 Binary files /dev/null and b/sounds/default_place_node.3.ogg differ diff --git a/sounds/default_place_node_hard.1.ogg b/sounds/default_place_node_hard.1.ogg new file mode 100644 index 0000000..9f97fac Binary files /dev/null and b/sounds/default_place_node_hard.1.ogg differ diff --git a/sounds/default_place_node_hard.2.ogg b/sounds/default_place_node_hard.2.ogg new file mode 100644 index 0000000..1d3b3de Binary files /dev/null and b/sounds/default_place_node_hard.2.ogg differ diff --git a/sounds/default_place_node_metal.1.ogg b/sounds/default_place_node_metal.1.ogg new file mode 100644 index 0000000..5da085e Binary files /dev/null and b/sounds/default_place_node_metal.1.ogg differ diff --git a/sounds/default_place_node_metal.2.ogg b/sounds/default_place_node_metal.2.ogg new file mode 100644 index 0000000..5ee67fc Binary files /dev/null and b/sounds/default_place_node_metal.2.ogg differ diff --git a/sounds/default_sand_footstep.1.ogg b/sounds/default_sand_footstep.1.ogg new file mode 100644 index 0000000..65b68c7 Binary files /dev/null and b/sounds/default_sand_footstep.1.ogg differ diff --git a/sounds/default_sand_footstep.2.ogg b/sounds/default_sand_footstep.2.ogg new file mode 100644 index 0000000..57f35f3 Binary files /dev/null and b/sounds/default_sand_footstep.2.ogg differ diff --git a/sounds/default_snow_footstep.1.ogg b/sounds/default_snow_footstep.1.ogg new file mode 100644 index 0000000..97cc825 Binary files /dev/null and b/sounds/default_snow_footstep.1.ogg differ diff --git a/sounds/default_snow_footstep.2.ogg b/sounds/default_snow_footstep.2.ogg new file mode 100644 index 0000000..97a6baa Binary files /dev/null and b/sounds/default_snow_footstep.2.ogg differ diff --git a/sounds/default_snow_footstep.3.ogg b/sounds/default_snow_footstep.3.ogg new file mode 100644 index 0000000..bde1f21 Binary files /dev/null and b/sounds/default_snow_footstep.3.ogg differ diff --git a/sounds/default_snow_footstep.4.ogg b/sounds/default_snow_footstep.4.ogg new file mode 100644 index 0000000..8ca6a59 Binary files /dev/null and b/sounds/default_snow_footstep.4.ogg differ diff --git a/sounds/default_snow_footstep.5.ogg b/sounds/default_snow_footstep.5.ogg new file mode 100644 index 0000000..220d60c Binary files /dev/null and b/sounds/default_snow_footstep.5.ogg differ diff --git a/sounds/default_tool_breaks.1.ogg b/sounds/default_tool_breaks.1.ogg new file mode 100644 index 0000000..2a571ae Binary files /dev/null and b/sounds/default_tool_breaks.1.ogg differ diff --git a/sounds/default_tool_breaks.2.ogg b/sounds/default_tool_breaks.2.ogg new file mode 100644 index 0000000..1789352 Binary files /dev/null and b/sounds/default_tool_breaks.2.ogg differ diff --git a/sounds/default_tool_breaks.3.ogg b/sounds/default_tool_breaks.3.ogg new file mode 100644 index 0000000..a99c4b7 Binary files /dev/null and b/sounds/default_tool_breaks.3.ogg differ diff --git a/sounds/default_water_footstep.1.ogg b/sounds/default_water_footstep.1.ogg new file mode 100644 index 0000000..63b9744 Binary files /dev/null and b/sounds/default_water_footstep.1.ogg differ diff --git a/sounds/default_water_footstep.2.ogg b/sounds/default_water_footstep.2.ogg new file mode 100644 index 0000000..8d79c1f Binary files /dev/null and b/sounds/default_water_footstep.2.ogg differ diff --git a/sounds/default_water_footstep.3.ogg b/sounds/default_water_footstep.3.ogg new file mode 100644 index 0000000..f889150 Binary files /dev/null and b/sounds/default_water_footstep.3.ogg differ diff --git a/sounds/default_water_footstep.4.ogg b/sounds/default_water_footstep.4.ogg new file mode 100644 index 0000000..6f1eab8 Binary files /dev/null and b/sounds/default_water_footstep.4.ogg differ diff --git a/sounds/default_wood_footstep.1.ogg b/sounds/default_wood_footstep.1.ogg new file mode 100644 index 0000000..34f63a1 Binary files /dev/null and b/sounds/default_wood_footstep.1.ogg differ diff --git a/sounds/default_wood_footstep.2.ogg b/sounds/default_wood_footstep.2.ogg new file mode 100644 index 0000000..124fc29 Binary files /dev/null and b/sounds/default_wood_footstep.2.ogg differ diff --git a/sounds/license.txt b/sounds/license.txt new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/sounds/license.txt @@ -0,0 +1 @@ + diff --git a/textures/aus_bucket_muddy_water.png b/textures/aus_bucket_muddy_water.png new file mode 100644 index 0000000..895622c Binary files /dev/null and b/textures/aus_bucket_muddy_water.png differ diff --git a/textures/bucket_mud.png b/textures/bucket_mud.png new file mode 100644 index 0000000..c989102 Binary files /dev/null and b/textures/bucket_mud.png differ diff --git a/textures/bucket_oil.png b/textures/bucket_oil.png new file mode 100644 index 0000000..6d397c3 Binary files /dev/null and b/textures/bucket_oil.png differ diff --git a/textures/castle_LICENSE.txt b/textures/castle_LICENSE.txt new file mode 100644 index 0000000..306be33 --- /dev/null +++ b/textures/castle_LICENSE.txt @@ -0,0 +1,21 @@ +-------------------------------------------- + +License Textures: Philipner - CC-BY-SA 3.0 + +-castle_corner_stonewall_tb.png +-castle_corner_stonewall1.png +-castle_corner_stonewall2.png + +-------------------------------------------- + +16 px textures based on Castle mod +original textures by Philipner + +License Textures: Napiophelios - CC-BY-SA 3.0 + +-castle_pavement_brick.png +-castle_rubble.png +-castle_slate.png +-castle_stonewall.png + +-------------------------------------------- diff --git a/textures/castle_corner_stonewall1.png b/textures/castle_corner_stonewall1.png new file mode 100644 index 0000000..0a9c091 Binary files /dev/null and b/textures/castle_corner_stonewall1.png differ diff --git a/textures/castle_corner_stonewall2.png b/textures/castle_corner_stonewall2.png new file mode 100644 index 0000000..d9d7d0c Binary files /dev/null and b/textures/castle_corner_stonewall2.png differ diff --git a/textures/castle_corner_stonewall_tb.png b/textures/castle_corner_stonewall_tb.png new file mode 100644 index 0000000..d72d78d Binary files /dev/null and b/textures/castle_corner_stonewall_tb.png differ diff --git a/textures/castle_dungeon_stone.png b/textures/castle_dungeon_stone.png new file mode 100644 index 0000000..6a2c154 Binary files /dev/null and b/textures/castle_dungeon_stone.png differ diff --git a/textures/castle_pavement_brick.png b/textures/castle_pavement_brick.png new file mode 100644 index 0000000..fd10e0f Binary files /dev/null and b/textures/castle_pavement_brick.png differ diff --git a/textures/castle_rubble.png b/textures/castle_rubble.png new file mode 100644 index 0000000..fbaa32c Binary files /dev/null and b/textures/castle_rubble.png differ diff --git a/textures/castle_slate.png b/textures/castle_slate.png new file mode 100644 index 0000000..a7de1ea Binary files /dev/null and b/textures/castle_slate.png differ diff --git a/textures/castle_stonewall.png b/textures/castle_stonewall.png new file mode 100644 index 0000000..b8f823f Binary files /dev/null and b/textures/castle_stonewall.png differ diff --git a/textures/caverealms_hot_cobble.png b/textures/caverealms_hot_cobble.png new file mode 100644 index 0000000..2e873e8 Binary files /dev/null and b/textures/caverealms_hot_cobble.png differ diff --git a/textures/caverealms_salty2.png b/textures/caverealms_salty2.png new file mode 100644 index 0000000..7f8b521 Binary files /dev/null and b/textures/caverealms_salty2.png differ diff --git a/textures/darkage_basalt.png b/textures/darkage_basalt.png deleted file mode 100644 index 07ea514..0000000 Binary files a/textures/darkage_basalt.png and /dev/null differ diff --git a/textures/darkage_darkdirt.png b/textures/darkage_darkdirt.png deleted file mode 100644 index a5709d3..0000000 Binary files a/textures/darkage_darkdirt.png and /dev/null differ diff --git a/textures/darkage_silt.png b/textures/darkage_silt.png deleted file mode 100644 index 5bd8a62..0000000 Binary files a/textures/darkage_silt.png and /dev/null differ diff --git a/textures/decoblocks.txt b/textures/decoblocks.txt new file mode 100644 index 0000000..d2cb401 --- /dev/null +++ b/textures/decoblocks.txt @@ -0,0 +1,17 @@ +Theese files were copied from minetest decoblocks mod. Original files were +in "default/textures" and with "default_" prefix instead of "rocks_". + +rocks_bb.png +rocks_blkgr.png +rocks_brgr.png +rocks_gls.png +rocks_mrbrownstone.png +rocks_obs.png +rocks_pgr.png +rocks_rss.png +rocks_serp.png +rocks_sod.png +rocks_trav.png +rocks_wgr.png +rocks_wm.png +rocks_yss.png diff --git a/textures/decoblocks_sandstone_pillar.png b/textures/decoblocks_sandstone_pillar.png new file mode 100644 index 0000000..73985d6 Binary files /dev/null and b/textures/decoblocks_sandstone_pillar.png differ diff --git a/textures/decoblocks_sandstone_pillar_top.png b/textures/decoblocks_sandstone_pillar_top.png new file mode 100644 index 0000000..4f140b4 Binary files /dev/null and b/textures/decoblocks_sandstone_pillar_top.png differ diff --git a/textures/decoblocks_sandstone_wall.png b/textures/decoblocks_sandstone_wall.png new file mode 100644 index 0000000..0941e93 Binary files /dev/null and b/textures/decoblocks_sandstone_wall.png differ diff --git a/textures/decoblocks_sandstone_wall2.png b/textures/decoblocks_sandstone_wall2.png new file mode 100644 index 0000000..4b890a4 Binary files /dev/null and b/textures/decoblocks_sandstone_wall2.png differ diff --git a/textures/decoblocks_sandstone_wall3.png b/textures/decoblocks_sandstone_wall3.png new file mode 100644 index 0000000..422ccda Binary files /dev/null and b/textures/decoblocks_sandstone_wall3.png differ diff --git a/textures/decoblocks_sandstone_wall4.png b/textures/decoblocks_sandstone_wall4.png new file mode 100644 index 0000000..ba5b207 Binary files /dev/null and b/textures/decoblocks_sandstone_wall4.png differ diff --git a/textures/default_clay.png b/textures/default_clay.png new file mode 100644 index 0000000..76e5a40 Binary files /dev/null and b/textures/default_clay.png differ diff --git a/textures/default_footprint.png b/textures/default_footprint.png new file mode 100644 index 0000000..41d9546 Binary files /dev/null and b/textures/default_footprint.png differ diff --git a/textures/default_glass.png b/textures/default_glass.png new file mode 100644 index 0000000..da25402 Binary files /dev/null and b/textures/default_glass.png differ diff --git a/textures/default_item_smoke.png b/textures/default_item_smoke.png new file mode 100644 index 0000000..d62fb3b Binary files /dev/null and b/textures/default_item_smoke.png differ diff --git a/textures/geologica.txt b/textures/geologica.txt new file mode 100644 index 0000000..24ac31c --- /dev/null +++ b/textures/geologica.txt @@ -0,0 +1,19 @@ +Theese files were copied from minecraft PFAA Geologica mod. + +rocks_Andesite.png +rocks_Basalt.png +rocks_Diorite.png +rocks_Gabbro.png +rocks_Gneiss.png +rocks_Granite.png +rocks_Mudstone.png +rocks_Peridotite.png +rocks_Rhyolite.png +rocks_Schist.png +rocks_Slate.png +rocks_Skarn.png +rocks_laterite.png +rocks_claystone.png +rocks_conglomerate.png +rocks_anthracite.png +rocks_lignite.png diff --git a/textures/gloopblocks_dirt_cobble_mask.png b/textures/gloopblocks_dirt_cobble_mask.png new file mode 100644 index 0000000..f1b500e Binary files /dev/null and b/textures/gloopblocks_dirt_cobble_mask.png differ diff --git a/textures/gloopblocks_dirt_stone_mask.png b/textures/gloopblocks_dirt_stone_mask.png new file mode 100644 index 0000000..9b81c10 Binary files /dev/null and b/textures/gloopblocks_dirt_stone_mask.png differ diff --git a/textures/lib_materials_clay_baked_black.png b/textures/lib_materials_clay_baked_black.png new file mode 100644 index 0000000..956f315 Binary files /dev/null and b/textures/lib_materials_clay_baked_black.png differ diff --git a/textures/lib_materials_clay_baked_blue.png b/textures/lib_materials_clay_baked_blue.png new file mode 100644 index 0000000..2b11d36 Binary files /dev/null and b/textures/lib_materials_clay_baked_blue.png differ diff --git a/textures/lib_materials_clay_baked_brown.png b/textures/lib_materials_clay_baked_brown.png new file mode 100644 index 0000000..f46e328 Binary files /dev/null and b/textures/lib_materials_clay_baked_brown.png differ diff --git a/textures/lib_materials_clay_baked_cyan.png b/textures/lib_materials_clay_baked_cyan.png new file mode 100644 index 0000000..364793e Binary files /dev/null and b/textures/lib_materials_clay_baked_cyan.png differ diff --git a/textures/lib_materials_clay_baked_dark_green.png b/textures/lib_materials_clay_baked_dark_green.png new file mode 100644 index 0000000..2bd2586 Binary files /dev/null and b/textures/lib_materials_clay_baked_dark_green.png differ diff --git a/textures/lib_materials_clay_baked_dark_grey.png b/textures/lib_materials_clay_baked_dark_grey.png new file mode 100644 index 0000000..44642e7 Binary files /dev/null and b/textures/lib_materials_clay_baked_dark_grey.png differ diff --git a/textures/lib_materials_clay_baked_green.png b/textures/lib_materials_clay_baked_green.png new file mode 100644 index 0000000..58f348c Binary files /dev/null and b/textures/lib_materials_clay_baked_green.png differ diff --git a/textures/baked_clay_grey.png b/textures/lib_materials_clay_baked_grey.png similarity index 100% rename from textures/baked_clay_grey.png rename to textures/lib_materials_clay_baked_grey.png diff --git a/textures/lib_materials_clay_baked_magenta.png b/textures/lib_materials_clay_baked_magenta.png new file mode 100644 index 0000000..e740738 Binary files /dev/null and b/textures/lib_materials_clay_baked_magenta.png differ diff --git a/textures/baked_clay_orange.png b/textures/lib_materials_clay_baked_orange.png similarity index 100% rename from textures/baked_clay_orange.png rename to textures/lib_materials_clay_baked_orange.png diff --git a/textures/lib_materials_clay_baked_pink.png b/textures/lib_materials_clay_baked_pink.png new file mode 100644 index 0000000..417fcfc Binary files /dev/null and b/textures/lib_materials_clay_baked_pink.png differ diff --git a/textures/baked_clay_red.png b/textures/lib_materials_clay_baked_red.png similarity index 100% rename from textures/baked_clay_red.png rename to textures/lib_materials_clay_baked_red.png diff --git a/textures/lib_materials_clay_baked_violet.png b/textures/lib_materials_clay_baked_violet.png new file mode 100644 index 0000000..b5db133 Binary files /dev/null and b/textures/lib_materials_clay_baked_violet.png differ diff --git a/textures/lib_materials_clay_baked_white.png b/textures/lib_materials_clay_baked_white.png new file mode 100644 index 0000000..ff953ab Binary files /dev/null and b/textures/lib_materials_clay_baked_white.png differ diff --git a/textures/lib_materials_clay_baked_yellow.png b/textures/lib_materials_clay_baked_yellow.png new file mode 100644 index 0000000..e26e40c Binary files /dev/null and b/textures/lib_materials_clay_baked_yellow.png differ diff --git a/textures/lib_materials_clay_brick.png b/textures/lib_materials_clay_brick.png new file mode 100644 index 0000000..b288ef0 Binary files /dev/null and b/textures/lib_materials_clay_brick.png differ diff --git a/textures/lib_materials_dirt.png b/textures/lib_materials_dirt.png new file mode 100644 index 0000000..ca7e4ae Binary files /dev/null and b/textures/lib_materials_dirt.png differ diff --git a/textures/lib_materials_dirt_black.png b/textures/lib_materials_dirt_black.png new file mode 100644 index 0000000..b0e6fe9 Binary files /dev/null and b/textures/lib_materials_dirt_black.png differ diff --git a/textures/lib_materials_dirt_brown.png b/textures/lib_materials_dirt_brown.png new file mode 100644 index 0000000..72e4cdc Binary files /dev/null and b/textures/lib_materials_dirt_brown.png differ diff --git a/textures/lib_materials_dirt_clay_lump.png b/textures/lib_materials_dirt_clay_lump.png new file mode 100644 index 0000000..c1d0220 Binary files /dev/null and b/textures/lib_materials_dirt_clay_lump.png differ diff --git a/textures/lib_materials_dirt_clay_red.png b/textures/lib_materials_dirt_clay_red.png new file mode 100644 index 0000000..6099ef1 Binary files /dev/null and b/textures/lib_materials_dirt_clay_red.png differ diff --git a/textures/lib_materials_dirt_clay_white.png b/textures/lib_materials_dirt_clay_white.png new file mode 100644 index 0000000..76e5a40 Binary files /dev/null and b/textures/lib_materials_dirt_clay_white.png differ diff --git a/textures/vmg_dirt_clayey.png b/textures/lib_materials_dirt_clayey.png similarity index 100% rename from textures/vmg_dirt_clayey.png rename to textures/lib_materials_dirt_clayey.png diff --git a/textures/lib_materials_dirt_coarse.png b/textures/lib_materials_dirt_coarse.png new file mode 100644 index 0000000..0530e59 Binary files /dev/null and b/textures/lib_materials_dirt_coarse.png differ diff --git a/textures/lib_materials_dirt_dark.png b/textures/lib_materials_dirt_dark.png new file mode 100644 index 0000000..98a14c1 Binary files /dev/null and b/textures/lib_materials_dirt_dark.png differ diff --git a/textures/ethereal_dry_dirt.png b/textures/lib_materials_dirt_dried.png similarity index 100% rename from textures/ethereal_dry_dirt.png rename to textures/lib_materials_dirt_dried.png diff --git a/textures/lib_materials_dirt_dry.png b/textures/lib_materials_dirt_dry.png new file mode 100644 index 0000000..a83fe4f Binary files /dev/null and b/textures/lib_materials_dirt_dry.png differ diff --git a/textures/lib_materials_dirt_mud_01.png b/textures/lib_materials_dirt_mud_01.png new file mode 100644 index 0000000..65b333e Binary files /dev/null and b/textures/lib_materials_dirt_mud_01.png differ diff --git a/textures/lib_materials_dirt_mud_dried_lump.png b/textures/lib_materials_dirt_mud_dried_lump.png new file mode 100644 index 0000000..1c3732c Binary files /dev/null and b/textures/lib_materials_dirt_mud_dried_lump.png differ diff --git a/textures/darkage_mud.png b/textures/lib_materials_dirt_mud_dried_side.png similarity index 100% rename from textures/darkage_mud.png rename to textures/lib_materials_dirt_mud_dried_side.png diff --git a/textures/darkage_mud_up.png b/textures/lib_materials_dirt_mud_dried_top.png similarity index 100% rename from textures/darkage_mud_up.png rename to textures/lib_materials_dirt_mud_dried_top.png diff --git a/textures/lib_materials_dirt_permafrost.png b/textures/lib_materials_dirt_permafrost.png new file mode 100644 index 0000000..d7a19a2 Binary files /dev/null and b/textures/lib_materials_dirt_permafrost.png differ diff --git a/textures/vmg_dirt_sandy.png b/textures/lib_materials_dirt_sandy.png similarity index 100% rename from textures/vmg_dirt_sandy.png rename to textures/lib_materials_dirt_sandy.png diff --git a/textures/lib_materials_dirt_silt_01.png b/textures/lib_materials_dirt_silt_01.png new file mode 100644 index 0000000..bcaebce Binary files /dev/null and b/textures/lib_materials_dirt_silt_01.png differ diff --git a/textures/lib_materials_dirt_silt_02.png b/textures/lib_materials_dirt_silt_02.png new file mode 100644 index 0000000..a61a5ce Binary files /dev/null and b/textures/lib_materials_dirt_silt_02.png differ diff --git a/textures/lib_materials_dirt_silt_lump.png b/textures/lib_materials_dirt_silt_lump.png new file mode 100644 index 0000000..3bb5111 Binary files /dev/null and b/textures/lib_materials_dirt_silt_lump.png differ diff --git a/textures/vmg_dirt_silty.png b/textures/lib_materials_dirt_silty.png similarity index 100% rename from textures/vmg_dirt_silty.png rename to textures/lib_materials_dirt_silty.png diff --git a/textures/lib_materials_dirt_sod.png b/textures/lib_materials_dirt_sod.png new file mode 100644 index 0000000..a486f9b Binary files /dev/null and b/textures/lib_materials_dirt_sod.png differ diff --git a/textures/lib_materials_dirt_with_soil.png b/textures/lib_materials_dirt_with_soil.png new file mode 100644 index 0000000..535afca Binary files /dev/null and b/textures/lib_materials_dirt_with_soil.png differ diff --git a/textures/lib_materials_dirt_with_soil_wet.png b/textures/lib_materials_dirt_with_soil_wet.png new file mode 100644 index 0000000..25942e3 Binary files /dev/null and b/textures/lib_materials_dirt_with_soil_wet.png differ diff --git a/textures/lib_materials_dirt_with_soil_wet_side.png b/textures/lib_materials_dirt_with_soil_wet_side.png new file mode 100644 index 0000000..f0b1bd4 Binary files /dev/null and b/textures/lib_materials_dirt_with_soil_wet_side.png differ diff --git a/textures/lib_materials_dry_grass_INDEXED.png b/textures/lib_materials_dry_grass_INDEXED.png new file mode 100644 index 0000000..15d332f Binary files /dev/null and b/textures/lib_materials_dry_grass_INDEXED.png differ diff --git a/textures/lib_materials_dry_grass_ORIG.png b/textures/lib_materials_dry_grass_ORIG.png new file mode 100644 index 0000000..d9c5581 Binary files /dev/null and b/textures/lib_materials_dry_grass_ORIG.png differ diff --git a/textures/lib_materials_farming_soil.png b/textures/lib_materials_farming_soil.png new file mode 100644 index 0000000..535afca Binary files /dev/null and b/textures/lib_materials_farming_soil.png differ diff --git a/textures/lib_materials_farming_soil_wet.png b/textures/lib_materials_farming_soil_wet.png new file mode 100644 index 0000000..25942e3 Binary files /dev/null and b/textures/lib_materials_farming_soil_wet.png differ diff --git a/textures/lib_materials_farming_soil_wet_side.png b/textures/lib_materials_farming_soil_wet_side.png new file mode 100644 index 0000000..f0b1bd4 Binary files /dev/null and b/textures/lib_materials_farming_soil_wet_side.png differ diff --git a/textures/lib_materials_fluid_grease_flowing_animated.png b/textures/lib_materials_fluid_grease_flowing_animated.png new file mode 100644 index 0000000..cae7a8b Binary files /dev/null and b/textures/lib_materials_fluid_grease_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_grease_source.png b/textures/lib_materials_fluid_grease_source.png new file mode 100644 index 0000000..134b7b1 Binary files /dev/null and b/textures/lib_materials_fluid_grease_source.png differ diff --git a/textures/lib_materials_fluid_grease_source_animated.png b/textures/lib_materials_fluid_grease_source_animated.png new file mode 100644 index 0000000..c52fb0e Binary files /dev/null and b/textures/lib_materials_fluid_grease_source_animated.png differ diff --git a/textures/lib_materials_fluid_lava.png b/textures/lib_materials_fluid_lava.png new file mode 100644 index 0000000..ad7e312 Binary files /dev/null and b/textures/lib_materials_fluid_lava.png differ diff --git a/textures/lib_materials_fluid_lava_ORIG.png b/textures/lib_materials_fluid_lava_ORIG.png new file mode 100644 index 0000000..e8958de Binary files /dev/null and b/textures/lib_materials_fluid_lava_ORIG.png differ diff --git a/textures/lib_materials_fluid_lava_ORIG_flowing_animated.png b/textures/lib_materials_fluid_lava_ORIG_flowing_animated.png new file mode 100644 index 0000000..2ec0746 Binary files /dev/null and b/textures/lib_materials_fluid_lava_ORIG_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_lava_ORIG_source_animated.png b/textures/lib_materials_fluid_lava_ORIG_source_animated.png new file mode 100644 index 0000000..32267a6 Binary files /dev/null and b/textures/lib_materials_fluid_lava_ORIG_source_animated.png differ diff --git a/textures/lib_materials_fluid_lava_flowing_animated.png b/textures/lib_materials_fluid_lava_flowing_animated.png new file mode 100644 index 0000000..f64a7ea Binary files /dev/null and b/textures/lib_materials_fluid_lava_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_lava_source_animated.png b/textures/lib_materials_fluid_lava_source_animated.png new file mode 100644 index 0000000..898a8cb Binary files /dev/null and b/textures/lib_materials_fluid_lava_source_animated.png differ diff --git a/textures/lib_materials_fluid_mud_flowing_animated.png b/textures/lib_materials_fluid_mud_flowing_animated.png new file mode 100644 index 0000000..0d29213 Binary files /dev/null and b/textures/lib_materials_fluid_mud_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_mud_source.png b/textures/lib_materials_fluid_mud_source.png new file mode 100644 index 0000000..99187d3 Binary files /dev/null and b/textures/lib_materials_fluid_mud_source.png differ diff --git a/textures/lib_materials_fluid_oil_02_flowing_animated.png b/textures/lib_materials_fluid_oil_02_flowing_animated.png new file mode 100644 index 0000000..5c9b848 Binary files /dev/null and b/textures/lib_materials_fluid_oil_02_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_oil_02_source.png b/textures/lib_materials_fluid_oil_02_source.png new file mode 100644 index 0000000..052b2ca Binary files /dev/null and b/textures/lib_materials_fluid_oil_02_source.png differ diff --git a/textures/lib_materials_fluid_oil_02_source_animated.png b/textures/lib_materials_fluid_oil_02_source_animated.png new file mode 100644 index 0000000..1984e60 Binary files /dev/null and b/textures/lib_materials_fluid_oil_02_source_animated.png differ diff --git a/textures/lib_materials_fluid_oil_03_flowing_animated.png b/textures/lib_materials_fluid_oil_03_flowing_animated.png new file mode 100644 index 0000000..86e1339 Binary files /dev/null and b/textures/lib_materials_fluid_oil_03_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_oil_03_source.png b/textures/lib_materials_fluid_oil_03_source.png new file mode 100644 index 0000000..e92b0d3 Binary files /dev/null and b/textures/lib_materials_fluid_oil_03_source.png differ diff --git a/textures/lib_materials_fluid_oil_03_source_animated.png b/textures/lib_materials_fluid_oil_03_source_animated.png new file mode 100644 index 0000000..b06be94 Binary files /dev/null and b/textures/lib_materials_fluid_oil_03_source_animated.png differ diff --git a/textures/lib_materials_fluid_oil_flowing_animated.png b/textures/lib_materials_fluid_oil_flowing_animated.png new file mode 100644 index 0000000..5881aa8 Binary files /dev/null and b/textures/lib_materials_fluid_oil_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_oil_source.png b/textures/lib_materials_fluid_oil_source.png new file mode 100644 index 0000000..5cebdab Binary files /dev/null and b/textures/lib_materials_fluid_oil_source.png differ diff --git a/textures/lib_materials_fluid_oil_source_animated.png b/textures/lib_materials_fluid_oil_source_animated.png new file mode 100644 index 0000000..9bee573 Binary files /dev/null and b/textures/lib_materials_fluid_oil_source_animated.png differ diff --git a/textures/lib_materials_fluid_quicksand_flowing_animated.png b/textures/lib_materials_fluid_quicksand_flowing_animated.png new file mode 100644 index 0000000..f9ce9c4 Binary files /dev/null and b/textures/lib_materials_fluid_quicksand_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_quicksand_source.png b/textures/lib_materials_fluid_quicksand_source.png new file mode 100644 index 0000000..7bb3220 Binary files /dev/null and b/textures/lib_materials_fluid_quicksand_source.png differ diff --git a/textures/lib_materials_fluid_quicksand_source_animated.png b/textures/lib_materials_fluid_quicksand_source_animated.png new file mode 100644 index 0000000..56429f4 Binary files /dev/null and b/textures/lib_materials_fluid_quicksand_source_animated.png differ diff --git a/textures/lib_materials_fluid_river_water.png b/textures/lib_materials_fluid_river_water.png new file mode 100644 index 0000000..3b55c5f Binary files /dev/null and b/textures/lib_materials_fluid_river_water.png differ diff --git a/textures/lib_materials_fluid_river_water_flowing_animated.png b/textures/lib_materials_fluid_river_water_flowing_animated.png new file mode 100644 index 0000000..536acc5 Binary files /dev/null and b/textures/lib_materials_fluid_river_water_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_river_water_source_animated.png b/textures/lib_materials_fluid_river_water_source_animated.png new file mode 100644 index 0000000..daa5653 Binary files /dev/null and b/textures/lib_materials_fluid_river_water_source_animated.png differ diff --git a/textures/lib_materials_fluid_water.png b/textures/lib_materials_fluid_water.png new file mode 100644 index 0000000..00500e9 Binary files /dev/null and b/textures/lib_materials_fluid_water.png differ diff --git a/textures/lib_materials_fluid_water_ORIG_flowing_animated.png b/textures/lib_materials_fluid_water_ORIG_flowing_animated.png new file mode 100644 index 0000000..070d797 Binary files /dev/null and b/textures/lib_materials_fluid_water_ORIG_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_water_ORIG_source_animated.png b/textures/lib_materials_fluid_water_ORIG_source_animated.png new file mode 100644 index 0000000..7e7f9ff Binary files /dev/null and b/textures/lib_materials_fluid_water_ORIG_source_animated.png differ diff --git a/textures/lib_materials_fluid_water_dirty_flowing_animated.png b/textures/lib_materials_fluid_water_dirty_flowing_animated.png new file mode 100644 index 0000000..0aceae8 Binary files /dev/null and b/textures/lib_materials_fluid_water_dirty_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_water_dirty_source.png b/textures/lib_materials_fluid_water_dirty_source.png new file mode 100644 index 0000000..051d923 Binary files /dev/null and b/textures/lib_materials_fluid_water_dirty_source.png differ diff --git a/textures/lib_materials_fluid_water_dirty_source_animated.png b/textures/lib_materials_fluid_water_dirty_source_animated.png new file mode 100644 index 0000000..08334d2 Binary files /dev/null and b/textures/lib_materials_fluid_water_dirty_source_animated.png differ diff --git a/textures/lib_materials_fluid_water_flowing_animated.png b/textures/lib_materials_fluid_water_flowing_animated.png new file mode 100644 index 0000000..4be38a8 Binary files /dev/null and b/textures/lib_materials_fluid_water_flowing_animated.png differ diff --git a/textures/lib_materials_fluid_water_river_muddy_flowing.png b/textures/lib_materials_fluid_water_river_muddy_flowing.png new file mode 100644 index 0000000..5ff826d Binary files /dev/null and b/textures/lib_materials_fluid_water_river_muddy_flowing.png differ diff --git a/textures/lib_materials_fluid_water_river_muddy_source.png b/textures/lib_materials_fluid_water_river_muddy_source.png new file mode 100644 index 0000000..5701921 Binary files /dev/null and b/textures/lib_materials_fluid_water_river_muddy_source.png differ diff --git a/textures/lib_materials_fluid_water_source_animated.png b/textures/lib_materials_fluid_water_source_animated.png new file mode 100644 index 0000000..84ff37b Binary files /dev/null and b/textures/lib_materials_fluid_water_source_animated.png differ diff --git a/textures/lib_materials_frame_diamond.png b/textures/lib_materials_frame_diamond.png new file mode 100644 index 0000000..15c9975 Binary files /dev/null and b/textures/lib_materials_frame_diamond.png differ diff --git a/textures/lib_materials_frame_glass_nbea.png b/textures/lib_materials_frame_glass_nbea.png new file mode 100644 index 0000000..0d86263 Binary files /dev/null and b/textures/lib_materials_frame_glass_nbea.png differ diff --git a/textures/lib_materials_frame_round.png b/textures/lib_materials_frame_round.png new file mode 100644 index 0000000..13cf26a Binary files /dev/null and b/textures/lib_materials_frame_round.png differ diff --git a/textures/lib_materials_frame_square.png b/textures/lib_materials_frame_square.png new file mode 100644 index 0000000..61fb15c Binary files /dev/null and b/textures/lib_materials_frame_square.png differ diff --git a/textures/lib_materials_frame_steel_01_nbea.png b/textures/lib_materials_frame_steel_01_nbea.png new file mode 100644 index 0000000..32bc313 Binary files /dev/null and b/textures/lib_materials_frame_steel_01_nbea.png differ diff --git a/textures/lib_materials_frame_steel_02_nbea.png b/textures/lib_materials_frame_steel_02_nbea.png new file mode 100644 index 0000000..91bb59b Binary files /dev/null and b/textures/lib_materials_frame_steel_02_nbea.png differ diff --git a/textures/lib_materials_frame_wood_01_nbea.png b/textures/lib_materials_frame_wood_01_nbea.png new file mode 100644 index 0000000..0b53588 Binary files /dev/null and b/textures/lib_materials_frame_wood_01_nbea.png differ diff --git a/textures/lib_materials_frame_wood_02_nbea.png b/textures/lib_materials_frame_wood_02_nbea.png new file mode 100644 index 0000000..f53bdf8 Binary files /dev/null and b/textures/lib_materials_frame_wood_02_nbea.png differ diff --git a/textures/lib_materials_frame_wood_darkage.png b/textures/lib_materials_frame_wood_darkage.png new file mode 100644 index 0000000..93073bd Binary files /dev/null and b/textures/lib_materials_frame_wood_darkage.png differ diff --git a/textures/lib_materials_frame_wood_medieval_rose.png b/textures/lib_materials_frame_wood_medieval_rose.png new file mode 100644 index 0000000..a02833c Binary files /dev/null and b/textures/lib_materials_frame_wood_medieval_rose.png differ diff --git a/textures/lib_materials_frame_wood_xdecor.png b/textures/lib_materials_frame_wood_xdecor.png new file mode 100644 index 0000000..7c16cee Binary files /dev/null and b/textures/lib_materials_frame_wood_xdecor.png differ diff --git a/textures/lib_materials_framed_glass_clean.png b/textures/lib_materials_framed_glass_clean.png new file mode 100644 index 0000000..d5b101f Binary files /dev/null and b/textures/lib_materials_framed_glass_clean.png differ diff --git a/textures/lib_materials_framed_glass_coal.png b/textures/lib_materials_framed_glass_coal.png new file mode 100644 index 0000000..8975178 Binary files /dev/null and b/textures/lib_materials_framed_glass_coal.png differ diff --git a/textures/lib_materials_framed_glass_coal_paned.png b/textures/lib_materials_framed_glass_coal_paned.png new file mode 100644 index 0000000..28b83de Binary files /dev/null and b/textures/lib_materials_framed_glass_coal_paned.png differ diff --git a/textures/lib_materials_framed_glass_diamond_milky.png b/textures/lib_materials_framed_glass_diamond_milky.png new file mode 100644 index 0000000..c16b9ef Binary files /dev/null and b/textures/lib_materials_framed_glass_diamond_milky.png differ diff --git a/textures/lib_materials_framed_glass_iron.png b/textures/lib_materials_framed_glass_iron.png new file mode 100644 index 0000000..5dbcb27 Binary files /dev/null and b/textures/lib_materials_framed_glass_iron.png differ diff --git a/textures/lib_materials_framed_glass_iron_paned.png b/textures/lib_materials_framed_glass_iron_paned.png new file mode 100644 index 0000000..3dfabc8 Binary files /dev/null and b/textures/lib_materials_framed_glass_iron_paned.png differ diff --git a/textures/lib_materials_framed_glass_obsidian_paned.png b/textures/lib_materials_framed_glass_obsidian_paned.png new file mode 100644 index 0000000..5da2b45 Binary files /dev/null and b/textures/lib_materials_framed_glass_obsidian_paned.png differ diff --git a/textures/lib_materials_framed_glass_round_milky.png b/textures/lib_materials_framed_glass_round_milky.png new file mode 100644 index 0000000..b2cffe2 Binary files /dev/null and b/textures/lib_materials_framed_glass_round_milky.png differ diff --git a/textures/lib_materials_framed_glass_square_milky.png b/textures/lib_materials_framed_glass_square_milky.png new file mode 100644 index 0000000..c54cfad Binary files /dev/null and b/textures/lib_materials_framed_glass_square_milky.png differ diff --git a/textures/lib_materials_framed_glass_wood_decoblocks.png b/textures/lib_materials_framed_glass_wood_decoblocks.png new file mode 100644 index 0000000..f08e0a3 Binary files /dev/null and b/textures/lib_materials_framed_glass_wood_decoblocks.png differ diff --git a/textures/lib_materials_framed_glass_wood_xdecor.png b/textures/lib_materials_framed_glass_wood_xdecor.png new file mode 100644 index 0000000..d4b7ff3 Binary files /dev/null and b/textures/lib_materials_framed_glass_wood_xdecor.png differ diff --git a/textures/lib_materials_glass_02.png b/textures/lib_materials_glass_02.png new file mode 100644 index 0000000..c49f268 Binary files /dev/null and b/textures/lib_materials_glass_02.png differ diff --git a/textures/lib_materials_glass_04.png b/textures/lib_materials_glass_04.png new file mode 100644 index 0000000..49a2d6b Binary files /dev/null and b/textures/lib_materials_glass_04.png differ diff --git a/textures/lib_materials_glass_broken.png b/textures/lib_materials_glass_broken.png new file mode 100644 index 0000000..1886ea1 Binary files /dev/null and b/textures/lib_materials_glass_broken.png differ diff --git a/textures/lib_materials_glass_broken_detail.png b/textures/lib_materials_glass_broken_detail.png new file mode 100644 index 0000000..3627a41 Binary files /dev/null and b/textures/lib_materials_glass_broken_detail.png differ diff --git a/textures/lib_materials_glass_color_black.png b/textures/lib_materials_glass_color_black.png new file mode 100644 index 0000000..62f81cf Binary files /dev/null and b/textures/lib_materials_glass_color_black.png differ diff --git a/textures/lib_materials_glass_color_blue.png b/textures/lib_materials_glass_color_blue.png new file mode 100644 index 0000000..64c97b1 Binary files /dev/null and b/textures/lib_materials_glass_color_blue.png differ diff --git a/textures/lib_materials_glass_color_brown.png b/textures/lib_materials_glass_color_brown.png new file mode 100644 index 0000000..835f26f Binary files /dev/null and b/textures/lib_materials_glass_color_brown.png differ diff --git a/textures/lib_materials_glass_color_cyan.png b/textures/lib_materials_glass_color_cyan.png new file mode 100644 index 0000000..8a81c76 Binary files /dev/null and b/textures/lib_materials_glass_color_cyan.png differ diff --git a/textures/lib_materials_glass_color_dk_green.png b/textures/lib_materials_glass_color_dk_green.png new file mode 100644 index 0000000..33deeab Binary files /dev/null and b/textures/lib_materials_glass_color_dk_green.png differ diff --git a/textures/lib_materials_glass_color_green.png b/textures/lib_materials_glass_color_green.png new file mode 100644 index 0000000..a89b6ea Binary files /dev/null and b/textures/lib_materials_glass_color_green.png differ diff --git a/textures/lib_materials_glass_color_grey.png b/textures/lib_materials_glass_color_grey.png new file mode 100644 index 0000000..97379a6 Binary files /dev/null and b/textures/lib_materials_glass_color_grey.png differ diff --git a/textures/lib_materials_glass_color_magenta.png b/textures/lib_materials_glass_color_magenta.png new file mode 100644 index 0000000..634ce96 Binary files /dev/null and b/textures/lib_materials_glass_color_magenta.png differ diff --git a/textures/lib_materials_glass_color_orange.png b/textures/lib_materials_glass_color_orange.png new file mode 100644 index 0000000..5388377 Binary files /dev/null and b/textures/lib_materials_glass_color_orange.png differ diff --git a/textures/lib_materials_glass_color_pink.png b/textures/lib_materials_glass_color_pink.png new file mode 100644 index 0000000..d7b1cdd Binary files /dev/null and b/textures/lib_materials_glass_color_pink.png differ diff --git a/textures/lib_materials_glass_color_purple.png b/textures/lib_materials_glass_color_purple.png new file mode 100644 index 0000000..74ea965 Binary files /dev/null and b/textures/lib_materials_glass_color_purple.png differ diff --git a/textures/lib_materials_glass_color_red.png b/textures/lib_materials_glass_color_red.png new file mode 100644 index 0000000..0df937f Binary files /dev/null and b/textures/lib_materials_glass_color_red.png differ diff --git a/textures/lib_materials_glass_color_white.png b/textures/lib_materials_glass_color_white.png new file mode 100644 index 0000000..731dba9 Binary files /dev/null and b/textures/lib_materials_glass_color_white.png differ diff --git a/textures/lib_materials_glass_color_yellow.png b/textures/lib_materials_glass_color_yellow.png new file mode 100644 index 0000000..7ab5684 Binary files /dev/null and b/textures/lib_materials_glass_color_yellow.png differ diff --git a/textures/lib_materials_glass_pane_decoblocks.png b/textures/lib_materials_glass_pane_decoblocks.png new file mode 100644 index 0000000..f67d22d Binary files /dev/null and b/textures/lib_materials_glass_pane_decoblocks.png differ diff --git a/textures/lib_materials_glass_pane_xdecor.png b/textures/lib_materials_glass_pane_xdecor.png new file mode 100644 index 0000000..85e0d55 Binary files /dev/null and b/textures/lib_materials_glass_pane_xdecor.png differ diff --git a/textures/lib_materials_glass_stained_nbea.png b/textures/lib_materials_glass_stained_nbea.png new file mode 100644 index 0000000..9fc83ae Binary files /dev/null and b/textures/lib_materials_glass_stained_nbea.png differ diff --git a/textures/lib_materials_grass_bamboo_side.png b/textures/lib_materials_grass_bamboo_side.png new file mode 100644 index 0000000..4a2548c Binary files /dev/null and b/textures/lib_materials_grass_bamboo_side.png differ diff --git a/textures/lib_materials_grass_bamboo_top.png b/textures/lib_materials_grass_bamboo_top.png new file mode 100644 index 0000000..47109b9 Binary files /dev/null and b/textures/lib_materials_grass_bamboo_top.png differ diff --git a/textures/lib_materials_grass_brown_bw_side.png b/textures/lib_materials_grass_brown_bw_side.png new file mode 100644 index 0000000..ffc27d4 Binary files /dev/null and b/textures/lib_materials_grass_brown_bw_side.png differ diff --git a/textures/lib_materials_grass_brown_bw_top.png b/textures/lib_materials_grass_brown_bw_top.png new file mode 100644 index 0000000..4c9e5c4 Binary files /dev/null and b/textures/lib_materials_grass_brown_bw_top.png differ diff --git a/textures/lib_materials_grass_brown_side.png b/textures/lib_materials_grass_brown_side.png new file mode 100644 index 0000000..d1c03f0 Binary files /dev/null and b/textures/lib_materials_grass_brown_side.png differ diff --git a/textures/lib_materials_grass_brown_top.png b/textures/lib_materials_grass_brown_top.png new file mode 100644 index 0000000..6e7a01e Binary files /dev/null and b/textures/lib_materials_grass_brown_top.png differ diff --git a/textures/lib_materials_grass_bw_side.png b/textures/lib_materials_grass_bw_side.png new file mode 100644 index 0000000..b73a5f0 Binary files /dev/null and b/textures/lib_materials_grass_bw_side.png differ diff --git a/textures/lib_materials_grass_bw_top.png b/textures/lib_materials_grass_bw_top.png new file mode 100644 index 0000000..774c82a Binary files /dev/null and b/textures/lib_materials_grass_bw_top.png differ diff --git a/textures/lib_materials_grass_coastal_side.png b/textures/lib_materials_grass_coastal_side.png new file mode 100644 index 0000000..35104ba Binary files /dev/null and b/textures/lib_materials_grass_coastal_side.png differ diff --git a/textures/lib_materials_grass_coastal_top.png b/textures/lib_materials_grass_coastal_top.png new file mode 100644 index 0000000..47b4470 Binary files /dev/null and b/textures/lib_materials_grass_coastal_top.png differ diff --git a/textures/lib_materials_grass_cold_side.png b/textures/lib_materials_grass_cold_side.png new file mode 100644 index 0000000..a92e3a6 Binary files /dev/null and b/textures/lib_materials_grass_cold_side.png differ diff --git a/textures/lib_materials_grass_cold_top.png b/textures/lib_materials_grass_cold_top.png new file mode 100644 index 0000000..86f92ce Binary files /dev/null and b/textures/lib_materials_grass_cold_top.png differ diff --git a/textures/lib_materials_grass_crystal_side.png b/textures/lib_materials_grass_crystal_side.png new file mode 100644 index 0000000..3f712b6 Binary files /dev/null and b/textures/lib_materials_grass_crystal_side.png differ diff --git a/textures/lib_materials_grass_crystal_top.png b/textures/lib_materials_grass_crystal_top.png new file mode 100644 index 0000000..a5d8173 Binary files /dev/null and b/textures/lib_materials_grass_crystal_top.png differ diff --git a/textures/lib_materials_grass_default_side.png b/textures/lib_materials_grass_default_side.png new file mode 100644 index 0000000..bfd538d Binary files /dev/null and b/textures/lib_materials_grass_default_side.png differ diff --git a/textures/lib_materials_grass_default_top.png b/textures/lib_materials_grass_default_top.png new file mode 100644 index 0000000..0181fab Binary files /dev/null and b/textures/lib_materials_grass_default_top.png differ diff --git a/textures/lib_materials_grass_dry_bw_side.png b/textures/lib_materials_grass_dry_bw_side.png new file mode 100644 index 0000000..ebaf592 Binary files /dev/null and b/textures/lib_materials_grass_dry_bw_side.png differ diff --git a/textures/lib_materials_grass_dry_bw_top.png b/textures/lib_materials_grass_dry_bw_top.png new file mode 100644 index 0000000..442d1b5 Binary files /dev/null and b/textures/lib_materials_grass_dry_bw_top.png differ diff --git a/textures/lib_materials_grass_dry_default_side.png b/textures/lib_materials_grass_dry_default_side.png new file mode 100644 index 0000000..ef375b7 Binary files /dev/null and b/textures/lib_materials_grass_dry_default_side.png differ diff --git a/textures/lib_materials_grass_dry_default_top.png b/textures/lib_materials_grass_dry_default_top.png new file mode 100644 index 0000000..03455c3 Binary files /dev/null and b/textures/lib_materials_grass_dry_default_top.png differ diff --git a/textures/lib_materials_grass_fiery_side.png b/textures/lib_materials_grass_fiery_side.png new file mode 100644 index 0000000..6398713 Binary files /dev/null and b/textures/lib_materials_grass_fiery_side.png differ diff --git a/textures/lib_materials_grass_fiery_top.png b/textures/lib_materials_grass_fiery_top.png new file mode 100644 index 0000000..dba09a9 Binary files /dev/null and b/textures/lib_materials_grass_fiery_top.png differ diff --git a/textures/lib_materials_grass_fungi_side.png b/textures/lib_materials_grass_fungi_side.png new file mode 100644 index 0000000..81700ae Binary files /dev/null and b/textures/lib_materials_grass_fungi_side.png differ diff --git a/textures/lib_materials_grass_fungi_side_2.png b/textures/lib_materials_grass_fungi_side_2.png new file mode 100644 index 0000000..ec3b785 Binary files /dev/null and b/textures/lib_materials_grass_fungi_side_2.png differ diff --git a/textures/lib_materials_grass_fungi_top.png b/textures/lib_materials_grass_fungi_top.png new file mode 100644 index 0000000..10617db Binary files /dev/null and b/textures/lib_materials_grass_fungi_top.png differ diff --git a/textures/lib_materials_grass_gray_side.png b/textures/lib_materials_grass_gray_side.png new file mode 100644 index 0000000..ebf82c7 Binary files /dev/null and b/textures/lib_materials_grass_gray_side.png differ diff --git a/textures/lib_materials_grass_gray_top.png b/textures/lib_materials_grass_gray_top.png new file mode 100644 index 0000000..547b3a4 Binary files /dev/null and b/textures/lib_materials_grass_gray_top.png differ diff --git a/textures/lib_materials_grass_green_side.png b/textures/lib_materials_grass_green_side.png new file mode 100644 index 0000000..bfd538d Binary files /dev/null and b/textures/lib_materials_grass_green_side.png differ diff --git a/textures/lib_materials_grass_green_top.png b/textures/lib_materials_grass_green_top.png new file mode 100644 index 0000000..0181fab Binary files /dev/null and b/textures/lib_materials_grass_green_top.png differ diff --git a/textures/lib_materials_grass_grove_side.png b/textures/lib_materials_grass_grove_side.png new file mode 100644 index 0000000..b09180a Binary files /dev/null and b/textures/lib_materials_grass_grove_side.png differ diff --git a/textures/lib_materials_grass_grove_top.png b/textures/lib_materials_grass_grove_top.png new file mode 100644 index 0000000..b15b5be Binary files /dev/null and b/textures/lib_materials_grass_grove_top.png differ diff --git a/textures/lib_materials_grass_highland_side.png b/textures/lib_materials_grass_highland_side.png new file mode 100644 index 0000000..ebf82c7 Binary files /dev/null and b/textures/lib_materials_grass_highland_side.png differ diff --git a/textures/lib_materials_grass_highland_top.png b/textures/lib_materials_grass_highland_top.png new file mode 100644 index 0000000..547b3a4 Binary files /dev/null and b/textures/lib_materials_grass_highland_top.png differ diff --git a/textures/lib_materials_grass_jungle_01_bw_side.png b/textures/lib_materials_grass_jungle_01_bw_side.png new file mode 100644 index 0000000..35104ba Binary files /dev/null and b/textures/lib_materials_grass_jungle_01_bw_side.png differ diff --git a/textures/lib_materials_grass_jungle_01_bw_top.png b/textures/lib_materials_grass_jungle_01_bw_top.png new file mode 100644 index 0000000..47b4470 Binary files /dev/null and b/textures/lib_materials_grass_jungle_01_bw_top.png differ diff --git a/textures/lib_materials_grass_jungle_01_side.png b/textures/lib_materials_grass_jungle_01_side.png new file mode 100644 index 0000000..f772f65 Binary files /dev/null and b/textures/lib_materials_grass_jungle_01_side.png differ diff --git a/textures/lib_materials_grass_jungle_01_top.png b/textures/lib_materials_grass_jungle_01_top.png new file mode 100644 index 0000000..2bce728 Binary files /dev/null and b/textures/lib_materials_grass_jungle_01_top.png differ diff --git a/textures/lib_materials_grass_jungle_02_side.png b/textures/lib_materials_grass_jungle_02_side.png new file mode 100644 index 0000000..772c82a Binary files /dev/null and b/textures/lib_materials_grass_jungle_02_side.png differ diff --git a/textures/lib_materials_grass_jungle_02_top.png b/textures/lib_materials_grass_jungle_02_top.png new file mode 100644 index 0000000..914caf4 Binary files /dev/null and b/textures/lib_materials_grass_jungle_02_top.png differ diff --git a/textures/lib_materials_grass_leafy_side.png b/textures/lib_materials_grass_leafy_side.png new file mode 100644 index 0000000..9c4c9ac Binary files /dev/null and b/textures/lib_materials_grass_leafy_side.png differ diff --git a/textures/lib_materials_grass_leafy_top.png b/textures/lib_materials_grass_leafy_top.png new file mode 100644 index 0000000..d93ba4a Binary files /dev/null and b/textures/lib_materials_grass_leafy_top.png differ diff --git a/textures/lib_materials_grass_lowland_side.png b/textures/lib_materials_grass_lowland_side.png new file mode 100644 index 0000000..b73a5f0 Binary files /dev/null and b/textures/lib_materials_grass_lowland_side.png differ diff --git a/textures/lib_materials_grass_lowland_top.png b/textures/lib_materials_grass_lowland_top.png new file mode 100644 index 0000000..774c82a Binary files /dev/null and b/textures/lib_materials_grass_lowland_top.png differ diff --git a/textures/lib_materials_grass_mushroom_side.png b/textures/lib_materials_grass_mushroom_side.png new file mode 100644 index 0000000..94973e7 Binary files /dev/null and b/textures/lib_materials_grass_mushroom_side.png differ diff --git a/textures/lib_materials_grass_mushroom_top.png b/textures/lib_materials_grass_mushroom_top.png new file mode 100644 index 0000000..90772a7 Binary files /dev/null and b/textures/lib_materials_grass_mushroom_top.png differ diff --git a/textures/lib_materials_grass_pete_moss_side.png b/textures/lib_materials_grass_pete_moss_side.png new file mode 100644 index 0000000..a74b925 Binary files /dev/null and b/textures/lib_materials_grass_pete_moss_side.png differ diff --git a/textures/lib_materials_grass_pete_moss_top.png b/textures/lib_materials_grass_pete_moss_top.png new file mode 100644 index 0000000..482df77 Binary files /dev/null and b/textures/lib_materials_grass_pete_moss_top.png differ diff --git a/textures/lib_materials_grass_prairie_side.png b/textures/lib_materials_grass_prairie_side.png new file mode 100644 index 0000000..731b08f Binary files /dev/null and b/textures/lib_materials_grass_prairie_side.png differ diff --git a/textures/lib_materials_grass_prairie_top.png b/textures/lib_materials_grass_prairie_top.png new file mode 100644 index 0000000..b1c227a Binary files /dev/null and b/textures/lib_materials_grass_prairie_top.png differ diff --git a/textures/lib_materials_grass_sea_side.png b/textures/lib_materials_grass_sea_side.png new file mode 100644 index 0000000..28c01c7 Binary files /dev/null and b/textures/lib_materials_grass_sea_side.png differ diff --git a/textures/lib_materials_grass_sea_top.png b/textures/lib_materials_grass_sea_top.png new file mode 100644 index 0000000..9106c88 Binary files /dev/null and b/textures/lib_materials_grass_sea_top.png differ diff --git a/textures/lib_materials_grass_shelf_side.png b/textures/lib_materials_grass_shelf_side.png new file mode 100644 index 0000000..ffc27d4 Binary files /dev/null and b/textures/lib_materials_grass_shelf_side.png differ diff --git a/textures/lib_materials_grass_shelf_top.png b/textures/lib_materials_grass_shelf_top.png new file mode 100644 index 0000000..4c9e5c4 Binary files /dev/null and b/textures/lib_materials_grass_shelf_top.png differ diff --git a/textures/lib_materials_grass_swamp_side.png b/textures/lib_materials_grass_swamp_side.png new file mode 100644 index 0000000..9fbcb3c Binary files /dev/null and b/textures/lib_materials_grass_swamp_side.png differ diff --git a/textures/lib_materials_grass_swamp_top.png b/textures/lib_materials_grass_swamp_top.png new file mode 100644 index 0000000..bf6c876 Binary files /dev/null and b/textures/lib_materials_grass_swamp_top.png differ diff --git a/textures/lib_materials_ground_pebble.png b/textures/lib_materials_ground_pebble.png new file mode 100644 index 0000000..924586b Binary files /dev/null and b/textures/lib_materials_ground_pebble.png differ diff --git a/textures/lib_materials_ground_pebbles_large.png b/textures/lib_materials_ground_pebbles_large.png new file mode 100644 index 0000000..9b108fc Binary files /dev/null and b/textures/lib_materials_ground_pebbles_large.png differ diff --git a/textures/lib_materials_ground_rocks_small.png b/textures/lib_materials_ground_rocks_small.png new file mode 100644 index 0000000..9b108fc Binary files /dev/null and b/textures/lib_materials_ground_rocks_small.png differ diff --git a/textures/lib_materials_ground_stones.png b/textures/lib_materials_ground_stones.png new file mode 100644 index 0000000..4d3b6cf Binary files /dev/null and b/textures/lib_materials_ground_stones.png differ diff --git a/textures/lib_materials_ground_stones_side.png b/textures/lib_materials_ground_stones_side.png new file mode 100644 index 0000000..7ae823a Binary files /dev/null and b/textures/lib_materials_ground_stones_side.png differ diff --git a/textures/lib_materials_ice.png b/textures/lib_materials_ice.png new file mode 100644 index 0000000..2664b7b Binary files /dev/null and b/textures/lib_materials_ice.png differ diff --git a/textures/lib_materials_ice2.png b/textures/lib_materials_ice2.png new file mode 100644 index 0000000..6a6a80a Binary files /dev/null and b/textures/lib_materials_ice2.png differ diff --git a/textures/lib_materials_ice_block.png b/textures/lib_materials_ice_block.png new file mode 100644 index 0000000..c8047d6 Binary files /dev/null and b/textures/lib_materials_ice_block.png differ diff --git a/textures/brick_ice.png b/textures/lib_materials_ice_brick.png similarity index 100% rename from textures/brick_ice.png rename to textures/lib_materials_ice_brick.png diff --git a/textures/lib_materials_ice_thin.png b/textures/lib_materials_ice_thin.png new file mode 100644 index 0000000..b16036d Binary files /dev/null and b/textures/lib_materials_ice_thin.png differ diff --git a/textures/lib_materials_litter_coniferous.png b/textures/lib_materials_litter_coniferous.png new file mode 100644 index 0000000..9a77b34 Binary files /dev/null and b/textures/lib_materials_litter_coniferous.png differ diff --git a/textures/lib_materials_litter_coniferous_side.png b/textures/lib_materials_litter_coniferous_side.png new file mode 100644 index 0000000..a254bf5 Binary files /dev/null and b/textures/lib_materials_litter_coniferous_side.png differ diff --git a/textures/lib_materials_litter_leaf_01.png b/textures/lib_materials_litter_leaf_01.png new file mode 100644 index 0000000..571019a Binary files /dev/null and b/textures/lib_materials_litter_leaf_01.png differ diff --git a/textures/lib_materials_litter_leaf_02.png b/textures/lib_materials_litter_leaf_02.png new file mode 100644 index 0000000..bb3dda2 Binary files /dev/null and b/textures/lib_materials_litter_leaf_02.png differ diff --git a/textures/lib_materials_litter_rainforest.png b/textures/lib_materials_litter_rainforest.png new file mode 100644 index 0000000..d762deb Binary files /dev/null and b/textures/lib_materials_litter_rainforest.png differ diff --git a/textures/lib_materials_litter_rainforest_side.png b/textures/lib_materials_litter_rainforest_side.png new file mode 100644 index 0000000..7ccb11d Binary files /dev/null and b/textures/lib_materials_litter_rainforest_side.png differ diff --git a/textures/lib_materials_litter_stones.png b/textures/lib_materials_litter_stones.png new file mode 100644 index 0000000..4d3b6cf Binary files /dev/null and b/textures/lib_materials_litter_stones.png differ diff --git a/textures/lib_materials_litter_stones_side.png b/textures/lib_materials_litter_stones_side.png new file mode 100644 index 0000000..7ae823a Binary files /dev/null and b/textures/lib_materials_litter_stones_side.png differ diff --git a/textures/lib_materials_litter_vine.png b/textures/lib_materials_litter_vine.png new file mode 100644 index 0000000..ca3bed3 Binary files /dev/null and b/textures/lib_materials_litter_vine.png differ diff --git a/textures/lib_materials_mask_cobble.png b/textures/lib_materials_mask_cobble.png new file mode 100644 index 0000000..f1b500e Binary files /dev/null and b/textures/lib_materials_mask_cobble.png differ diff --git a/textures/lib_materials_mask_stone.png b/textures/lib_materials_mask_stone.png new file mode 100644 index 0000000..9b81c10 Binary files /dev/null and b/textures/lib_materials_mask_stone.png differ diff --git a/textures/technic_brass_block.png b/textures/lib_materials_metal_brass_block.png similarity index 100% rename from textures/technic_brass_block.png rename to textures/lib_materials_metal_brass_block.png diff --git a/textures/technic_brass_ingot.png b/textures/lib_materials_metal_brass_ingot.png similarity index 100% rename from textures/technic_brass_ingot.png rename to textures/lib_materials_metal_brass_ingot.png diff --git a/textures/lib_materials_metal_bronze_block.png b/textures/lib_materials_metal_bronze_block.png new file mode 100644 index 0000000..1d0c9d5 Binary files /dev/null and b/textures/lib_materials_metal_bronze_block.png differ diff --git a/textures/lib_materials_metal_bronze_ingot.png b/textures/lib_materials_metal_bronze_ingot.png new file mode 100644 index 0000000..6cccdf6 Binary files /dev/null and b/textures/lib_materials_metal_bronze_ingot.png differ diff --git a/textures/lib_materials_metal_copper_block.png b/textures/lib_materials_metal_copper_block.png new file mode 100644 index 0000000..8533754 Binary files /dev/null and b/textures/lib_materials_metal_copper_block.png differ diff --git a/textures/lib_materials_metal_copper_ingot.png b/textures/lib_materials_metal_copper_ingot.png new file mode 100644 index 0000000..bcad9c0 Binary files /dev/null and b/textures/lib_materials_metal_copper_ingot.png differ diff --git a/textures/lib_materials_metal_copper_lump.png b/textures/lib_materials_metal_copper_lump.png new file mode 100644 index 0000000..998c592 Binary files /dev/null and b/textures/lib_materials_metal_copper_lump.png differ diff --git a/textures/lib_materials_metal_gold_block.png b/textures/lib_materials_metal_gold_block.png new file mode 100644 index 0000000..170d50b Binary files /dev/null and b/textures/lib_materials_metal_gold_block.png differ diff --git a/textures/lib_materials_metal_gold_ingot.png b/textures/lib_materials_metal_gold_ingot.png new file mode 100644 index 0000000..ba66471 Binary files /dev/null and b/textures/lib_materials_metal_gold_ingot.png differ diff --git a/textures/lib_materials_metal_gold_lump.png b/textures/lib_materials_metal_gold_lump.png new file mode 100644 index 0000000..d5a1be7 Binary files /dev/null and b/textures/lib_materials_metal_gold_lump.png differ diff --git a/textures/technic_cast_iron_block.png b/textures/lib_materials_metal_iron_cast_block.png similarity index 100% rename from textures/technic_cast_iron_block.png rename to textures/lib_materials_metal_iron_cast_block.png diff --git a/textures/technic_cast_iron_ingot.png b/textures/lib_materials_metal_iron_cast_ingot.png similarity index 100% rename from textures/technic_cast_iron_ingot.png rename to textures/lib_materials_metal_iron_cast_ingot.png diff --git a/textures/lib_materials_metal_iron_lump.png b/textures/lib_materials_metal_iron_lump.png new file mode 100644 index 0000000..db61a94 Binary files /dev/null and b/textures/lib_materials_metal_iron_lump.png differ diff --git a/textures/technic_wrought_iron_block.png b/textures/lib_materials_metal_iron_wrought_block.png similarity index 100% rename from textures/technic_wrought_iron_block.png rename to textures/lib_materials_metal_iron_wrought_block.png diff --git a/textures/technic_wrought_iron_ingot.png b/textures/lib_materials_metal_iron_wrought_ingot.png similarity index 100% rename from textures/technic_wrought_iron_ingot.png rename to textures/lib_materials_metal_iron_wrought_ingot.png diff --git a/textures/technic_lead_block.png b/textures/lib_materials_metal_lead_block.png similarity index 100% rename from textures/technic_lead_block.png rename to textures/lib_materials_metal_lead_block.png diff --git a/textures/technic_lead_ingot.png b/textures/lib_materials_metal_lead_ingot.png similarity index 100% rename from textures/technic_lead_ingot.png rename to textures/lib_materials_metal_lead_ingot.png diff --git a/textures/technic_lead_lump.png b/textures/lib_materials_metal_lead_lump.png similarity index 100% rename from textures/technic_lead_lump.png rename to textures/lib_materials_metal_lead_lump.png diff --git a/textures/lib_materials_metal_rusty.png b/textures/lib_materials_metal_rusty.png new file mode 100644 index 0000000..74a0347 Binary files /dev/null and b/textures/lib_materials_metal_rusty.png differ diff --git a/textures/lib_materials_metal_rusty_block.png b/textures/lib_materials_metal_rusty_block.png new file mode 100644 index 0000000..7c4ec94 Binary files /dev/null and b/textures/lib_materials_metal_rusty_block.png differ diff --git a/textures/lib_materials_metal_silver_block.png b/textures/lib_materials_metal_silver_block.png new file mode 100644 index 0000000..556af1c Binary files /dev/null and b/textures/lib_materials_metal_silver_block.png differ diff --git a/textures/lib_materials_metal_silver_ingot.png b/textures/lib_materials_metal_silver_ingot.png new file mode 100644 index 0000000..1357a71 Binary files /dev/null and b/textures/lib_materials_metal_silver_ingot.png differ diff --git a/textures/lib_materials_metal_silver_lump.png b/textures/lib_materials_metal_silver_lump.png new file mode 100644 index 0000000..f71f5e3 Binary files /dev/null and b/textures/lib_materials_metal_silver_lump.png differ diff --git a/textures/lib_materials_metal_steel_block.png b/textures/lib_materials_metal_steel_block.png new file mode 100644 index 0000000..7f49f61 Binary files /dev/null and b/textures/lib_materials_metal_steel_block.png differ diff --git a/textures/technic_carbon_steel_block.png b/textures/lib_materials_metal_steel_carbon_block.png similarity index 100% rename from textures/technic_carbon_steel_block.png rename to textures/lib_materials_metal_steel_carbon_block.png diff --git a/textures/technic_carbon_steel_ingot.png b/textures/lib_materials_metal_steel_carbon_ingot.png similarity index 100% rename from textures/technic_carbon_steel_ingot.png rename to textures/lib_materials_metal_steel_carbon_ingot.png diff --git a/textures/lib_materials_metal_steel_ingot.png b/textures/lib_materials_metal_steel_ingot.png new file mode 100644 index 0000000..8100b01 Binary files /dev/null and b/textures/lib_materials_metal_steel_ingot.png differ diff --git a/textures/technic_stainless_steel_block.png b/textures/lib_materials_metal_steel_stainless_block.png similarity index 100% rename from textures/technic_stainless_steel_block.png rename to textures/lib_materials_metal_steel_stainless_block.png diff --git a/textures/technic_stainless_steel_ingot.png b/textures/lib_materials_metal_steel_stainless_ingot.png similarity index 100% rename from textures/technic_stainless_steel_ingot.png rename to textures/lib_materials_metal_steel_stainless_ingot.png diff --git a/textures/lib_materials_metal_tin_block.png b/textures/lib_materials_metal_tin_block.png new file mode 100644 index 0000000..72759b0 Binary files /dev/null and b/textures/lib_materials_metal_tin_block.png differ diff --git a/textures/lib_materials_metal_tin_ingot.png b/textures/lib_materials_metal_tin_ingot.png new file mode 100644 index 0000000..eed5361 Binary files /dev/null and b/textures/lib_materials_metal_tin_ingot.png differ diff --git a/textures/lib_materials_metal_tin_lump.png b/textures/lib_materials_metal_tin_lump.png new file mode 100644 index 0000000..72bd339 Binary files /dev/null and b/textures/lib_materials_metal_tin_lump.png differ diff --git a/textures/lib_materials_mineral_chalk_powder.png b/textures/lib_materials_mineral_chalk_powder.png new file mode 100644 index 0000000..621bf99 Binary files /dev/null and b/textures/lib_materials_mineral_chalk_powder.png differ diff --git a/textures/lib_materials_mineral_coal_block.png b/textures/lib_materials_mineral_coal_block.png new file mode 100644 index 0000000..6fe9ed9 Binary files /dev/null and b/textures/lib_materials_mineral_coal_block.png differ diff --git a/textures/lib_materials_mineral_coal_lump.png b/textures/lib_materials_mineral_coal_lump.png new file mode 100644 index 0000000..792961d Binary files /dev/null and b/textures/lib_materials_mineral_coal_lump.png differ diff --git a/textures/lib_materials_mineral_diamond.png b/textures/lib_materials_mineral_diamond.png new file mode 100644 index 0000000..a8dac74 Binary files /dev/null and b/textures/lib_materials_mineral_diamond.png differ diff --git a/textures/lib_materials_mineral_diamond_block.png b/textures/lib_materials_mineral_diamond_block.png new file mode 100644 index 0000000..20c33ed Binary files /dev/null and b/textures/lib_materials_mineral_diamond_block.png differ diff --git a/textures/lib_materials_mineral_flint.png b/textures/lib_materials_mineral_flint.png new file mode 100644 index 0000000..226c740 Binary files /dev/null and b/textures/lib_materials_mineral_flint.png differ diff --git a/textures/lib_materials_mineral_mese_block.png b/textures/lib_materials_mineral_mese_block.png new file mode 100644 index 0000000..e30994e Binary files /dev/null and b/textures/lib_materials_mineral_mese_block.png differ diff --git a/textures/lib_materials_mineral_mese_crystal.png b/textures/lib_materials_mineral_mese_crystal.png new file mode 100644 index 0000000..f1d71f1 Binary files /dev/null and b/textures/lib_materials_mineral_mese_crystal.png differ diff --git a/textures/lib_materials_mineral_mese_crystal_fragment.png b/textures/lib_materials_mineral_mese_crystal_fragment.png new file mode 100644 index 0000000..d5416ab Binary files /dev/null and b/textures/lib_materials_mineral_mese_crystal_fragment.png differ diff --git a/textures/lib_materials_mineral_obsidian_shard.png b/textures/lib_materials_mineral_obsidian_shard.png new file mode 100644 index 0000000..a988d8c Binary files /dev/null and b/textures/lib_materials_mineral_obsidian_shard.png differ diff --git a/textures/lib_materials_mineral_quartz_block_bottom.png b/textures/lib_materials_mineral_quartz_block_bottom.png new file mode 100644 index 0000000..32f398e Binary files /dev/null and b/textures/lib_materials_mineral_quartz_block_bottom.png differ diff --git a/textures/lib_materials_mineral_quartz_block_side.png b/textures/lib_materials_mineral_quartz_block_side.png new file mode 100644 index 0000000..bb1ad15 Binary files /dev/null and b/textures/lib_materials_mineral_quartz_block_side.png differ diff --git a/textures/lib_materials_mineral_quartz_block_top.png b/textures/lib_materials_mineral_quartz_block_top.png new file mode 100644 index 0000000..0a8ebe8 Binary files /dev/null and b/textures/lib_materials_mineral_quartz_block_top.png differ diff --git a/textures/lib_materials_mineral_quartz_chiseled_side.png b/textures/lib_materials_mineral_quartz_chiseled_side.png new file mode 100644 index 0000000..b77eeb1 Binary files /dev/null and b/textures/lib_materials_mineral_quartz_chiseled_side.png differ diff --git a/textures/lib_materials_mineral_quartz_chiseled_top.png b/textures/lib_materials_mineral_quartz_chiseled_top.png new file mode 100644 index 0000000..04a223b Binary files /dev/null and b/textures/lib_materials_mineral_quartz_chiseled_top.png differ diff --git a/textures/lib_materials_mineral_quartz_crystal_full.png b/textures/lib_materials_mineral_quartz_crystal_full.png new file mode 100644 index 0000000..0a96c57 Binary files /dev/null and b/textures/lib_materials_mineral_quartz_crystal_full.png differ diff --git a/textures/lib_materials_mineral_quartz_pillar_side.png b/textures/lib_materials_mineral_quartz_pillar_side.png new file mode 100644 index 0000000..e885863 Binary files /dev/null and b/textures/lib_materials_mineral_quartz_pillar_side.png differ diff --git a/textures/lib_materials_mineral_quartz_pillar_top.png b/textures/lib_materials_mineral_quartz_pillar_top.png new file mode 100644 index 0000000..ced925b Binary files /dev/null and b/textures/lib_materials_mineral_quartz_pillar_top.png differ diff --git a/textures/lib_materials_ore_cassiterite.png b/textures/lib_materials_ore_cassiterite.png new file mode 100644 index 0000000..1856d1a Binary files /dev/null and b/textures/lib_materials_ore_cassiterite.png differ diff --git a/textures/lib_materials_ore_chalcopyrite.png b/textures/lib_materials_ore_chalcopyrite.png new file mode 100644 index 0000000..31f8073 Binary files /dev/null and b/textures/lib_materials_ore_chalcopyrite.png differ diff --git a/textures/lib_materials_ore_coal.png b/textures/lib_materials_ore_coal.png new file mode 100644 index 0000000..6d1386b Binary files /dev/null and b/textures/lib_materials_ore_coal.png differ diff --git a/textures/lib_materials_ore_coal_anthracite.png b/textures/lib_materials_ore_coal_anthracite.png new file mode 100644 index 0000000..100f535 Binary files /dev/null and b/textures/lib_materials_ore_coal_anthracite.png differ diff --git a/textures/lib_materials_ore_coal_lignite.png b/textures/lib_materials_ore_coal_lignite.png new file mode 100644 index 0000000..2c54b66 Binary files /dev/null and b/textures/lib_materials_ore_coal_lignite.png differ diff --git a/textures/lib_materials_ore_copper.png b/textures/lib_materials_ore_copper.png new file mode 100644 index 0000000..c4c518e Binary files /dev/null and b/textures/lib_materials_ore_copper.png differ diff --git a/textures/lib_materials_ore_diamond.png b/textures/lib_materials_ore_diamond.png new file mode 100644 index 0000000..39c0f83 Binary files /dev/null and b/textures/lib_materials_ore_diamond.png differ diff --git a/textures/lib_materials_ore_galena.png b/textures/lib_materials_ore_galena.png new file mode 100644 index 0000000..e9f3693 Binary files /dev/null and b/textures/lib_materials_ore_galena.png differ diff --git a/textures/lib_materials_ore_gold.png b/textures/lib_materials_ore_gold.png new file mode 100644 index 0000000..2220add Binary files /dev/null and b/textures/lib_materials_ore_gold.png differ diff --git a/textures/lib_materials_ore_iron.png b/textures/lib_materials_ore_iron.png new file mode 100644 index 0000000..bfec8b1 Binary files /dev/null and b/textures/lib_materials_ore_iron.png differ diff --git a/textures/technic_mineral_lead.png b/textures/lib_materials_ore_lead.png similarity index 100% rename from textures/technic_mineral_lead.png rename to textures/lib_materials_ore_lead.png diff --git a/textures/lib_materials_ore_magnesite.png b/textures/lib_materials_ore_magnesite.png new file mode 100644 index 0000000..6946cec Binary files /dev/null and b/textures/lib_materials_ore_magnesite.png differ diff --git a/textures/lib_materials_ore_magnetite.png b/textures/lib_materials_ore_magnetite.png new file mode 100644 index 0000000..c5a536e Binary files /dev/null and b/textures/lib_materials_ore_magnetite.png differ diff --git a/textures/lib_materials_ore_mese.png b/textures/lib_materials_ore_mese.png new file mode 100644 index 0000000..6952670 Binary files /dev/null and b/textures/lib_materials_ore_mese.png differ diff --git a/textures/lib_materials_ore_quartz.png b/textures/lib_materials_ore_quartz.png new file mode 100644 index 0000000..b312206 Binary files /dev/null and b/textures/lib_materials_ore_quartz.png differ diff --git a/textures/lib_materials_ore_silver.png b/textures/lib_materials_ore_silver.png new file mode 100644 index 0000000..6b57c62 Binary files /dev/null and b/textures/lib_materials_ore_silver.png differ diff --git a/textures/lib_materials_ore_sphalerite.png b/textures/lib_materials_ore_sphalerite.png new file mode 100644 index 0000000..45d4bb6 Binary files /dev/null and b/textures/lib_materials_ore_sphalerite.png differ diff --git a/textures/lib_materials_ore_tin.png b/textures/lib_materials_ore_tin.png new file mode 100644 index 0000000..232d4b5 Binary files /dev/null and b/textures/lib_materials_ore_tin.png differ diff --git a/textures/lib_materials_palette_grass_blue.png b/textures/lib_materials_palette_grass_blue.png new file mode 100644 index 0000000..a04caf3 Binary files /dev/null and b/textures/lib_materials_palette_grass_blue.png differ diff --git a/textures/lib_materials_palette_grass_brown.png b/textures/lib_materials_palette_grass_brown.png new file mode 100644 index 0000000..69f6131 Binary files /dev/null and b/textures/lib_materials_palette_grass_brown.png differ diff --git a/textures/lib_materials_palette_grass_dry.png b/textures/lib_materials_palette_grass_dry.png new file mode 100644 index 0000000..cee2d31 Binary files /dev/null and b/textures/lib_materials_palette_grass_dry.png differ diff --git a/textures/lib_materials_palette_grass_lush.png b/textures/lib_materials_palette_grass_lush.png new file mode 100644 index 0000000..a549e1b Binary files /dev/null and b/textures/lib_materials_palette_grass_lush.png differ diff --git a/textures/lib_materials_sand_default.png b/textures/lib_materials_sand_default.png new file mode 100644 index 0000000..645a300 Binary files /dev/null and b/textures/lib_materials_sand_default.png differ diff --git a/textures/lib_materials_sand_desert_default.png b/textures/lib_materials_sand_desert_default.png new file mode 100644 index 0000000..371b8c7 Binary files /dev/null and b/textures/lib_materials_sand_desert_default.png differ diff --git a/textures/lib_materials_sand_sand_default.png b/textures/lib_materials_sand_sand_default.png new file mode 100644 index 0000000..645a300 Binary files /dev/null and b/textures/lib_materials_sand_sand_default.png differ diff --git a/textures/lib_materials_sand_silver_default.png b/textures/lib_materials_sand_silver_default.png new file mode 100644 index 0000000..bdf9f0f Binary files /dev/null and b/textures/lib_materials_sand_silver_default.png differ diff --git a/textures/lib_materials_sand_volcanic.png b/textures/lib_materials_sand_volcanic.png new file mode 100644 index 0000000..27e732c Binary files /dev/null and b/textures/lib_materials_sand_volcanic.png differ diff --git a/textures/lib_materials_sand_white.png b/textures/lib_materials_sand_white.png new file mode 100644 index 0000000..36026d9 Binary files /dev/null and b/textures/lib_materials_sand_white.png differ diff --git a/textures/lib_materials_sand_with_rocks.png b/textures/lib_materials_sand_with_rocks.png new file mode 100644 index 0000000..6869706 Binary files /dev/null and b/textures/lib_materials_sand_with_rocks.png differ diff --git a/textures/lib_materials_snow.png b/textures/lib_materials_snow.png new file mode 100644 index 0000000..fcbef0e Binary files /dev/null and b/textures/lib_materials_snow.png differ diff --git a/textures/brick_snow.png b/textures/lib_materials_snow_brick.png similarity index 100% rename from textures/brick_snow.png rename to textures/lib_materials_snow_brick.png diff --git a/textures/lib_materials_snow_side.png b/textures/lib_materials_snow_side.png new file mode 100644 index 0000000..03456c8 Binary files /dev/null and b/textures/lib_materials_snow_side.png differ diff --git a/textures/lib_materials_snowball.png b/textures/lib_materials_snowball.png new file mode 100644 index 0000000..3a4dc1f Binary files /dev/null and b/textures/lib_materials_snowball.png differ diff --git a/textures/darkage_adobe.png b/textures/lib_materials_stone_adobe.png similarity index 100% rename from textures/darkage_adobe.png rename to textures/lib_materials_stone_adobe.png diff --git a/textures/lib_materials_stone_andesite.png b/textures/lib_materials_stone_andesite.png new file mode 100644 index 0000000..d523f7e Binary files /dev/null and b/textures/lib_materials_stone_andesite.png differ diff --git a/textures/lib_materials_stone_basalt_01.png b/textures/lib_materials_stone_basalt_01.png new file mode 100644 index 0000000..0ed234b Binary files /dev/null and b/textures/lib_materials_stone_basalt_01.png differ diff --git a/textures/lib_materials_stone_basalt_01_block.png b/textures/lib_materials_stone_basalt_01_block.png new file mode 100644 index 0000000..27a4459 Binary files /dev/null and b/textures/lib_materials_stone_basalt_01_block.png differ diff --git a/textures/lib_materials_stone_basalt_01_brick.png b/textures/lib_materials_stone_basalt_01_brick.png new file mode 100644 index 0000000..f54b078 Binary files /dev/null and b/textures/lib_materials_stone_basalt_01_brick.png differ diff --git a/textures/lib_materials_stone_basalt_01_cobble.png b/textures/lib_materials_stone_basalt_01_cobble.png new file mode 100644 index 0000000..334f5bf Binary files /dev/null and b/textures/lib_materials_stone_basalt_01_cobble.png differ diff --git a/textures/lib_materials_stone_basalt_02.png b/textures/lib_materials_stone_basalt_02.png new file mode 100644 index 0000000..5f72a2c Binary files /dev/null and b/textures/lib_materials_stone_basalt_02.png differ diff --git a/textures/lib_materials_stone_basalt_03.png b/textures/lib_materials_stone_basalt_03.png new file mode 100644 index 0000000..a76f512 Binary files /dev/null and b/textures/lib_materials_stone_basalt_03.png differ diff --git a/textures/lib_materials_stone_block.png b/textures/lib_materials_stone_block.png new file mode 100644 index 0000000..3b771e7 Binary files /dev/null and b/textures/lib_materials_stone_block.png differ diff --git a/textures/lib_materials_stone_bluestone.png b/textures/lib_materials_stone_bluestone.png new file mode 100644 index 0000000..bf2d463 Binary files /dev/null and b/textures/lib_materials_stone_bluestone.png differ diff --git a/textures/lib_materials_stone_brick.png b/textures/lib_materials_stone_brick.png new file mode 100644 index 0000000..ff945bc Binary files /dev/null and b/textures/lib_materials_stone_brick.png differ diff --git a/textures/lib_materials_stone_brick_mossy.png b/textures/lib_materials_stone_brick_mossy.png new file mode 100644 index 0000000..6ec96bb Binary files /dev/null and b/textures/lib_materials_stone_brick_mossy.png differ diff --git a/textures/lib_materials_stone_brown.png b/textures/lib_materials_stone_brown.png index 92200b0..1ef42ac 100644 Binary files a/textures/lib_materials_stone_brown.png and b/textures/lib_materials_stone_brown.png differ diff --git a/textures/lib_materials_stone_brownstone.png b/textures/lib_materials_stone_brownstone.png new file mode 100644 index 0000000..d1a6102 Binary files /dev/null and b/textures/lib_materials_stone_brownstone.png differ diff --git a/textures/darkage_chalk.png b/textures/lib_materials_stone_chalk.png similarity index 100% rename from textures/darkage_chalk.png rename to textures/lib_materials_stone_chalk.png diff --git a/textures/lib_materials_stone_claystone.png b/textures/lib_materials_stone_claystone.png new file mode 100644 index 0000000..de0bfcd Binary files /dev/null and b/textures/lib_materials_stone_claystone.png differ diff --git a/textures/lib_materials_stone_cobble_default.png b/textures/lib_materials_stone_cobble_default.png new file mode 100644 index 0000000..d379840 Binary files /dev/null and b/textures/lib_materials_stone_cobble_default.png differ diff --git a/textures/lib_materials_stone_cobble_hot.png b/textures/lib_materials_stone_cobble_hot.png new file mode 100644 index 0000000..2e873e8 Binary files /dev/null and b/textures/lib_materials_stone_cobble_hot.png differ diff --git a/textures/lib_materials_stone_cobble_mossy.png b/textures/lib_materials_stone_cobble_mossy.png new file mode 100644 index 0000000..1ae7c91 Binary files /dev/null and b/textures/lib_materials_stone_cobble_mossy.png differ diff --git a/textures/lib_materials_stone_conglomerate.png b/textures/lib_materials_stone_conglomerate.png new file mode 100644 index 0000000..7fda1c6 Binary files /dev/null and b/textures/lib_materials_stone_conglomerate.png differ diff --git a/textures/lib_materials_stone_default.png b/textures/lib_materials_stone_default.png new file mode 100644 index 0000000..63cb7c4 Binary files /dev/null and b/textures/lib_materials_stone_default.png differ diff --git a/textures/lib_materials_stone_default_cobble_small.png b/textures/lib_materials_stone_default_cobble_small.png new file mode 100644 index 0000000..3c7d004 Binary files /dev/null and b/textures/lib_materials_stone_default_cobble_small.png differ diff --git a/textures/lib_materials_stone_default_cobble_small__DESERT.png b/textures/lib_materials_stone_default_cobble_small__DESERT.png new file mode 100644 index 0000000..fa1af5d Binary files /dev/null and b/textures/lib_materials_stone_default_cobble_small__DESERT.png differ diff --git a/textures/lib_materials_stone_default_rockwall.png b/textures/lib_materials_stone_default_rockwall.png new file mode 100644 index 0000000..90f8144 Binary files /dev/null and b/textures/lib_materials_stone_default_rockwall.png differ diff --git a/textures/lib_materials_stone_desert_block.png b/textures/lib_materials_stone_desert_block.png new file mode 100644 index 0000000..6f58b6b Binary files /dev/null and b/textures/lib_materials_stone_desert_block.png differ diff --git a/textures/lib_materials_stone_desert_brick.png b/textures/lib_materials_stone_desert_brick.png new file mode 100644 index 0000000..db269ac Binary files /dev/null and b/textures/lib_materials_stone_desert_brick.png differ diff --git a/textures/lib_materials_stone_desert_cobble.png b/textures/lib_materials_stone_desert_cobble.png new file mode 100644 index 0000000..0f0dc72 Binary files /dev/null and b/textures/lib_materials_stone_desert_cobble.png differ diff --git a/textures/lib_materials_stone_desert_cobble_BAK.png b/textures/lib_materials_stone_desert_cobble_BAK.png new file mode 100644 index 0000000..184a9d8 Binary files /dev/null and b/textures/lib_materials_stone_desert_cobble_BAK.png differ diff --git a/textures/lib_materials_stone_desert_cobble_small.png b/textures/lib_materials_stone_desert_cobble_small.png new file mode 100644 index 0000000..fa1af5d Binary files /dev/null and b/textures/lib_materials_stone_desert_cobble_small.png differ diff --git a/textures/lib_materials_stone_desert_default.png b/textures/lib_materials_stone_desert_default.png new file mode 100644 index 0000000..5d3aded Binary files /dev/null and b/textures/lib_materials_stone_desert_default.png differ diff --git a/textures/lib_materials_stone_desert_gravel.png b/textures/lib_materials_stone_desert_gravel.png new file mode 100644 index 0000000..453bba5 Binary files /dev/null and b/textures/lib_materials_stone_desert_gravel.png differ diff --git a/textures/lib_materials_stone_desert_rockwall.png b/textures/lib_materials_stone_desert_rockwall.png new file mode 100644 index 0000000..184a9d8 Binary files /dev/null and b/textures/lib_materials_stone_desert_rockwall.png differ diff --git a/textures/lib_materials_stone_diorite.png b/textures/lib_materials_stone_diorite.png new file mode 100644 index 0000000..856ba1e Binary files /dev/null and b/textures/lib_materials_stone_diorite.png differ diff --git a/textures/lib_materials_stone_gabbro.png b/textures/lib_materials_stone_gabbro.png new file mode 100644 index 0000000..c4e03c3 Binary files /dev/null and b/textures/lib_materials_stone_gabbro.png differ diff --git a/textures/lib_materials_stone_gabbro_ORIG.png b/textures/lib_materials_stone_gabbro_ORIG.png new file mode 100644 index 0000000..e615c3a Binary files /dev/null and b/textures/lib_materials_stone_gabbro_ORIG.png differ diff --git a/textures/darkage_gneiss.png b/textures/lib_materials_stone_gneiss_01.png similarity index 100% rename from textures/darkage_gneiss.png rename to textures/lib_materials_stone_gneiss_01.png diff --git a/textures/lib_materials_stone_gneiss_01_block.png b/textures/lib_materials_stone_gneiss_01_block.png new file mode 100644 index 0000000..c21e03e Binary files /dev/null and b/textures/lib_materials_stone_gneiss_01_block.png differ diff --git a/textures/lib_materials_stone_gneiss_01_brick.png b/textures/lib_materials_stone_gneiss_01_brick.png new file mode 100644 index 0000000..6585e0c Binary files /dev/null and b/textures/lib_materials_stone_gneiss_01_brick.png differ diff --git a/textures/lib_materials_stone_gneiss_01_cobble.png b/textures/lib_materials_stone_gneiss_01_cobble.png new file mode 100644 index 0000000..adba739 Binary files /dev/null and b/textures/lib_materials_stone_gneiss_01_cobble.png differ diff --git a/textures/lib_materials_stone_gneiss_02.png b/textures/lib_materials_stone_gneiss_02.png new file mode 100644 index 0000000..aa8706e Binary files /dev/null and b/textures/lib_materials_stone_gneiss_02.png differ diff --git a/textures/lib_materials_stone_granite_01.png b/textures/lib_materials_stone_granite_01.png new file mode 100644 index 0000000..09bb9b5 Binary files /dev/null and b/textures/lib_materials_stone_granite_01.png differ diff --git a/textures/lib_materials_stone_granite_02.png b/textures/lib_materials_stone_granite_02.png new file mode 100644 index 0000000..5c8d089 Binary files /dev/null and b/textures/lib_materials_stone_granite_02.png differ diff --git a/textures/lib_materials_stone_granite_02_block.png b/textures/lib_materials_stone_granite_02_block.png new file mode 100644 index 0000000..5f6a617 Binary files /dev/null and b/textures/lib_materials_stone_granite_02_block.png differ diff --git a/textures/lib_materials_stone_granite_03.png b/textures/lib_materials_stone_granite_03.png new file mode 100644 index 0000000..2a29cee Binary files /dev/null and b/textures/lib_materials_stone_granite_03.png differ diff --git a/textures/lib_materials_stone_granite_04.png b/textures/lib_materials_stone_granite_04.png new file mode 100644 index 0000000..c5b0cf8 Binary files /dev/null and b/textures/lib_materials_stone_granite_04.png differ diff --git a/textures/lib_materials_stone_granite_black.png b/textures/lib_materials_stone_granite_black.png new file mode 100644 index 0000000..01a0039 Binary files /dev/null and b/textures/lib_materials_stone_granite_black.png differ diff --git a/textures/lib_materials_stone_granite_brown.png b/textures/lib_materials_stone_granite_brown.png new file mode 100644 index 0000000..07e24d1 Binary files /dev/null and b/textures/lib_materials_stone_granite_brown.png differ diff --git a/textures/lib_materials_stone_granite_brown_02.png b/textures/lib_materials_stone_granite_brown_02.png new file mode 100644 index 0000000..847d465 Binary files /dev/null and b/textures/lib_materials_stone_granite_brown_02.png differ diff --git a/textures/lib_materials_stone_granite_brown_block.png b/textures/lib_materials_stone_granite_brown_block.png new file mode 100644 index 0000000..7325347 Binary files /dev/null and b/textures/lib_materials_stone_granite_brown_block.png differ diff --git a/textures/lib_materials_stone_granite_pink.png b/textures/lib_materials_stone_granite_pink.png new file mode 100644 index 0000000..68c5639 Binary files /dev/null and b/textures/lib_materials_stone_granite_pink.png differ diff --git a/textures/lib_materials_stone_gravel_default.png b/textures/lib_materials_stone_gravel_default.png new file mode 100644 index 0000000..1fffeeb Binary files /dev/null and b/textures/lib_materials_stone_gravel_default.png differ diff --git a/textures/lib_materials_stone_greenstone.png b/textures/lib_materials_stone_greenstone.png new file mode 100644 index 0000000..a759226 Binary files /dev/null and b/textures/lib_materials_stone_greenstone.png differ diff --git a/textures/lib_materials_stone_laterite.png b/textures/lib_materials_stone_laterite.png new file mode 100644 index 0000000..2a80ba4 Binary files /dev/null and b/textures/lib_materials_stone_laterite.png differ diff --git a/textures/lib_materials_stone_limestone_01.png b/textures/lib_materials_stone_limestone_01.png new file mode 100644 index 0000000..c2a6c61 Binary files /dev/null and b/textures/lib_materials_stone_limestone_01.png differ diff --git a/textures/lib_materials_stone_limestone_02.png b/textures/lib_materials_stone_limestone_02.png new file mode 100644 index 0000000..120b072 Binary files /dev/null and b/textures/lib_materials_stone_limestone_02.png differ diff --git a/textures/technic_marble.png b/textures/lib_materials_stone_marble_01.png similarity index 100% rename from textures/technic_marble.png rename to textures/lib_materials_stone_marble_01.png diff --git a/textures/lib_materials_stone_marble_02.png b/textures/lib_materials_stone_marble_02.png new file mode 100644 index 0000000..1baf39c Binary files /dev/null and b/textures/lib_materials_stone_marble_02.png differ diff --git a/textures/darkage_marble.png b/textures/lib_materials_stone_marble_03.png similarity index 100% rename from textures/darkage_marble.png rename to textures/lib_materials_stone_marble_03.png diff --git a/textures/lib_materials_stone_marble_03_block.png b/textures/lib_materials_stone_marble_03_block.png new file mode 100644 index 0000000..a3553ef Binary files /dev/null and b/textures/lib_materials_stone_marble_03_block.png differ diff --git a/textures/lib_materials_stone_mudstone.png b/textures/lib_materials_stone_mudstone.png new file mode 100644 index 0000000..2528b84 Binary files /dev/null and b/textures/lib_materials_stone_mudstone.png differ diff --git a/textures/lib_materials_stone_obsidian_block.png b/textures/lib_materials_stone_obsidian_block.png new file mode 100644 index 0000000..dd93f8d Binary files /dev/null and b/textures/lib_materials_stone_obsidian_block.png differ diff --git a/textures/lib_materials_stone_obsidian_brick.png b/textures/lib_materials_stone_obsidian_brick.png new file mode 100644 index 0000000..30c67ca Binary files /dev/null and b/textures/lib_materials_stone_obsidian_brick.png differ diff --git a/textures/lib_materials_stone_obsidian_default.png b/textures/lib_materials_stone_obsidian_default.png new file mode 100644 index 0000000..8f4a49c Binary files /dev/null and b/textures/lib_materials_stone_obsidian_default.png differ diff --git a/textures/lib_materials_stone_pegmatite.png b/textures/lib_materials_stone_pegmatite.png new file mode 100644 index 0000000..eb88047 Binary files /dev/null and b/textures/lib_materials_stone_pegmatite.png differ diff --git a/textures/lib_materials_stone_rhyolite.png b/textures/lib_materials_stone_rhyolite.png new file mode 100644 index 0000000..99b418e Binary files /dev/null and b/textures/lib_materials_stone_rhyolite.png differ diff --git a/textures/lib_materials_stone_rhyolitic_tuff.png b/textures/lib_materials_stone_rhyolitic_tuff.png new file mode 100644 index 0000000..ebe8a72 Binary files /dev/null and b/textures/lib_materials_stone_rhyolitic_tuff.png differ diff --git a/textures/lib_materials_stone_rhyolitic_tuff_bricks.png b/textures/lib_materials_stone_rhyolitic_tuff_bricks.png new file mode 100644 index 0000000..bc8a20c Binary files /dev/null and b/textures/lib_materials_stone_rhyolitic_tuff_bricks.png differ diff --git a/textures/lib_materials_stone_rhyolitic_tuff_cobble.png b/textures/lib_materials_stone_rhyolitic_tuff_cobble.png new file mode 100644 index 0000000..31605a0 Binary files /dev/null and b/textures/lib_materials_stone_rhyolitic_tuff_cobble.png differ diff --git a/textures/lib_materials_stone_sand.png b/textures/lib_materials_stone_sand.png index cd34129..0a5fe90 100644 Binary files a/textures/lib_materials_stone_sand.png and b/textures/lib_materials_stone_sand.png differ diff --git a/textures/lib_materials_stone_sandstone_block.png b/textures/lib_materials_stone_sandstone_block.png new file mode 100644 index 0000000..822b1c3 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_block.png differ diff --git a/textures/lib_materials_stone_sandstone_brick.png b/textures/lib_materials_stone_sandstone_brick.png new file mode 100644 index 0000000..e7150e5 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_brick.png differ diff --git a/textures/lib_materials_stone_sandstone_default.png b/textures/lib_materials_stone_sandstone_default.png new file mode 100644 index 0000000..16e3d13 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_default.png differ diff --git a/textures/lib_materials_stone_sandstone_desert_block.png b/textures/lib_materials_stone_sandstone_desert_block.png new file mode 100644 index 0000000..8fc54e7 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_desert_block.png differ diff --git a/textures/lib_materials_stone_sandstone_desert_brick.png b/textures/lib_materials_stone_sandstone_desert_brick.png new file mode 100644 index 0000000..ab58db5 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_desert_brick.png differ diff --git a/textures/lib_materials_stone_sandstone_desert_default.png b/textures/lib_materials_stone_sandstone_desert_default.png new file mode 100644 index 0000000..52e445f Binary files /dev/null and b/textures/lib_materials_stone_sandstone_desert_default.png differ diff --git a/textures/darkage_cob.png b/textures/lib_materials_stone_sandstone_desert_gravel.png similarity index 100% rename from textures/darkage_cob.png rename to textures/lib_materials_stone_sandstone_desert_gravel.png diff --git a/textures/darkage_ors.png b/textures/lib_materials_stone_sandstone_old_red.png similarity index 100% rename from textures/darkage_ors.png rename to textures/lib_materials_stone_sandstone_old_red.png diff --git a/textures/lib_materials_stone_sandstone_old_red_block.png b/textures/lib_materials_stone_sandstone_old_red_block.png new file mode 100644 index 0000000..d313bde Binary files /dev/null and b/textures/lib_materials_stone_sandstone_old_red_block.png differ diff --git a/textures/lib_materials_stone_sandstone_old_red_brick.png b/textures/lib_materials_stone_sandstone_old_red_brick.png new file mode 100644 index 0000000..9b7d674 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_old_red_brick.png differ diff --git a/textures/lib_materials_stone_sandstone_old_red_cobble.png b/textures/lib_materials_stone_sandstone_old_red_cobble.png new file mode 100644 index 0000000..91585b9 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_old_red_cobble.png differ diff --git a/textures/lib_materials_stone_sandstone_red.png b/textures/lib_materials_stone_sandstone_red.png new file mode 100644 index 0000000..a7b5566 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_red.png differ diff --git a/textures/lib_materials_stone_sandstone_silver_block.png b/textures/lib_materials_stone_sandstone_silver_block.png new file mode 100644 index 0000000..9997461 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_silver_block.png differ diff --git a/textures/lib_materials_stone_sandstone_silver_brick.png b/textures/lib_materials_stone_sandstone_silver_brick.png new file mode 100644 index 0000000..93d87a5 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_silver_brick.png differ diff --git a/textures/lib_materials_stone_sandstone_silver_default.png b/textures/lib_materials_stone_sandstone_silver_default.png new file mode 100644 index 0000000..eac62cb Binary files /dev/null and b/textures/lib_materials_stone_sandstone_silver_default.png differ diff --git a/textures/lib_materials_stone_sandstone_white.png b/textures/lib_materials_stone_sandstone_white.png new file mode 100644 index 0000000..5a57244 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_white.png differ diff --git a/textures/lib_materials_stone_sandstone_white_brick.png b/textures/lib_materials_stone_sandstone_white_brick.png new file mode 100644 index 0000000..702712f Binary files /dev/null and b/textures/lib_materials_stone_sandstone_white_brick.png differ diff --git a/textures/lib_materials_stone_sandstone_white_gravel.png b/textures/lib_materials_stone_sandstone_white_gravel.png new file mode 100644 index 0000000..c4759b4 Binary files /dev/null and b/textures/lib_materials_stone_sandstone_white_gravel.png differ diff --git a/textures/lib_materials_stone_savanna_cobble.png b/textures/lib_materials_stone_savanna_cobble.png new file mode 100644 index 0000000..82cb19a Binary files /dev/null and b/textures/lib_materials_stone_savanna_cobble.png differ diff --git a/textures/lib_materials_stone_savannah.png b/textures/lib_materials_stone_savannah.png new file mode 100644 index 0000000..4dc5aaf Binary files /dev/null and b/textures/lib_materials_stone_savannah.png differ diff --git a/textures/lib_materials_stone_savannah_with_ore_coal.png b/textures/lib_materials_stone_savannah_with_ore_coal.png new file mode 100644 index 0000000..49db723 Binary files /dev/null and b/textures/lib_materials_stone_savannah_with_ore_coal.png differ diff --git a/textures/lib_materials_stone_savannah_with_ore_iron.png b/textures/lib_materials_stone_savannah_with_ore_iron.png new file mode 100644 index 0000000..137c5e7 Binary files /dev/null and b/textures/lib_materials_stone_savannah_with_ore_iron.png differ diff --git a/textures/darkage_schist.png b/textures/lib_materials_stone_schist.png similarity index 100% rename from textures/darkage_schist.png rename to textures/lib_materials_stone_schist.png diff --git a/textures/darkage_serpentine.png b/textures/lib_materials_stone_serpentine.png similarity index 100% rename from textures/darkage_serpentine.png rename to textures/lib_materials_stone_serpentine.png diff --git a/textures/lib_materials_stone_serpentine_02.png b/textures/lib_materials_stone_serpentine_02.png new file mode 100644 index 0000000..bf8ceaf Binary files /dev/null and b/textures/lib_materials_stone_serpentine_02.png differ diff --git a/textures/darkage_shale.png b/textures/lib_materials_stone_shale.png similarity index 100% rename from textures/darkage_shale.png rename to textures/lib_materials_stone_shale.png diff --git a/textures/darkage_shale_side.png b/textures/lib_materials_stone_shale_side.png similarity index 100% rename from textures/darkage_shale_side.png rename to textures/lib_materials_stone_shale_side.png diff --git a/textures/lib_materials_stone_skarn.png b/textures/lib_materials_stone_skarn.png new file mode 100644 index 0000000..fd166e5 Binary files /dev/null and b/textures/lib_materials_stone_skarn.png differ diff --git a/textures/lib_materials_stone_slate_01_block.png b/textures/lib_materials_stone_slate_01_block.png new file mode 100644 index 0000000..523eeea Binary files /dev/null and b/textures/lib_materials_stone_slate_01_block.png differ diff --git a/textures/lib_materials_stone_slate_01_brick.png b/textures/lib_materials_stone_slate_01_brick.png new file mode 100644 index 0000000..77df4ee Binary files /dev/null and b/textures/lib_materials_stone_slate_01_brick.png differ diff --git a/textures/lib_materials_stone_slate_01_cobble.png b/textures/lib_materials_stone_slate_01_cobble.png new file mode 100644 index 0000000..5bd1f73 Binary files /dev/null and b/textures/lib_materials_stone_slate_01_cobble.png differ diff --git a/textures/darkage_slate_side.png b/textures/lib_materials_stone_slate_01_side.png similarity index 100% rename from textures/darkage_slate_side.png rename to textures/lib_materials_stone_slate_01_side.png diff --git a/textures/lib_materials_stone_slate_01_tile.png b/textures/lib_materials_stone_slate_01_tile.png new file mode 100644 index 0000000..9599f45 Binary files /dev/null and b/textures/lib_materials_stone_slate_01_tile.png differ diff --git a/textures/darkage_slate.png b/textures/lib_materials_stone_slate_01_top.png similarity index 100% rename from textures/darkage_slate.png rename to textures/lib_materials_stone_slate_01_top.png diff --git a/textures/lib_materials_stone_slate_02.png b/textures/lib_materials_stone_slate_02.png new file mode 100644 index 0000000..7baea1d Binary files /dev/null and b/textures/lib_materials_stone_slate_02.png differ diff --git a/textures/lib_materials_stone_stucco.png b/textures/lib_materials_stone_stucco.png new file mode 100644 index 0000000..8cb3c8c Binary files /dev/null and b/textures/lib_materials_stone_stucco.png differ diff --git a/textures/lib_materials_stone_tiles.png b/textures/lib_materials_stone_tiles.png new file mode 100644 index 0000000..852b913 Binary files /dev/null and b/textures/lib_materials_stone_tiles.png differ diff --git a/textures/lib_materials_stone_tiles_crumbled.png b/textures/lib_materials_stone_tiles_crumbled.png new file mode 100644 index 0000000..92c6e8e Binary files /dev/null and b/textures/lib_materials_stone_tiles_crumbled.png differ diff --git a/textures/lib_materials_stone_tiles_mossy.png b/textures/lib_materials_stone_tiles_mossy.png new file mode 100644 index 0000000..1c7dcad Binary files /dev/null and b/textures/lib_materials_stone_tiles_mossy.png differ diff --git a/textures/lib_materials_stone_tiles_with_dirt.png b/textures/lib_materials_stone_tiles_with_dirt.png new file mode 100644 index 0000000..268aa07 Binary files /dev/null and b/textures/lib_materials_stone_tiles_with_dirt.png differ diff --git a/textures/lib_materials_stone_travertine.png b/textures/lib_materials_stone_travertine.png new file mode 100644 index 0000000..fe52554 Binary files /dev/null and b/textures/lib_materials_stone_travertine.png differ diff --git a/textures/lib_materials_stone_tuff.png b/textures/lib_materials_stone_tuff.png new file mode 100644 index 0000000..41abc6e Binary files /dev/null and b/textures/lib_materials_stone_tuff.png differ diff --git a/textures/lib_materials_stone_tuff_bricks.png b/textures/lib_materials_stone_tuff_bricks.png new file mode 100644 index 0000000..ce48da5 Binary files /dev/null and b/textures/lib_materials_stone_tuff_bricks.png differ diff --git a/textures/lib_materials_stone_tuff_bricks_old.png b/textures/lib_materials_stone_tuff_bricks_old.png new file mode 100644 index 0000000..b93ee85 Binary files /dev/null and b/textures/lib_materials_stone_tuff_bricks_old.png differ diff --git a/textures/lib_materials_stone_tuff_cobble.png b/textures/lib_materials_stone_tuff_cobble.png new file mode 100644 index 0000000..7a61f0d Binary files /dev/null and b/textures/lib_materials_stone_tuff_cobble.png differ diff --git a/textures/lib_materials_stone_vermiculite.png b/textures/lib_materials_stone_vermiculite.png new file mode 100644 index 0000000..0695054 Binary files /dev/null and b/textures/lib_materials_stone_vermiculite.png differ diff --git a/textures/lib_materials_stone_whitestone.png b/textures/lib_materials_stone_whitestone.png new file mode 100644 index 0000000..f88edc8 Binary files /dev/null and b/textures/lib_materials_stone_whitestone.png differ diff --git a/textures/lib_materials_tool_club_stone.png b/textures/lib_materials_tool_club_stone.png new file mode 100644 index 0000000..a9c29a2 Binary files /dev/null and b/textures/lib_materials_tool_club_stone.png differ diff --git a/textures/lib_materials_tool_rock_biface.png b/textures/lib_materials_tool_rock_biface.png new file mode 100644 index 0000000..263ac59 Binary files /dev/null and b/textures/lib_materials_tool_rock_biface.png differ diff --git a/textures/lib_materials_tool_rock_chipper.png b/textures/lib_materials_tool_rock_chipper.png new file mode 100644 index 0000000..da9cfb1 Binary files /dev/null and b/textures/lib_materials_tool_rock_chipper.png differ diff --git a/textures/lib_materials_tool_rock_flint.png b/textures/lib_materials_tool_rock_flint.png new file mode 100644 index 0000000..226c740 Binary files /dev/null and b/textures/lib_materials_tool_rock_flint.png differ diff --git a/textures/lib_materials_tool_rock_large.png b/textures/lib_materials_tool_rock_large.png new file mode 100644 index 0000000..711626e Binary files /dev/null and b/textures/lib_materials_tool_rock_large.png differ diff --git a/textures/lib_materials_tool_rock_pebble.png b/textures/lib_materials_tool_rock_pebble.png new file mode 100644 index 0000000..924586b Binary files /dev/null and b/textures/lib_materials_tool_rock_pebble.png differ diff --git a/textures/lib_materials_tool_rock_pebbles.png b/textures/lib_materials_tool_rock_pebbles.png new file mode 100644 index 0000000..6f8ab9f Binary files /dev/null and b/textures/lib_materials_tool_rock_pebbles.png differ diff --git a/textures/lib_materials_tool_rock_pebbles_large.png b/textures/lib_materials_tool_rock_pebbles_large.png new file mode 100644 index 0000000..9b108fc Binary files /dev/null and b/textures/lib_materials_tool_rock_pebbles_large.png differ diff --git a/textures/lib_materials_tool_rock_small.png b/textures/lib_materials_tool_rock_small.png new file mode 100644 index 0000000..c5afd8d Binary files /dev/null and b/textures/lib_materials_tool_rock_small.png differ diff --git a/textures/luscious_grass.png b/textures/luscious_grass.png new file mode 100644 index 0000000..fa132b4 Binary files /dev/null and b/textures/luscious_grass.png differ diff --git a/textures/mapgen_tin.png b/textures/mapgen_tin.png new file mode 100644 index 0000000..c573ef0 Binary files /dev/null and b/textures/mapgen_tin.png differ diff --git a/textures/mapgen_tin_ingot.png b/textures/mapgen_tin_ingot.png new file mode 100644 index 0000000..3d507ee Binary files /dev/null and b/textures/mapgen_tin_ingot.png differ diff --git a/textures/mapgen_tin_lump.png b/textures/mapgen_tin_lump.png new file mode 100644 index 0000000..a1da747 Binary files /dev/null and b/textures/mapgen_tin_lump.png differ diff --git a/textures/mapgen_tin_ore.png b/textures/mapgen_tin_ore.png new file mode 100644 index 0000000..f674ca2 Binary files /dev/null and b/textures/mapgen_tin_ore.png differ diff --git a/textures/moreblocks_circle_stone_bricks.png b/textures/moreblocks_circle_stone_bricks.png new file mode 100644 index 0000000..4ca0134 Binary files /dev/null and b/textures/moreblocks_circle_stone_bricks.png differ diff --git a/textures/moreblocks_coal_checker.png b/textures/moreblocks_coal_checker.png new file mode 100644 index 0000000..3df90c3 Binary files /dev/null and b/textures/moreblocks_coal_checker.png differ diff --git a/textures/moreblocks_coal_stone.png b/textures/moreblocks_coal_stone.png new file mode 100644 index 0000000..1e514ed Binary files /dev/null and b/textures/moreblocks_coal_stone.png differ diff --git a/textures/moreblocks_coal_stone_bricks.png b/textures/moreblocks_coal_stone_bricks.png new file mode 100644 index 0000000..366e445 Binary files /dev/null and b/textures/moreblocks_coal_stone_bricks.png differ diff --git a/textures/moreblocks_cobble_compressed.png b/textures/moreblocks_cobble_compressed.png new file mode 100644 index 0000000..94d02b5 Binary files /dev/null and b/textures/moreblocks_cobble_compressed.png differ diff --git a/textures/moreblocks_grey_bricks.png b/textures/moreblocks_grey_bricks.png new file mode 100644 index 0000000..9839ca2 Binary files /dev/null and b/textures/moreblocks_grey_bricks.png differ diff --git a/textures/moreblocks_iron_checker.png b/textures/moreblocks_iron_checker.png new file mode 100644 index 0000000..d27f4df Binary files /dev/null and b/textures/moreblocks_iron_checker.png differ diff --git a/textures/moreblocks_iron_stone.png b/textures/moreblocks_iron_stone.png new file mode 100644 index 0000000..20c42f3 Binary files /dev/null and b/textures/moreblocks_iron_stone.png differ diff --git a/textures/moreblocks_plankstone.png b/textures/moreblocks_plankstone.png new file mode 100644 index 0000000..b1a65c5 Binary files /dev/null and b/textures/moreblocks_plankstone.png differ diff --git a/textures/moreblocks_plankstone_2.png b/textures/moreblocks_plankstone_2.png new file mode 100644 index 0000000..953c2f5 Binary files /dev/null and b/textures/moreblocks_plankstone_2.png differ diff --git a/textures/moreblocks_split_stone_tile.png b/textures/moreblocks_split_stone_tile.png new file mode 100644 index 0000000..d7d69af Binary files /dev/null and b/textures/moreblocks_split_stone_tile.png differ diff --git a/textures/moreblocks_split_stone_tile_top.png b/textures/moreblocks_split_stone_tile_top.png new file mode 100644 index 0000000..3c8eb6d Binary files /dev/null and b/textures/moreblocks_split_stone_tile_top.png differ diff --git a/textures/moreblocks_stone_tile.png b/textures/moreblocks_stone_tile.png new file mode 100644 index 0000000..c2083ea Binary files /dev/null and b/textures/moreblocks_stone_tile.png differ diff --git a/textures/moreblocks_tar.png b/textures/moreblocks_tar.png new file mode 100644 index 0000000..e1eb427 Binary files /dev/null and b/textures/moreblocks_tar.png differ diff --git a/textures/moreblocks_tree_stairsplus.png b/textures/moreblocks_tree_stairsplus.png new file mode 100644 index 0000000..60100c9 Binary files /dev/null and b/textures/moreblocks_tree_stairsplus.png differ diff --git a/textures/moreblocks_wood_tile.png b/textures/moreblocks_wood_tile.png new file mode 100644 index 0000000..d0faa3d Binary files /dev/null and b/textures/moreblocks_wood_tile.png differ diff --git a/textures/moreblocks_wood_tile_center.png b/textures/moreblocks_wood_tile_center.png new file mode 100644 index 0000000..02b0f84 Binary files /dev/null and b/textures/moreblocks_wood_tile_center.png differ diff --git a/textures/moreblocks_wood_tile_full.png b/textures/moreblocks_wood_tile_full.png new file mode 100644 index 0000000..7ec7f05 Binary files /dev/null and b/textures/moreblocks_wood_tile_full.png differ diff --git a/textures/moreblocks_wood_tile_up.png b/textures/moreblocks_wood_tile_up.png new file mode 100644 index 0000000..3f6a2f2 Binary files /dev/null and b/textures/moreblocks_wood_tile_up.png differ diff --git a/textures/moreores_tool_silveraxe.png b/textures/moreores_tool_silveraxe.png new file mode 100644 index 0000000..d33edd5 Binary files /dev/null and b/textures/moreores_tool_silveraxe.png differ diff --git a/textures/moreores_tool_silverhoe.png b/textures/moreores_tool_silverhoe.png new file mode 100644 index 0000000..066b908 Binary files /dev/null and b/textures/moreores_tool_silverhoe.png differ diff --git a/textures/moreores_tool_silverpick.png b/textures/moreores_tool_silverpick.png new file mode 100644 index 0000000..69de097 Binary files /dev/null and b/textures/moreores_tool_silverpick.png differ diff --git a/textures/moreores_tool_silvershovel.png b/textures/moreores_tool_silvershovel.png new file mode 100644 index 0000000..d55185b Binary files /dev/null and b/textures/moreores_tool_silvershovel.png differ diff --git a/textures/moreores_tool_silversword.png b/textures/moreores_tool_silversword.png new file mode 100644 index 0000000..220ba2b Binary files /dev/null and b/textures/moreores_tool_silversword.png differ diff --git a/textures/node_texture_modifier_dirt_old4.png b/textures/node_texture_modifier_dirt_old4.png new file mode 100644 index 0000000..60481af Binary files /dev/null and b/textures/node_texture_modifier_dirt_old4.png differ diff --git a/textures/node_texture_modifier_sand_old1.png b/textures/node_texture_modifier_sand_old1.png new file mode 100644 index 0000000..15101a7 Binary files /dev/null and b/textures/node_texture_modifier_sand_old1.png differ diff --git a/textures/node_texture_modifier_sand_old3 - Copy.png b/textures/node_texture_modifier_sand_old3 - Copy.png new file mode 100644 index 0000000..f0970e6 Binary files /dev/null and b/textures/node_texture_modifier_sand_old3 - Copy.png differ diff --git a/textures/node_texture_modifier_sand_old3.png b/textures/node_texture_modifier_sand_old3.png new file mode 100644 index 0000000..f0970e6 Binary files /dev/null and b/textures/node_texture_modifier_sand_old3.png differ diff --git a/textures/node_texture_modifier_sandstone_brick_old1.png b/textures/node_texture_modifier_sandstone_brick_old1.png new file mode 100644 index 0000000..702712f Binary files /dev/null and b/textures/node_texture_modifier_sandstone_brick_old1.png differ diff --git a/textures/node_texture_modifier_sandstone_old1.png b/textures/node_texture_modifier_sandstone_old1.png new file mode 100644 index 0000000..c4759b4 Binary files /dev/null and b/textures/node_texture_modifier_sandstone_old1.png differ diff --git a/textures/node_texture_modifier_stone_old1.png b/textures/node_texture_modifier_stone_old1.png new file mode 100644 index 0000000..cad0dbe Binary files /dev/null and b/textures/node_texture_modifier_stone_old1.png differ diff --git a/textures/prehistoric_life_pete_moss.png b/textures/prehistoric_life_pete_moss.png new file mode 100644 index 0000000..482df77 Binary files /dev/null and b/textures/prehistoric_life_pete_moss.png differ diff --git a/textures/prehistoric_life_pete_moss_side.png b/textures/prehistoric_life_pete_moss_side.png new file mode 100644 index 0000000..a74b925 Binary files /dev/null and b/textures/prehistoric_life_pete_moss_side.png differ diff --git a/textures/prehistoric_life_river_rock.png b/textures/prehistoric_life_river_rock.png new file mode 100644 index 0000000..3c42bd1 Binary files /dev/null and b/textures/prehistoric_life_river_rock.png differ diff --git a/textures/prehistoric_life_volcanic_sand.png b/textures/prehistoric_life_volcanic_sand.png new file mode 100644 index 0000000..a2930cd Binary files /dev/null and b/textures/prehistoric_life_volcanic_sand.png differ diff --git a/textures/pyramids_eye.png b/textures/pyramids_eye.png new file mode 100644 index 0000000..4445dff Binary files /dev/null and b/textures/pyramids_eye.png differ diff --git a/textures/pyramids_men.png b/textures/pyramids_men.png new file mode 100644 index 0000000..69cd4de Binary files /dev/null and b/textures/pyramids_men.png differ diff --git a/textures/pyramids_sun.png b/textures/pyramids_sun.png new file mode 100644 index 0000000..63d3b95 Binary files /dev/null and b/textures/pyramids_sun.png differ diff --git a/textures/quartz - Copy.png b/textures/quartz - Copy.png new file mode 100644 index 0000000..dea13d6 Binary files /dev/null and b/textures/quartz - Copy.png differ diff --git a/textures/quartz.png b/textures/quartz.png new file mode 100644 index 0000000..dea13d6 Binary files /dev/null and b/textures/quartz.png differ diff --git a/textures/rocks_Dolomite.png b/textures/rocks_Dolomite.png new file mode 100644 index 0000000..a590cb0 Binary files /dev/null and b/textures/rocks_Dolomite.png differ diff --git a/textures/rocks_Schist.png b/textures/rocks_Schist.png new file mode 100644 index 0000000..6b33b72 Binary files /dev/null and b/textures/rocks_Schist.png differ diff --git a/textures/rocks_bb.png b/textures/rocks_bb.png new file mode 100644 index 0000000..f3c3518 Binary files /dev/null and b/textures/rocks_bb.png differ diff --git a/textures/rocks_gls.png b/textures/rocks_gls.png new file mode 100644 index 0000000..2d2fe1a Binary files /dev/null and b/textures/rocks_gls.png differ diff --git a/textures/rocks_obs.png b/textures/rocks_obs.png new file mode 100644 index 0000000..cd04e14 Binary files /dev/null and b/textures/rocks_obs.png differ diff --git a/textures/rocks_wm.png b/textures/rocks_wm.png new file mode 100644 index 0000000..e3c4919 Binary files /dev/null and b/textures/rocks_wm.png differ diff --git a/textures/rocks_yss.png b/textures/rocks_yss.png new file mode 100644 index 0000000..763a322 Binary files /dev/null and b/textures/rocks_yss.png differ diff --git a/textures/technic_granite.png b/textures/technic_granite.png deleted file mode 100644 index abb1385..0000000 Binary files a/textures/technic_granite.png and /dev/null differ diff --git a/textures/vmg_small_rocks.png b/textures/vmg_small_rocks.png new file mode 100644 index 0000000..9b108fc Binary files /dev/null and b/textures/vmg_small_rocks.png differ diff --git a/textures/xdecor_coalstone_tile.png b/textures/xdecor_coalstone_tile.png new file mode 100644 index 0000000..bd1e4bd Binary files /dev/null and b/textures/xdecor_coalstone_tile.png differ diff --git a/textures/xdecor_desertstone_tile.png b/textures/xdecor_desertstone_tile.png new file mode 100644 index 0000000..b546c56 Binary files /dev/null and b/textures/xdecor_desertstone_tile.png differ diff --git a/textures/xdecor_hard_clay.png b/textures/xdecor_hard_clay.png new file mode 100644 index 0000000..cc058bd Binary files /dev/null and b/textures/xdecor_hard_clay.png differ diff --git a/textures/xdecor_stone_rune.png b/textures/xdecor_stone_rune.png new file mode 100644 index 0000000..76e34d2 Binary files /dev/null and b/textures/xdecor_stone_rune.png differ diff --git a/textures/xdecor_stone_tile.png b/textures/xdecor_stone_tile.png new file mode 100644 index 0000000..20b116a Binary files /dev/null and b/textures/xdecor_stone_tile.png differ diff --git a/type_dirt.lua b/type_dirt.lua index 0514d25..8524770 100644 --- a/type_dirt.lua +++ b/type_dirt.lua @@ -1,4 +1,1781 @@ +local S = lib_materials.intllib + +--Additional Dirts + +local GRASS_COASTAL_TEXTURE_TOP = "lib_materials_grass_coastal_top.png" +local GRASS_COASTAL_TEXTURE_SIDE = "lib_materials_grass_coastal_side.png" +local GRASS_LOWLAND_TEXTURE_TOP = "lib_materials_grass_lowland_top.png" +local GRASS_LOWLAND_TEXTURE_SIDE = "lib_materials_grass_lowland_side.png" +local GRASS_SHELF_TEXTURE_TOP = "lib_materials_grass_shelf_top.png" +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" +local GRASS_HUMID_PALETTE_4 = "#93fc54: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_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_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_4 = "#fc5458:80" +--]] + +--[[ ALT COLOR VALUES +--DEFAULTS +local GRASS_PALETTE_1 = "#69e942:80" +local GRASS_PALETTE_2 = "#b1e436:80" +local GRASS_PALETTE_3 = "#dacf61:80" +local GRASS_PALETTE_4 = "#fcd953:80" + +local GRASS_DRY_PALETTE_1 = "#ace943:80" +local GRASS_DRY_PALETTE_2 = "#e4d136:80" +local GRASS_DRY_PALETTE_3 = "#daa062:80" +local GRASS_DRY_PALETTE_4 = "#fc9754:80" + +local GRASS_BROWN_PALETTE_1 = "#e9df43:80" +local GRASS_BROWN_PALETTE_2 = "#e48836:80" +local GRASS_BROWN_PALETTE_3 = "#da6e62:80" +local GRASS_BROWN_PALETTE_4 = "#fc5458:80" + +--CUSTOM +local GRASS_LUSH_PALETTE_1 = {":80", "#:80", ":80", ":80"} +local GRASS_LUSH_PALETTE_2 = {":80", "#:80", ":80", ":80"} +local GRASS_LUSH_PALETTE_3 = {":80", "#:80", ":80", ":80"} +local GRASS_LUSH_PALETTE_4 = {":80", "#:80", ":80", ":80"} + +local GRASS_DRY_PALETTE_1 = {"ed996b:80", "#d7b353:80", "d3e420:80", "c2ee10:80"} +local GRASS_DRY_PALETTE_2 = {"fa8e6c:80", "#ea9a6a:80", "dcbc3e:80", "e0e818:80"} +local GRASS_DRY_PALETTE_3 = {"fd9579:80", "#f49a6e:80", "d9a34d:80", "e4d426:80"} +local GRASS_DRY_PALETTE_4 = {"fb9a6b:80", "#f7954d:80", "e8983a:80", "e2b52c:80"} + +local GRASS_BROWN_PALETTE_1 = {"ed6b74:80", "#d77c53:80", "e4a120:80", "eebc10:80"} +local GRASS_BROWN_PALETTE_2 = {"fa6c87:80", "#ea6a70:80", "dc7a3e:80", "e89718:80"} +local GRASS_BROWN_PALETTE_3 = {"fd7995:80", "#f46e7b:80", "d9674d:80", "e48426:80"} +local GRASS_BROWN_PALETTE_4 = {"fb6b78:80", "f74d4d:80", "e84f3a:80", "e2682c:80"} + +local GRASS_BLUE_PALETTE_1 = {":80", "#:80", ":80", ":80"} +local GRASS_BLUE_PALETTE_2 = {":80", "#:80", ":80", ":80"} +local GRASS_BLUE_PALETTE_3 = {":80", "#:80", ":80", ":80"} +local GRASS_BLUE_PALETTE_4 = {":80", "#:80", ":80", ":80"} + +--]] + +local GRASS_WET_PALETTE_1 = "#43e9a5:80" +local GRASS_WET_PALETTE_2 = "#36e44b:80" +local GRASS_WET_PALETTE_3 = "#81da62:80" +local GRASS_WET_PALETTE_4 = "#93fc54:80" +local GRASS_LUSH_PALETTE_1 = "#69e942:80" +local GRASS_LUSH_PALETTE_2 = "#b1e436:80" +local GRASS_LUSH_PALETTE_3 = "#dacf61:80" +local GRASS_LUSH_PALETTE_4 = "#fcd953:80" +local GRASS_DRY_PALETTE_1 = "#ace943:80" +local GRASS_DRY_PALETTE_2 = "#e4d136:80" +local GRASS_DRY_PALETTE_3 = "#daa062:80" +local GRASS_DRY_PALETTE_4 = "#fc9754:80" +local GRASS_BROWN_PALETTE_1 = "#e9df43:80" +local GRASS_BROWN_PALETTE_2 = "#e48836:80" +local GRASS_BROWN_PALETTE_3 = "#da6e62:80" +local GRASS_BROWN_PALETTE_4 = "#fc5458:80" + +local GRASS_TEXTURE_TOP = "lib_materials_grass_default_top.png" +local GRASS_TEXTURE_SIDE = "lib_materials_grass_default_side.png" +local GRASS_BW_TEXTURE_TOP = "lib_materials_grass_bw_top.png" +local GRASS_BW_TEXTURE_SIDE = "lib_materials_grass_bw_side.png" +local GRASS_BROWN_TEXTURE_TOP = "lib_materials_grass_brown_top.png" +local GRASS_BROWN_TEXTURE_SIDE = "lib_materials_grass_brown_side.png" +local GRASS_DRY_TEXTURE_TOP = "lib_materials_grass_dry_default_top.png" +local GRASS_DRY_TEXTURE_SIDE = "lib_materials_grass_dry_default_side.png" +local GRASS_JUNGLE_TEXTURE_TOP = "lib_materials_grass_jungle_01_top.png" +local GRASS_JUNGLE_TEXTURE_SIDE = "lib_materials_grass_jungle_01_side.png" + + +--Baked Clay + minetest.register_node("lib_materials:clay_baked_black", { + description = S("Baked Clay - baked_black"), + tiles = {"lib_materials_clay_baked_black.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_blue", { + description = S("Baked Clay - baked_blue"), + tiles = {"lib_materials_clay_baked_blue.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_brown", { + description = S("Baked Clay - baked_brown"), + tiles = {"lib_materials_clay_baked_brown.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_cyan", { + description = S("Baked Clay - baked_cyan"), + tiles = {"lib_materials_clay_baked_cyan.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_dark_green", { + description = S("Baked Clay - dark_green"), + tiles = {"lib_materials_clay_baked_dark_green.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_dark_grey", { + description = S("Baked Clay - dark_grey"), + tiles = {"lib_materials_clay_baked_dark_grey.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_green", { + description = S("Baked Clay - Green"), + tiles = {"lib_materials_clay_baked_green.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_grey", { + description = S("Baked Clay - Grey"), + tiles = {"lib_materials_clay_baked_grey.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_magenta", { + description = S("Baked Clay - Magenta"), + tiles = {"lib_materials_clay_baked_magenta.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_orange", { + description = S("Baked Clay - Orange"), + tiles = {"lib_materials_clay_baked_orange.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_pink", { + description = S("Baked Clay - Pink"), + tiles = {"lib_materials_clay_baked_pink.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_red", { + description = S("Baked Clay - Red"), + tiles = {"lib_materials_clay_baked_red.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_violet", { + description = S("Baked Clay - Violet"), + tiles = {"lib_materials_clay_baked_violet.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_white", { + description = S("Baked Clay - White"), + tiles = {"lib_materials_clay_baked_white.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:clay_baked_yellow", { + description = S("Baked Clay - Yellow"), + tiles = {"lib_materials_clay_baked_yellow.png"}, + groups = {cracky = 3, baked_clay = 3}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + }) + +-- Darkage darkdirt, mud + minetest.register_node("lib_materials:dirt_mud_dried", { + description = S("Dirt - Mud Dried"), + tiles = {"lib_materials_dirt_mud_dried_top.png","lib_materials_dirt_mud_dried_side.png"}, + is_ground_content = true, + groups = {crumbly=3}, + drop = 'lib_materials:mud_lump 4', + 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", + }) + minetest.register_craftitem("lib_materials:dirt_silt_lump", { + description = "Dirt - Silt Lump", + inventory_image = "lib_materials_dirt_silt_lump.png", + }) + + minetest.register_craftitem("lib_materials:dirt_clay_white_lump", { + description = S("Dirt - Clay Lump"), + inventory_image = "lib_materials_dirt_clay_lump.png", + }) + minetest.register_craftitem("lib_materials:clay_brick", { + description = S("Clay Brick"), + inventory_image = "lib_materials_clay_brick.png", + }) + + minetest.override_item("default:clay", {description = "White Clay"}) + +-- Ethereal dirts + minetest.register_node("lib_materials:dirt_dried", { + description = S("Dirt - Dried"), + tiles = {"lib_materials_dirt_dried.png"}, + is_ground_content = lib_materials.cavedirt, + groups = {crumbly = 3}, + sounds = default.node_sound_dirt_defaults() + }) + + minetest.register_craft({ + type = "cooking", + output = "lib_materials:dirt_dried", + recipe = "default:dirt", + cooktime = 3, + }) + + + 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},}), + }) + + + +--Mapgen Dirts (farlands) + minetest.register_node("lib_materials:dirt_with_grass_fungi", { + description = "Grass - Fungi Covered", + tiles = {"lib_materials_grass_fungi_top.png", "lib_materials_dirt.png", "lib_materials_grass_fungi_side.png"}, + groups = {crumbly = 1, oddly_breakable_by_hand = 1}, + sounds = default.node_sound_dirt_defaults() + }) + minetest.register_node("lib_materials:dirt_with_grass_jungle_02", { + description = "Dirt with Jungle 02 Grass", + tiles = {"lib_materials_grass_jungle_02_top.png", "lib_materials_dirt.png", "lib_materials_grass_jungle_02_side.png"}, + groups = {crumbly = 3,}, + sounds = default.node_sound_dirt_defaults() + }) + minetest.register_node("lib_materials:dirt_with_grass_leafy", { + description = "Dirt With Leaf Covered Grass", + tiles = {"lib_materials_grass_leafy_top.png", "lib_materials_dirt.png", "lib_materials_grass_leafy_side.png"}, + groups = {crumbly = 3,}, + sounds = default.node_sound_dirt_defaults() + }) + minetest.register_node("lib_materials:dirt_with_grass_swamp", { + description = "Dirt With Swamp Grass", + tiles = {"lib_materials_grass_swamp_top.png", "lib_materials_dirt.png", "lib_materials_grass_swamp_side.png"}, + groups = {crumbly = 3,}, + sounds = default.node_sound_dirt_defaults() + }) + minetest.register_node("lib_materials:stone_with_grass_sea", { + description = "Stone With Sea Grass", + tiles = {"lib_materials_grass_sea_top.png", "lib_materials_stone_default.png", + {name = "lib_materials_grass_sea_side.png", + tileable_vertical = false}}, + groups = {crumbly = 3,}, + drop = 'lib_ecology:seagrass_1', + sounds = default.node_sound_stone_defaults() + }) + +--mg Dry Dirt + minetest.register_node("lib_materials:dirt_with_brown_grass", { + description = "Dirt with Brown Grass", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:#e8bb30:80", "lib_materials_dirt.png", "lib_materials_dirt.png^("..GRASS_TEXTURE_SIDE.."^[colorize:#e8bb30:80)"}, + is_ground_content = true, + groups = {crumbly=3,soil=1}, + drop = 'lib_materials:dirt', + sounds = default.node_sound_dirt_defaults({footstep = {name="default_grass_footstep", gain=0.25},}), + }) + +-- Prehistoric Life Dirts + minetest.register_node("lib_materials:dirt_with_grass_pete_moss", { + description = "Dirt with Pete Moss", + tiles = {"lib_materials_grass_pete_moss_top.png", "lib_materials_grass_pete_moss_side.png"}, + groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1}, + drop = 'default:dirt', + sounds = default.node_sound_dirt_defaults({footstep = {name = "default_grass_footstep", gain = 0.25},}), + }) + +-- 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(), + -- }) + +-- Add dirts +local grass_types = { + "hot_humid", "hot_semihumid", "hot_temperate", "hot_semiarid", "hot_arid", + "warm_humid", "warm_semihumid", "warm_temperate", "warm_semiarid", "warm_arid", + "temperate_humid", "temperate_semihumid", "temperate_temperate", "temperate_semiarid", "temperate_arid", + "cool_humid", "cool_semihumid", "cool_temperate", "cool_semiarid", "cool_arid", + "cold_humid", "cold_semihumid", "cold_temperate", "cold_semiarid", "cold_arid", +} + +local function register_dirts2(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(), + soil = { + base = "lib_materials:"..name, + dry = "farming:soil", + wet = "farming:soil_wet" + }, + }) + + 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, + 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_rainforest", { + 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_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"}, + 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_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)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_4..")"}, + 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_grass_hot_humid_lowland", { + description = readname .. " Dirt with Grass (hot_humid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_4..")"}, + 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_grass_hot_humid_shelf", { + description = readname .. " Dirt with Grass (hot_humid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_4..")"}, + 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_grass_hot_humid_highland", { + description = readname .. " Dirt with Grass (hot_humid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_4..")"}, + 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_grass_hot_semihumid_coastal", { + description = readname .. " Dirt with Grass (hot_semihumid_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_4..")"}, + 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_grass_hot_semihumid_lowland", { + description = readname .. " Dirt with Grass (hot_semihumid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_4..")"}, + 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_grass_hot_semihumid_shelf", { + description = readname .. " Dirt with Grass (hot_semihumid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_4..")"}, + 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_grass_hot_semihumid_highland", { + description = readname .. " Dirt with Grass (hot_semihumid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_4..")"}, + 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_grass_hot_temperate_coastal", { + description = readname .. " Dirt with Grass (hot_temperate_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_4..")"}, + 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_grass_hot_temperate_lowland", { + description = readname .. " Dirt with Grass (hot_temperate_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_4..")"}, + 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_grass_hot_temperate_shelf", { + description = readname .. " Dirt with Grass (hot_temperate_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_4..")"}, + 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_grass_hot_temperate_highland", { + description = readname .. " Dirt with Grass (hot_temperate_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_4..")"}, + 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_grass_hot_semiarid_coastal", { + description = readname .. " Dirt with Grass (hot_semiarid_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_4..")"}, + 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_grass_hot_semiarid_lowland", { + description = readname .. " Dirt with Grass (hot_semiarid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_4..")"}, + 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_grass_hot_semiarid_shelf", { + description = readname .. " Dirt with Grass (hot_semiarid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_4..")"}, + 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_grass_hot_semiarid_highland", { + description = readname .. " Dirt with Grass (hot_semiarid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_4..")"}, + 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_grass_warm_humid_coastal", { + description = readname .. " Dirt with Grass (warm_humid_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_3..")"}, + 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_grass_warm_humid_lowland", { + description = readname .. " Dirt with Grass (warm_humid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_3..")"}, + 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_grass_warm_humid_shelf", { + description = readname .. " Dirt with Grass (warm_humid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_3..")"}, + 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_grass_warm_humid_highland", { + description = readname .. " Dirt with Grass (warm_humid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_3..")"}, + 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_grass_warm_semihumid_coastal", { + description = readname .. " Dirt with Grass (warm_semihumid_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_3..")"}, + 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_grass_warm_semihumid_lowland", { + description = readname .. " Dirt with Grass (warm_semihumid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_3..")"}, + 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_grass_warm_semihumid_shelf", { + description = readname .. " Dirt with Grass (warm_semihumid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_3..")"}, + 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_grass_warm_semihumid_highland", { + description = readname .. " Dirt with Grass (warm_semihumid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_3..")"}, + 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_grass_warm_temperate_coastal", { + description = readname .. " Dirt with Grass (warm_temperate_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_3..")"}, + 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_grass_warm_temperate_lowland", { + description = readname .. " Dirt with Grass (warm_temperate_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_3..")"}, + 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_grass_warm_temperate_shelf", { + description = readname .. " Dirt with Grass (warm_temperate_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_3..")"}, + 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_grass_warm_temperate_highland", { + description = readname .. " Dirt with Grass (warm_temperate_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_3..")"}, + 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_grass_warm_semiarid_coastal", { + description = readname .. " Dirt with Grass (warm_semiarid_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_3..")"}, + 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_grass_warm_semiarid_lowland", { + description = readname .. " Dirt with Grass (warm_semiarid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_3..")"}, + 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_grass_warm_semiarid_shelf", { + description = readname .. " Dirt with Grass (warm_semiarid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_3..")"}, + 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_grass_warm_semiarid_highland", { + description = readname .. " Dirt with Grass (warm_semiarid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_3..")"}, + 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_grass_temperate_humid_coastal", { + description = readname .. " Dirt with Grass (temperate_humid_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_2..")"}, + 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_grass_temperate_humid_lowland", { + description = readname .. " Dirt with Grass (temperate_humid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_2..")"}, + 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_grass_temperate_humid_shelf", { + description = readname .. " Dirt with Grass (temperate_humid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_2..")"}, + 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_grass_temperate_humid_highland", { + description = readname .. " Dirt with Grass (temperate_humid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_2..")"}, + 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_grass_temperate_semihumid_coastal", { + description = readname .. " Dirt with Grass (temperate_semihumid_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_2..")"}, + 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_grass_temperate_semihumid_lowland", { + description = readname .. " Dirt with Grass (temperate_semihumid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_2..")"}, + 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_grass_temperate_semihumid_shelf", { + description = readname .. " Dirt with Grass (temperate_semihumid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_2..")"}, + 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_grass_temperate_semihumid_highland", { + description = readname .. " Dirt with Grass (temperate_semihumid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_2..")"}, + 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_grass_temperate_temperate_coastal", { + description = readname .. " Dirt with Grass (temperate_temperate_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_2..")"}, + 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_grass_temperate_temperate_lowland", { + description = readname .. " Dirt with Grass (temperate_temperate_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_2..")"}, + 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_grass_temperate_temperate_shelf", { + description = readname .. " Dirt with Grass (temperate_temperate_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_2..")"}, + 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_grass_temperate_temperate_highland", { + description = readname .. " Dirt with Grass (temperate_temperate_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_2..")"}, + 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_grass_temperate_semiarid_coastal", { + description = readname .. " Dirt with Grass (temperate_semiarid_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_2..")"}, + 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_grass_temperate_semiarid_lowland", { + description = readname .. " Dirt with Grass (temperate_semiarid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_2..")"}, + 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_grass_temperate_semiarid_shelf", { + description = readname .. " Dirt with Grass (temperate_semiarid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_2..")"}, + 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_grass_temperate_semiarid_highland", { + description = readname .. " Dirt with Grass (temperate_semiarid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_2..")"}, + 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_grass_cool_humid_coastal", { + description = readname .. " Dirt with Grass (cool_humid_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_1..")"}, + 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_grass_cool_humid_lowland", { + description = readname .. " Dirt with Grass (cool_humid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_1..")"}, + 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_grass_cool_humid_shelf", { + description = readname .. " Dirt with Grass (cool_humid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_1..")"}, + 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_grass_cool_humid_highland", { + description = readname .. " Dirt with Grass (cool_humid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_HUMID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_HUMID_PALETTE_1..")"}, + 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_grass_cool_semihumid_coastal", { + description = readname .. " Dirt with Grass (cool_semihumid_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_1..")"}, + 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_grass_cool_semihumid_lowland", { + description = readname .. " Dirt with Grass (cool_semihumid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_1..")"}, + 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_grass_cool_semihumid_shelf", { + description = readname .. " Dirt with Grass (cool_semihumid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_1..")"}, + 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_grass_cool_semihumid_highland", { + description = readname .. " Dirt with Grass (cool_semihumid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIHUMID_PALETTE_1..")"}, + 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_grass_cool_temperate_coastal", { + description = readname .. " Dirt with Grass (cool_temperate_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_1..")"}, + 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_grass_cool_temperate_lowland", { + description = readname .. " Dirt with Grass (cool_temperate_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_1..")"}, + 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_grass_cool_temperate_shelf", { + description = readname .. " Dirt with Grass (cool_temperate_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_1..")"}, + 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_grass_cool_temperate_highland", { + description = readname .. " Dirt with Grass (cool_temperate_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_TEMPERATE_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_TEMPERATE_PALETTE_1..")"}, + 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_grass_cool_semiarid_coastal", { + description = readname .. " Dirt with Grass (cool_semiarid_coastal)", + tiles = {""..GRASS_COASTAL_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_COASTAL_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_1..")"}, + 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_grass_cool_semiarid_lowland", { + description = readname .. " Dirt with Grass (cool_semiarid_lowland)", + tiles = {""..GRASS_LOWLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_LOWLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_1..")"}, + 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_grass_cool_semiarid_shelf", { + description = readname .. " Dirt with Grass (cool_semiarid_shelf)", + tiles = {""..GRASS_SHELF_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_SHELF_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_1..")"}, + 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_grass_cool_semiarid_highland", { + description = readname .. " Dirt with Grass (cool_semiarid_highland)", + tiles = {""..GRASS_HIGHLAND_TEXTURE_TOP.."^[colorize:"..GRASS_SEMIARID_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_HIGHLAND_TEXTURE_SIDE.."^[colorize:"..GRASS_SEMIARID_PALETTE_1..")"}, + 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},}), + }) + + + +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..")"}, + 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_grass_wet_02", { + description = readname .. " Dirt with Grass (Wet 02)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_2..")"}, + 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_grass_wet_03", { + description = readname .. " Dirt with Grass (Wet 03)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_3..")"}, + 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_grass_wet_04", { + description = readname .. " Dirt with Grass (Wet 04)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_4..")"}, + 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_grass_wet_05", { + description = readname .. " Dirt with Grass (Wet 05)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_1..")"}, + 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_grass_wet_06", { + description = readname .. " Dirt with Grass (Wet 06)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_2..")"}, + 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_grass_wet_07", { + description = readname .. " Dirt with Grass (Wet 07)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_3..")"}, + 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_grass_wet_08", { + description = readname .. " Dirt with Grass (Wet 08)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_4..")"}, + 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_grass_wet_09", { + description = readname .. " Dirt with Grass (Wet 09)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_1..")"}, + 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_grass_wet_10", { + description = readname .. " Dirt with Grass (Wet 10)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_2..")"}, + 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_grass_wet_11", { + description = readname .. " Dirt with Grass (Wet 11)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_3..")"}, + 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_grass_wet_12", { + description = readname .. " Dirt with Grass (Wet 12)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_4..")"}, + 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_grass_wet_13", { + description = readname .. " Dirt with Grass (Wet 13)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_1..")"}, + 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_grass_wet_14", { + description = readname .. " Dirt with Grass (Wet 14)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_2..")"}, + 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_grass_wet_15", { + description = readname .. " Dirt with Grass (Wet 15)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_3..")"}, + 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_grass_wet_16", { + description = readname .. " Dirt with Grass (Wet 16)", + tiles = {""..GRASS_JUNGLE_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_JUNGLE_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_4..")"}, + 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_grass_lush_01", { + description = readname .. " Dirt with Grass (Lush 01)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_1..")"}, + 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_grass_lush_02", { + description = readname .. " Dirt with Grass (Lush 02)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_2..")"}, + 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_grass_lush_03", { + description = readname .. " Dirt with Grass (Lush 03)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_3..")"}, + 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_grass_lush_04", { + description = readname .. " Dirt with Grass (Lush 04)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_4..")"}, + 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_grass_lush_05", { + description = readname .. " Dirt with Grass (Lush 05)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_1..")"}, + 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_grass_lush_06", { + description = readname .. " Dirt with Grass (Lush 06)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_2..")"}, + 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_grass_lush_07", { + description = readname .. " Dirt with Grass (Lush 07)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_3..")"}, + 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_grass_lush_08", { + description = readname .. " Dirt with Grass (Lush 08)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_4..")"}, + 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_grass_lush_09", { + description = readname .. " Dirt with Grass (Lush 09)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_1..")"}, + 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_grass_lush_10", { + description = readname .. " Dirt with Grass (Lush 10)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_2..")"}, + 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_grass_lush_11", { + description = readname .. " Dirt with Grass (Lush 11)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_3..")"}, + 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_grass_lush_12", { + description = readname .. " Dirt with Grass (Lush 12)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_4..")"}, + 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_grass_lush_13", { + description = readname .. " Dirt with Grass (Lush 13)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_1..")"}, + 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_grass_lush_14", { + description = readname .. " Dirt with Grass (Lush 14)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_2..")"}, + 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_grass_lush_15", { + description = readname .. " Dirt with Grass (Lush 15)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_3..")"}, + 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_grass_lush_16", { + description = readname .. " Dirt with Grass (Lush 16)", + tiles = {""..GRASS_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_4..")"}, + 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_grass_dry_01", { + description = readname .. " Dirt with Grass (Dry 01)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_1..")"}, + 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_grass_dry_02", { + description = readname .. " Dirt with Grass (Dry 02)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_2..")"}, + 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_grass_dry_03", { + description = readname .. " Dirt with Grass (Dry 03)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_3..")"}, + 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_grass_dry_04", { + description = readname .. " Dirt with Grass (Dry 04)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_4..")"}, + 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_grass_dry_05", { + description = readname .. " Dirt with Grass (Dry 05)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_1..")"}, + 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_grass_dry_06", { + description = readname .. " Dirt with Grass (Dry 06)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_2..")"}, + 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_grass_dry_07", { + description = readname .. " Dirt with Grass (Dry 07)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_3..")"}, + 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_grass_dry_08", { + description = readname .. " Dirt with Grass (Dry 08)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_4..")"}, + 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_grass_dry_09", { + description = readname .. " Dirt with Grass (Dry 09)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_1..")"}, + 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_grass_dry_10", { + description = readname .. " Dirt with Grass (Dry 10)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_2..")"}, + 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_grass_dry_11", { + description = readname .. " Dirt with Grass (Dry 11)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_3..")"}, + 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_grass_dry_12", { + description = readname .. " Dirt with Grass (Dry 12)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_4..")"}, + 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_grass_dry_13", { + description = readname .. " Dirt with Grass (Dry 13)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_1..")"}, + 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_grass_dry_14", { + description = readname .. " Dirt with Grass (Dry 14)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_2..")"}, + 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_grass_dry_15", { + description = readname .. " Dirt with Grass (Dry 15)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_3..")"}, + 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_grass_dry_16", { + description = readname .. " Dirt with Grass (Dry 16)", + tiles = {""..GRASS_DRY_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_DRY_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_4..")"}, + 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_grass_brown_01", { + description = readname .. " Dirt with Grass (Brown 01)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_1..")"}, + 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_grass_brown_02", { + description = readname .. " Dirt with Grass (Brown 02)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_2..")"}, + 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_grass_brown_03", { + description = readname .. " Dirt with Grass (Brown 03)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_3..")"}, + 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_grass_brown_04", { + description = readname .. " Dirt with Grass (Brown 04)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_WET_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_WET_PALETTE_4..")"}, + 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_grass_brown_05", { + description = readname .. " Dirt with Grass (Brown 05)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_1..")"}, + 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_grass_brown_06", { + description = readname .. " Dirt with Grass (Brown 06)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_2..")"}, + 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_grass_brown_07", { + description = readname .. " Dirt with Grass (Brown 07)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_3..")"}, + 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_grass_brown_08", { + description = readname .. " Dirt with Grass (Brown 08)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_LUSH_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_LUSH_PALETTE_4..")"}, + 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_grass_brown_09", { + description = readname .. " Dirt with Grass (Brown 09)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_1..")"}, + 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_grass_brown_10", { + description = readname .. " Dirt with Grass (Brown 10)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_2..")"}, + 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_grass_brown_11", { + description = readname .. " Dirt with Grass (Brown 11)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_3..")"}, + 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_grass_brown_12", { + description = readname .. " Dirt with Grass (Brown 12)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_DRY_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_DRY_PALETTE_4..")"}, + 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_grass_brown_13", { + description = readname .. " Dirt with Grass (Brown 13)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_1.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_1..")"}, + 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_grass_brown_14", { + description = readname .. " Dirt with Grass (Brown 14)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_2.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_2..")"}, + 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_grass_brown_15", { + description = readname .. " Dirt with Grass (Brown 15)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_3.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_3..")"}, + 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_grass_brown_16", { + description = readname .. " Dirt with Grass (Brown 16)", + tiles = {""..GRASS_BROWN_TEXTURE_TOP.."^[colorize:"..GRASS_BROWN_PALETTE_4.."", tilestr, tilestr .. "^("..GRASS_BROWN_TEXTURE_SIDE.."^[colorize:"..GRASS_BROWN_PALETTE_4..")"}, + 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},}), + }) + +end + + --register_dirts("Dirt_Coarse") + --register_dirts("Dirt_Dark") + --register_dirts("Dirt_Dry") + --register_dirts("Dirt_Mud_01") -local S = lib_materials.gettext diff --git a/type_fluids.lua b/type_fluids.lua new file mode 100644 index 0000000..ae951c7 --- /dev/null +++ b/type_fluids.lua @@ -0,0 +1,1403 @@ + +local S = lib_materials.intllib + + +--TO BE REVIEWED _MGS-20180220 +if minetest.get_modpath("default") then + + local waterflow = 3 + minetest.override_item("default:river_water_source", {liquid_range = waterflow}) + minetest.override_item("default:river_water_flowing", {liquid_range = waterflow}) + minetest.override_item("default:river_water_source", {is_ground_content = true}) + minetest.override_item("default:river_water_flowing", {is_ground_content = true}) + minetest.override_item("default:water_source", {is_ground_content = true}) + minetest.override_item("default:water_flowing", {is_ground_content = true}) + + if false then + minetest.override_item("default:river_water_source", {light_source = 14}) + minetest.override_item("default:river_water_flowing", {light_source = 14}) + minetest.override_item("default:water_source", {light_source = 14}) + minetest.override_item("default:water_flowing", {light_source = 14}) + end + + if false then + local newnode = lib_materials.clone_node("default:water_source") + newnode.description = "Water" + newnode.alpha = 0 + newnode.liquid_alternative_source = "lib_materials:water_source" + newnode.liquid_alternative_flowing = "lib_materials:water_flowing" + minetest.register_node("lib_materials:water_source", newnode) + + newnode = lib_materials.clone_node("default:water_flowing") + newnode.description = "Water" + newnode.alpha = 0 + newnode.liquid_alternative_source = "lib_materials:water_source" + newnode.liquid_alternative_flowing = "lib_materials:water_flowing" + minetest.register_node("lib_materials:water_flowing", newnode) + end + +end + +-- +-- Liquids +-- + +--Dev Liquid +minetest.register_node("lib_materials:fluid_liquid_source", { + description = S("Liquid Source"), + drawtype = "liquid", + tiles = { + { + name = "default_water_source_animated.png^[colorize:#1F1F1F:alpha", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.0, + }, + }, + }, + special_tiles = { + -- New-style lava source material (mostly unused) + { + name = "default_water_source_animated.png^[colorize:#1F1F1F:alpha", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.0, + }, + backface_culling = false, + }, + }, + paramtype = "light", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:fluid_liquid_flowing", + liquid_alternative_source = "lib_materials:fluid_liquid_source", + liquid_viscosity = 7, + liquid_renewable = false, + damage_per_second = 4 * 2, + post_effect_color = {a = 191, r = 255, g = 64, b = 0}, + groups = {liquid = 3, }, + sounds = lib_materials.node_sound_water_defaults(), +}) +minetest.register_node("lib_materials:fluid_liquid_flowing", { + description = S("Flowing Liquid"), + drawtype = "flowingliquid", + tiles = {"default_water.png^[colorize:#1F1F1F:alpha"}, + special_tiles = { + { + name = "default_water_flowing_animated.png^[colorize:#1F1F1F:alpha", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.3, + }, + }, + { + name = "default_water_flowing_animated.png^[colorize:#1F1F1F:alpha", + backface_culling = true, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.3, + }, + }, + }, + paramtype = "light", + paramtype2 = "flowingliquid", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:fluid_liquid_flowing", + liquid_alternative_source = "lib_materials:fluid_liquid_source", + liquid_viscosity = 7, + liquid_renewable = false, + damage_per_second = 4 * 2, + post_effect_color = {a = 191, r = 255, g = 64, b = 0}, + groups = {liquid = 3, not_in_creative_inventory = 1}, + 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"), + drawtype = "liquid", + tiles = { + { + name = "lib_materials_fluid_water_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.0, + }, + }, + }, + special_tiles = { + -- New-style lava source material (mostly unused) + { + name = "lib_materials_fluid_water_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.0, + }, + backface_culling = false, + }, + }, + paramtype = "light", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:fluid_water_flowing", + liquid_alternative_source = "lib_materials:fluid_water_source", + liquid_viscosity = 1, + post_effect_color = {a = 103, r = 30, g = 60, b = 90}, + groups = {water = 3, liquid = 3, cools_lava = 1, puts_out_fire = 1, }, + sounds = lib_materials.node_sound_water_defaults(), +}) +minetest.register_node("lib_materials:fluid_water_flowing", { + description = S("Flowing Water"), + drawtype = "flowingliquid", + tiles = {"lib_materials_fluid_water.png"}, + special_tiles = { + { + name = "lib_materials_fluid_water_flowing_animated.png", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.3, + }, + }, + { + name = "lib_materials_fluid_water_flowing_animated.png", + backface_culling = true, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.3, + }, + }, + }, + paramtype = "light", + paramtype2 = "flowingliquid", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:fluid_water_flowing", + liquid_alternative_source = "lib_materials:fluid_water_source", + liquid_viscosity = 1, + liquid_renewable = false, + post_effect_color = {a = 191, r = 255, g = 64, b = 0}, + 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", + tiles = { + { + name = "lib_materials_fluid_river_water_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.0, + }, + }, + }, + special_tiles = { + -- New-style lava source material (mostly unused) + { + name = "lib_materials_fluid_river_water_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.0, + }, + backface_culling = false, + }, + }, + paramtype = "light", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:fluid_water_river_flowing", + liquid_alternative_source = "lib_materials:fluid_water_river_source", + liquid_viscosity = 7, + liquid_renewable = false, + damage_per_second = 4 * 2, + post_effect_color = {a = 191, r = 255, g = 64, b = 0}, + groups = {water = 3, liquid = 2, cools_lava = 1, puts_out_fire = 1, }, + sounds = lib_materials.node_sound_water_defaults(), +}) +minetest.register_node("lib_materials:fluid_water_river_flowing", { + description = S("Flowing River Water"), + drawtype = "flowingliquid", + tiles = {"lib_materials_fluid_river_water.png"}, + special_tiles = { + { + name = "lib_materials_fluid_river_water_flowing_animated.png", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.3, + }, + }, + { + name = "lib_materials_fluid_river_water_flowing_animated.png", + backface_culling = true, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.3, + }, + }, + }, + paramtype = "light", + paramtype2 = "flowingliquid", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:fluid_water_river_flowing", + liquid_alternative_source = "lib_materials:fluid_water_river_source", + liquid_viscosity = 7, + liquid_renewable = false, + damage_per_second = 4 * 2, + post_effect_color = {a = 191, r = 255, g = 64, b = 0}, + groups = {water = 3, liquid = 2, 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_dirty_source", { + description = S("Dirty Water Source"), + drawtype = "liquid", + tiles = { + { + name = "lib_materials_fluid_water_dirty_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + }, + }, + special_tiles = { + { + name = "lib_materials_fluid_water_dirty_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + backface_culling = false, + }, + }, + alpha = 160, + paramtype = "light", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:fluid_water_dirty_flowing", + liquid_alternative_source = ",lib_materials:fluid_water_dirty_source", + liquid_viscosity = 2, + liquid_renewable = false, + liquid_range = 2, + post_effect_color = {a = 103, r = 30, g = 76, b = 90}, + groups = {water = 3, liquid = 3, cools_lava = 1, puts_out_fire = 1, }, + sounds = lib_materials.node_sound_water_defaults(), +}) +minetest.register_node("lib_materials:fluid_water_dirty_flowing", { + description = S("Flowing Dirty Water"), + drawtype = "flowingliquid", + tiles = {"lib_materials_fluid_water_dirty_source"}, + special_tiles = { + { + name = "lib_materials_fluid_water_dirty_flowing_animated.png", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + }, + { + name = "lib_materials_fluid_water_dirty_flowing_animated.png", + backface_culling = true, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + }, + }, + alpha = 160, + paramtype = "light", + paramtype2 = "flowingliquid", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:fluid_water_dirty_flowing", + liquid_alternative_source = "lib_materials:fluid_water_dirty_source", + liquid_viscosity = 1, + liquid_renewable = false, + liquid_range = 2, + post_effect_color = {a = 103, r = 30, g = 76, b = 90}, + 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", + tiles = { + { + name = "lib_materials_fluid_water_source_animated.png^[colorize:#1F1F00:alpha", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + }, + }, + special_tiles = { + -- New-style water source material (mostly unused) + { + name = "lib_materials_fluid_water_source_animated.png^[colorize:#1F1F00:alpha", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + backface_culling = false, + }, + }, + alpha = 160, + paramtype = "light", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:fluid_water_murky_flowing", + liquid_alternative_source = "lib_materials:fluid_water_murky_source", + liquid_viscosity = 1, + post_effect_color = {a = 103, r = 30, g = 60, b = 90}, + groups = {water = 3, liquid = 3, cools_lava = 1, puts_out_fire = 1, }, + sounds = lib_materials.node_sound_water_defaults(), +}) +minetest.register_node("lib_materials:fluid_water_murky_flowing", { + description = S("Murky Flowing Water"), + drawtype = "flowingliquid", + tiles = {"lib_materials_fluid_water.png^[colorize:#1F1F00:alpha"}, + special_tiles = { + { + name = "lib_materials_fluid_water_flowing_animated.png^[colorize:#1F1F00:alpha", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + { + name = "lib_materials_fluid_water_flowing_animated.png^[colorize:#1F1F00:alpha", + backface_culling = true, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + }, + alpha = 160, + paramtype = "light", + paramtype2 = "flowingliquid", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:fluid_water_murky_flowing", + liquid_alternative_source = "lib_materials:fluid_water_murky_source", + liquid_viscosity = 1, + post_effect_color = {a = 103, r = 30, g = 60, b = 90}, + 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_muddy_source", { + description = S("Muddy River Water Source"), + drawtype = "liquid", + tiles = { + { + name = "lib_materials_fluid_water_river_muddy_flowing.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + }, + }, + special_tiles = { + { + name = "lib_materials_fluid_water_river_muddy_flowing.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + backface_culling = false, + }, + }, + alpha = 160, + paramtype = "light", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:muddy_river_water_flowing", + liquid_alternative_source = "lib_materials:muddy_river_water_source", + liquid_viscosity = 1, + liquid_renewable = false, + liquid_range = 2, + post_effect_color = {a = 103, r = 30, g = 76, b = 90}, + groups = {water = 3, liquid = 3, cools_lava = 1, puts_out_fire = 1, }, + sounds = lib_materials.node_sound_water_defaults(), +}) +minetest.register_node("lib_materials:fluid_water_river_muddy_flowing", { + description = S("Muddy Flowing River Water"), + drawtype = "flowingliquid", + tiles = {"lib_materials_fluid_water_river_muddy_source.png"}, + special_tiles = { + { + name = "lib_materials_fluid_water_river_muddy_flowing.png", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + { + name = "lib_materials_fluid_water_river_muddy_flowing.png", + backface_culling = true, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + }, + alpha = 160, + paramtype = "light", + paramtype2 = "flowingliquid", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:muddy_river_water_flowing", + liquid_alternative_source = "lib_materials:muddy_river_water_source", + liquid_viscosity = 1, + liquid_renewable = false, + liquid_range = 2, + post_effect_color = {a = 103, r = 30, g = 76, b = 90}, + groups = {water = 3, liquid = 3, cools_lava = 1, puts_out_fire = 1, not_in_creative_inventory = 1, }, + sounds = lib_materials.node_sound_water_defaults(), +}) + + +--Quicksand as fluid. Will spread like lava +minetest.register_node("lib_materials:fluid_quicksand_source", { + description = S("Quicksand Source"), + drawtype = "liquid", + tiles = { + { + name = "lib_materials_fluid_quicksand_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.0, + }, + }, + }, + special_tiles = { + -- New-style lava source material (mostly unused) + { + name = "lib_materials_fluid_quicksand_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.0, + }, + backface_culling = false, + }, + }, + paramtype = "light", + light_source = default.LIGHT_MAX - 1, + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:fluid_quicksand_flowing", + liquid_alternative_source = "lib_materials:fluid_quicksand_source", + liquid_viscosity = 8, + liquid_renewable = false, + damage_per_second = 3, + post_effect_color = {a = 191, r = 255, g = 64, b = 0}, + groups = {quicksand = 3, liquid = 2}, +}) +minetest.register_node("lib_materials:fluid_quicksand_flowing", { + description = S("Flowing Quicksand"), + drawtype = "flowingliquid", + tiles = {"lib_materials_fluid_quicksand_source.png"}, + special_tiles = { + { + name = "lib_materials_fluid_quicksand_flowing_animated.png", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.3, + }, + }, + { + name = "lib_materials_fluid_quicksand_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 = default.LIGHT_MAX - 1, + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:fluid_quicksand_flowing", + liquid_alternative_source = "lib_materials:fluid_quicksand_source", + liquid_viscosity = 7, + liquid_renewable = false, + damage_per_second = 4, + post_effect_color = {a = 191, r = 255, g = 64, b = 0}, + groups = {quicksand = 3, liquid = 2, not_in_creative_inventory = 1}, +}) +-- Quicksand as node. Player will sink, slow, and take drowning damage. (new style, sinking inside shows yellow effect with or without noclip, but old quicksand is shown as black until block placed nearby to update light) +minetest.register_node("lib_materials:quicksand", { + description = S("Quicksand"), + tiles = {"default_sand.png"}, + drawtype = "glasslike", + paramtype = "light", + drop = "default:sand", + liquid_viscosity = 15, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:quicksand", + liquid_alternative_source = "lib_materials:quicksand", + liquid_renewable = false, + liquid_range = 0, + drowning = 1, + walkable = false, + climbable = false, + post_effect_color = {r = 230, g = 210, b = 160, a = 245}, + groups = {crumbly = 3, sand = 1, liquid = 3, disable_jump = 1}, + sounds = default.node_sound_sand_defaults(), +}) +-- craft quicksand +minetest.register_craft({ + output = "lib_materials:quicksand", + recipe = { + {"group:sand", "group:sand", "group:sand"}, + {"group:sand", "group:water_bucket", "group:sand"}, + {"group:sand", "group:sand", "group:sand"}, + }, + replacements = { + {"group:water_bucket", "bucket:bucket_empty"} + } +}) + + +--Mud as fluid. +minetest.register_node("lib_materials:fluid_mud_source", { + description = S("Mud Source"), + drawtype = "liquid", + tiles = { + { + name = "lib_materials_fluid_mud_flowing_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.0, + }, + }, + }, + special_tiles = { + -- New-style lava source material (mostly unused) + { + name = "lib_materials_fluid_mud_flowing_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.0, + }, + backface_culling = false, + }, + }, + paramtype = "light", + light_source = default.LIGHT_MAX - 1, + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:fluid_mud_flowing", + liquid_alternative_source = "lib_materials:fluid_mud_source", + liquid_viscosity = 8, + liquid_renewable = false, + damage_per_second = 3, + post_effect_color = {a = 191, r = 255, g = 64, b = 0}, + groups = {mud = 3, liquid = 2, disable_jump = 1}, +}) +minetest.register_node("lib_materials:fluid_mud_flowing", { + description = S("Flowing Mud"), + drawtype = "flowingliquid", + tiles = {"lib_materials_fluid_mud_source.png"}, + special_tiles = { + { + name = "lib_materials_fluid_mud_flowing_animated.png", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3.3, + }, + }, + { + name = "lib_materials_fluid_mud_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 = default.LIGHT_MAX - 1, + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:fluid_mud_flowing", + liquid_alternative_source = "lib_materials:fluid_mud_source", + liquid_viscosity = 7, + liquid_renewable = false, + damage_per_second = 4, + post_effect_color = {a = 191, r = 255, g = 64, b = 0}, + groups = {quicksand = 3, liquid = 2, disable_jump = 1, not_in_creative_inventory = 1}, +}) +-- Mud as node. Player will sink, slow, and take drowning damage. Mud for swamps +minetest.register_node("lib_materials:mud_wet", { + description = S("Mud Wet"), + tiles = {"lib_materials_dirt_mud_01.png"}, + liquid_viscosity = 8, + liquidtype = "source", + liquid_renewable = false, + liquid_alternative_source = "lib_materials:mud_wet", + liquid_alternative_flowing = "lib_materials:mud_wet", + liquid_range = 0, + post_effect_color = {r=115, g=61, b=31, a=255}, + drowning = 1, + walkable = false, + groups = {crumbly = 2}, + sounds = default.node_sound_dirt_defaults(), +}) + + +--Grease and Oil +minetest.register_node("lib_materials:fluid_grease_source", { + description = "Grease Source", + drawtype = "liquid", + tiles = { + { + name = "steampunk_grease_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + }, + }, + special_tiles = { + -- New-style water source material (mostly unused) + { + name = "steampunk_grease_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + backface_culling = false, + }, + }, + alpha = 160, + paramtype = "light", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:fluid_grease_flowing", + liquid_alternative_source = "lib_materials:fluid_grease_source", + liquid_viscosity = 1, + post_effect_color = {a = 103, r = 107, g = 53, b = 18}, + groups = {oil = 3, liquid = 1, flammable = 1}, + sounds = lib_materials.node_sound_water_defaults(), +}) +minetest.register_node("lib_materials:fluid_grease_flowing", { + description = "Flowing Grease", + drawtype = "flowingliquid", + tiles = {"lib_materials_fluid_grease_source.png"}, + special_tiles = { + { + name = "steampunk_grease_flowing_animated.png", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + { + name = "steampunk_grease_flowing_animated.png", + backface_culling = true, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + }, + alpha = 160, + paramtype = "light", + paramtype2 = "flowingliquid", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:fluid_grease_flowing", + liquid_alternative_source = "lib_materials:fluid_grease_source", + liquid_viscosity = 1, + post_effect_color = {a = 103, r = 45, g = 23, b = 7}, + groups = {oil = 3, liquid = 1, flammable = 1, not_in_creative_inventory = 1}, + sounds = lib_materials.node_sound_water_defaults(), +}) + +minetest.register_node("lib_materials:fluid_oil_source", { + description = "Oil Source", + drawtype = "liquid", + tiles = { + { + name = "lib_materials_fluid_oil_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + }, + }, + special_tiles = { + -- New-style water source material (mostly unused) + { + name = "lib_materials_fluid_oil_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + backface_culling = false, + }, + }, + alpha = 160, + paramtype = "light", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:fluid_oil_flowing", + liquid_alternative_source = "lib_materials:fluid_oil_source", + liquid_viscosity = 1, + post_effect_color = {a = 103, r = 45, g = 23, b = 7}, + groups = {oil = 3, liquid = 1, flammable = 1}, + sounds = lib_materials.node_sound_water_defaults(), +}) +minetest.register_node("lib_materials:fluid_oil_flowing", { + description = "Flowing Oil", + drawtype = "flowingliquid", + tiles = {"lib_materials_fluid_oil_source.png"}, + special_tiles = { + { + name = "lib_materials_fluid_oil_flowing_animated.png", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + { + name = "lib_materials_fluid_oil_flowing_animated.png", + backface_culling = true, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + }, + alpha = 160, + paramtype = "light", + paramtype2 = "flowingliquid", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:fluid_oil_flowing", + liquid_alternative_source = "lib_materials:fluid_oil_source", + liquid_viscosity = 1, + post_effect_color = {a = 150, r = 45, g = 23, b = 7}, + groups = {oil = 3, liquid = 1, flammable = 1, not_in_creative_inventory = 1}, + sounds = lib_materials.node_sound_water_defaults(), +}) + +minetest.register_craft({ + output = "lib_materials:fluid_grease_source", + recipe = { + {"default:coal_lump", "default:coal_lump", "default:coal_lump"}, + {"default:coal_lump", "bucket:bucket_water", "default:coal_lump"}, + {"default:coal_lump", "default:dirt", "default:coal_lump"} + } +}) +minetest.register_craft({ + output = "lib_materials:fluid_oil_source", + recipe = { + {"default:coal_lump", "default:coal_lump", "default:coal_lump"}, + {"default:coal_lump", "bucket:bucket_water", "default:coal_lump"}, + {"default:coal_lump", "default:coal_lump", "default:coal_lump"} + } +}) + +minetest.register_node("lib_materials:fluid_oil_02_source", { + description = "Oil 02 Source", + drawtype = "liquid", + tiles = { + { + name = "lib_materials_fluid_oil_02_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + }, + }, + special_tiles = { + -- New-style water source material (mostly unused) + { + name = "lib_materials_fluid_oil_02_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + backface_culling = false, + }, + }, + alpha = 160, + paramtype = "light", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:fluid_oil_02_flowing", + liquid_alternative_source = "lib_materials:fluid_oil_02_source", + liquid_viscosity = 1, + post_effect_color = {a = 103, r = 45, g = 23, b = 7}, + groups = {oil = 3, liquid = 1, flammable = 1}, + sounds = lib_materials.node_sound_water_defaults(), +}) +minetest.register_node("lib_materials:fluid_oil_02_flowing", { + description = "Flowing Oil 02", + drawtype = "flowingliquid", + tiles = {"lib_materials_fluid_oil_02_source.png"}, + special_tiles = { + { + name = "lib_materials_fluid_oil_02_flowing_animated.png", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + { + name = "lib_materials_fluid_oil_02_flowing_animated.png", + backface_culling = true, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + }, + alpha = 160, + paramtype = "light", + paramtype2 = "flowingliquid", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:fluid_oil_02_flowing", + liquid_alternative_source = "lib_materials:fluid_oil_02_source", + liquid_viscosity = 1, + post_effect_color = {a = 150, r = 45, g = 23, b = 7}, + groups = {oil = 3, liquid = 1, flammable = 1, not_in_creative_inventory = 1}, + sounds = lib_materials.node_sound_water_defaults(), +}) + +minetest.register_node("lib_materials:fluid_oil_03_source", { + description = "Oil 03 Source", + drawtype = "liquid", + tiles = { + { + name = "lib_materials_fluid_oil_03_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + }, + }, + special_tiles = { + -- New-style water source material (mostly unused) + { + name = "lib_materials_fluid_oil_03_source_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + backface_culling = false, + }, + }, + alpha = 160, + paramtype = "light", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "source", + liquid_alternative_flowing = "lib_materials:fluid_oil_03_flowing", + liquid_alternative_source = "lib_materials:fluid_oil_03_source", + liquid_viscosity = 1, + post_effect_color = {a = 103, r = 45, g = 23, b = 7}, + groups = {oil = 3, liquid = 1, flammable = 1}, + sounds = lib_materials.node_sound_water_defaults(), +}) +minetest.register_node("lib_materials:fluid_oil_03_flowing", { + description = "Flowing Oil 03", + drawtype = "flowingliquid", + tiles = {"lib_materials_fluid_oil_03_source.png"}, + special_tiles = { + { + name = "lib_materials_fluid_oil_03_flowing_animated.png", + backface_culling = false, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + { + name = "lib_materials_fluid_oil_03_flowing_animated.png", + backface_culling = true, + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 0.8, + }, + }, + }, + alpha = 160, + paramtype = "light", + paramtype2 = "flowingliquid", + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + drop = "", + drowning = 1, + liquidtype = "flowing", + liquid_alternative_flowing = "lib_materials:fluid_oil_03_flowing", + liquid_alternative_source = "lib_materials:fluid_oil_03_source", + liquid_viscosity = 1, + post_effect_color = {a = 150, r = 45, g = 23, b = 7}, + groups = {oil = 3, liquid = 1, flammable = 1, not_in_creative_inventory = 1}, + sounds = lib_materials.node_sound_water_defaults(), +}) + + + + + + + + + + + + + + + + + + + + + + + diff --git a/type_glass.lua b/type_glass.lua new file mode 100644 index 0000000..9f96815 --- /dev/null +++ b/type_glass.lua @@ -0,0 +1,168 @@ + + +local S = lib_materials.intllib + + +--GLASS +--[[ +minetest.register_node("lib_materials:glass_clean", { + description = S("Glass - Clean"), + tiles = {"moreblocks_clean_glass.png"}, + drawtype = "glasslike_framed", + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + drop = 'lib_materials:clean_glass', + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:glass_coal", { + description = S("Glass - Coal"), + tiles = {"moreblocks_coal_glass.png"}, + drawtype = "glasslike_framed", + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + drop = 'lib_materials:coal_glass', + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:glass_iron", { + description = S("Glass - Iron"), + tiles = {"moreblocks_iron_glass.png"}, + drawtype = "glasslike_framed", + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + drop = 'lib_materials:iron_glass', + sounds = default.node_sound_glass_defaults(), +}) +--]] + + +minetest.register_node("lib_materials:glass_framed_diamond", { + description = S("Glass - Framed Diamond"), + drawtype = "glasslike_framed", + tiles = {"lib_materials_frame_diamond.png"}, + use_texture_alpha = true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:glass_framed_round", { + description = S("Glass - Framed Round"), + drawtype = "glasslike_framed", + tiles = {"lib_materials_frame_round.png"}, + use_texture_alpha = true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:glass_framed_square", { + description = S("Glass - Framed Square"), + drawtype = "glasslike_framed", + tiles = {"lib_materials_frame_square.png"}, + use_texture_alpha = true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:glass_framed_steel_01", { + description = S("Glass - Framed Steel 01"), + drawtype = "glasslike_framed", + tiles = {"lib_materials_frame_steel_01_nbea.png"}, + use_texture_alpha = true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:glass_framed_steel_02", { + description = S("Glass - Framed Steel 02"), + drawtype = "glasslike_framed", + tiles = {"lib_materials_frame_steel_02_nbea.png"}, + use_texture_alpha = true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:glass_framed_wood_01", { + description = S("Glass - Framed Wood 01"), + drawtype = "glasslike_framed", + tiles = {"lib_materials_frame_wood_01_nbea.png"}, + use_texture_alpha = true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:glass_framed_wood_02", { + description = S("Glass - Framed Wood 02"), + drawtype = "glasslike_framed", + tiles = {"lib_materials_frame_wood_02_nbea.png"}, + use_texture_alpha = true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:glass_framed_wood_03", { + description = S("Glass - Framed Wood 03"), + drawtype = "glasslike_framed", + tiles = {"lib_materials_frame_wood_darkage.png"}, + use_texture_alpha = true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:frame_wood_rose", { + description = S("Frame - Wood Rose"), + drawtype = "glasslike_framed", + tiles = {"lib_materials_frame_wood_medieval_rose.png"}, + use_texture_alpha = true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:frame_wood_screen", { + description = S("Frame - Wood Screen"), + drawtype = "glasslike_framed", + tiles = {"lib_materials_frame_wood_xdecor.png"}, + use_texture_alpha = true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:glass_stained", { + description = S("Glass - Stained"), + drawtype = "glasslike_framed", + tiles = {"lib_materials_glass_stained_nbea.png"}, + use_texture_alpha = true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy = 2, cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), +}) + + + + + + diff --git a/type_ice_snow.lua b/type_ice_snow.lua new file mode 100644 index 0000000..745e2ea --- /dev/null +++ b/type_ice_snow.lua @@ -0,0 +1,134 @@ + + + +local S = lib_materials.intllib + + + +-- Snow +minetest.register_node("lib_materials:snow_brick", { + description = S("Snow Brick"), + tiles = {"lib_materials_snow_brick.png"}, + paramtype = "light", + freezemelt = "default:water_source", + is_ground_content = false, + groups = {crumbly = 3, puts_out_fire = 1, cools_lava = 1}, + sounds = default.node_sound_dirt_defaults({ + footstep = {name = "default_snow_footstep", gain = 0.15}, + dug = {name = "default_snow_footstep", gain = 0.2}, + dig = {name = "default_snow_footstep", gain = 0.2}, + }), +}) + +minetest.register_craft({ + output = 'lib_materials:snow_brick 4', + recipe = { + {'lib_materials:snow_block', 'lib_materials:snow_block'}, + {'lib_materials:snow_block', 'lib_materials:snow_block'}, + } +}) + +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", + paramtype = "light", + buildable_to = true, + floodable = true, + drawtype = "nodebox", + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, -0.25, 0.5}, + }, + }, + collision_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, -7 / 16, 0.5}, + }, + }, + groups = {crumbly = 3, falling_node = 1, snowy = 1}, + sounds = default.node_sound_snow_defaults(), + + 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 = "lib_materials:dirt_with_snow"}) + --end + end, +}) + +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({ + footstep = {name = "default_snow_footstep", gain = 0.15}, + dug = {name = "default_snow_footstep", gain = 0.2}, + dig = {name = "default_snow_footstep", gain = 0.2} + }), + + 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 + end, +}) + +-- Ice +minetest.register_node("lib_materials:ice", { + description = "Ice", + tiles = {"lib_materials_ice.png"}, + is_ground_content = false, + paramtype = "light", + groups = {cracky = 3, puts_out_fire = 1, cools_lava = 1}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:ice_2", { + description = "Ice 2", + tiles = {"lib_materials_ice2.png"}, + is_ground_content = false, + paramtype = "light", + groups = {cracky = 3, puts_out_fire = 1, cools_lava = 1}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:ice_block", { + description = "Ice - Block", + tiles = {"lib_materials_ice_block.png"}, + is_ground_content = false, + paramtype = "light", + groups = {cracky = 3, puts_out_fire = 1, cools_lava = 1}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("lib_materials:ice_brick", { + description = S("Ice Brick"), + tiles = {"lib_materials_ice_brick.png"}, + paramtype = "light", + freezemelt = "default:water_source", + is_ground_content = false, + groups = {cracky = 3, puts_out_fire = 1, cools_lava = 1}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_craft({ + output = 'lib_materials:ice_brick 4', + recipe = { + {'lib_materials:ice_default', 'lib_materials:ice_default'}, + {'lib_materials:ice_default', 'lib_materials:ice_default'}, + } +}) + +minetest.register_node("lib_materials:ice_thin", { + description = "Ice - Thin", + tiles = {"lib_materials_ice_thin.png"}, + is_ground_content = false, + paramtype = "light", + groups = {cracky = 3, puts_out_fire = 1, cools_lava = 1}, + sounds = default.node_sound_glass_defaults(), +}) diff --git a/type_ore.lua b/type_ore.lua index 5e90c5b..689d0e9 100644 --- a/type_ore.lua +++ b/type_ore.lua @@ -1,155 +1,603 @@ -local S = lib_materials.gettext +local S = lib_materials.intllib +--Metals + minetest.register_node("lib_materials:metal_brass_block", { + description = S("Metal - Brass Block"), + tiles = { "lib_materials_metal_brass_block.png" }, + is_ground_content = true, + groups = {cracky=1, level=2}, + sounds = default.node_sound_metal_defaults() + }) + minetest.register_node("lib_materials:metal_bronze_block", { + description = S("Metal - Bronze Block"), + tiles = {"lib_materials_metal_bronze_block.png"}, + is_ground_content = false, + groups = {cracky = 1, level = 2}, + sounds = default.node_sound_metal_defaults(), + }) + minetest.register_node("lib_materials:metal_copper_block", { + description = S("Metal - Copper Block"), + tiles = {"lib_materials_metal_copper_block.png"}, + is_ground_content = false, + groups = {cracky = 1, level = 2}, + sounds = default.node_sound_metal_defaults(), + }) + minetest.register_node("lib_materials:metal_gold_block", { + description = S("Metal - Gold Block"), + tiles = {"lib_materials_metal_gold_block.png"}, + is_ground_content = false, + groups = {cracky = 1}, + sounds = default.node_sound_metal_defaults(), + }) + minetest.register_node("lib_materials:metal_iron_cast_block", { + description = S("Metal - Cast Iron Block"), + tiles = { "lib_materials_metal_iron_cast_block.png" }, + is_ground_content = true, + groups = {cracky=1, level=2}, + sounds = default.node_sound_metal_defaults() + }) + minetest.register_node("lib_materials:metal_iron_wrought_block", { + description = S("Metal - Wrought Iron Block"), + tiles = { "lib_materials_metal_iron_wrought_block.png" }, + is_ground_content = true, + groups = {cracky=1, level=2}, + sounds = default.node_sound_metal_defaults() + }) + minetest.register_node("lib_materials:metal_lead_block", { + description = S("Metal - Lead Block"), + tiles = { "lib_materials_metal_lead_block.png" }, + is_ground_content = true, + groups = {cracky=1, level=2}, + sounds = default.node_sound_metal_defaults() + }) + minetest.register_node("lib_materials:metal_rusty", { + description = S("Metal - Rusty"), + tiles = {"lib_materials_metal_rusty.png"}, + is_ground_content = false, + groups = {cracky=1,level=2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:metal_rusty_block", { + description = S("Metal - Rusty Block"), + tiles = {"lib_materials_metal_rusty_block.png"}, + is_ground_content = true, + groups = {cracky=1,level=2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:metal_silver_block", { + description = S("Metal - Silver Block"), + tiles = { "lib_materials_metal_silver_block.png" }, + is_ground_content = true, + groups = {cracky=1, level=2}, + sounds = default.node_sound_metal_defaults() + }) + minetest.register_node("lib_materials:metal_steel_block", { + description = S("Metal - Steel Block"), + tiles = {"lib_materials_metal_steel_block.png"}, + is_ground_content = false, + groups = {cracky = 1, level = 2}, + sounds = default.node_sound_metal_defaults(), + }) + minetest.register_node("lib_materials:metal_steel_carbon_block", { + description = S("Metal - Carbon Steel Block"), + tiles = { "lib_materials_metal_steel_carbon_block.png" }, + is_ground_content = true, + groups = {cracky=1, level=2}, + sounds = default.node_sound_metal_defaults() + }) + minetest.register_node("lib_materials:metal_steel_stainless_block", { + description = S("Metal - Stainless Steel Block"), + tiles = { "lib_materials_metal_steel_stainless_block.png" }, + is_ground_content = true, + groups = {cracky=1, level=2}, + sounds = default.node_sound_metal_defaults() + }) + minetest.register_node("lib_materials:metal_tin_block", { + description = S("Metal - Tin Block"), + tiles = {"lib_materials_metal_tin_block.png"}, + is_ground_content = false, + groups = {cracky = 1, level = 2}, + sounds = default.node_sound_metal_defaults(), + }) + + minetest.register_craftitem("lib_materials:metal_brass_ingot", { + description = S("Metal - Brass Ingot"), + inventory_image = "lib_materials_metal_brass_ingot.png", + }) + minetest.register_craftitem("lib_materials:metal_bronze_ingot", { + description = S("Metal - Bronze Ingot"), + inventory_image = "lib_materials_metal_bronze_ingot.png", + }) + minetest.register_craftitem("lib_materials:metal_copper_ingot", { + description = S("Metal - Copper Ingot"), + inventory_image = "lib_materials_metal_copper_ingot.png", + }) + minetest.register_craftitem("lib_materials:metal_copper_lump", { + description = S("Metal - Copper Lump"), + inventory_image = "lib_materials_metal_copper_lump.png", + }) + minetest.register_craftitem("lib_materials:metal_gold_ingot", { + description = S("Metal - Gold Ingot"), + inventory_image = "lib_materials_metal_gold_ingot.png" + }) + minetest.register_craftitem("lib_materials:metal_gold_lump", { + description = S("Metal - Gold Lump"), + inventory_image = "lib_materials_metal_gold_lump.png", + }) + minetest.register_craftitem("lib_materials:metal_iron_lump", { + description = S("Metal - Iron Lump"), + inventory_image = "lib_materials_metal_iron_lump.png", + }) + minetest.register_craftitem("lib_materials:metal_iron_cast_ingot", { + description = S("Metal - Cast Iron Ingot"), + inventory_image = "lib_materials_metal_iron_cast_ingot.png", + }) + minetest.register_craftitem("lib_materials:metal_iron_wrought_ingot", { + description = S("Metal - Wrought Iron Ingot"), + inventory_image = "lib_materials_metal_iron_wrought_ingot.png", + }) + minetest.register_craftitem("lib_materials:metal_lead_lump", { + description = S("Metal - Lead Lump"), + inventory_image = "lib_materials_metal_lead_lump.png", + }) + minetest.register_craftitem("lib_materials:metal_lead_ingot", { + description = S("Metal - Lead Ingot"), + inventory_image = "lib_materials_metal_lead_ingot.png", + }) + minetest.register_craftitem("lib_materials:metal_silver_lump", { + description = S("Metal - Silver Lump"), + inventory_image = "lib_materials_metal_silver_lump.png", + }) + minetest.register_craftitem("lib_materials:metal_silver_ingot", { + description = S("Metal - Silver Ingot"), + inventory_image = "lib_materials_metal_silver_ingot.png", + }) + minetest.register_craftitem("lib_materials:metal_steel_ingot", { + description = S("Metal - Steel Ingot"), + inventory_image = "lib_materials_metal_steel_ingot.png", + }) + minetest.register_craftitem("lib_materials:metal_steel_carbon_ingot", { + description = S("Metal - Carbon Steel Ingot"), + inventory_image = "lib_materials_metal_steel_carbon_ingot.png", + }) + minetest.register_craftitem("lib_materials:metal_steel_stainless_ingot", { + description = S("Metal - Stainless Steel Ingot"), + inventory_image = "lib_materials_metal_steel_stainless_ingot.png", + }) + minetest.register_craftitem("lib_materials:metal_tin_ingot", { + description = S("Metal - Tin Ingot"), + inventory_image = "lib_materials_metal_tin_ingot.png", + }) + minetest.register_craftitem("lib_materials:metal_tin_lump", { + description = S("Metal - Tin Lump"), + inventory_image = "lib_materials_metal_tin_lump.png", + }) + + minetest.register_craft({ + output = 'lib_materials:rusty 8', + recipe = { + {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"}, + {"default:steel_ingot", "default:water_source", "default:steel_ingot"}, + {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"}, + }, + }) + minetest.register_craft({ + output = 'lib_materials:rusty_block 8', + recipe = { + {"lib_materials:metal_steel_block", "lib_materials:metal_steel_block", "lib_materials:metal_steel_block"}, + {"lib_materials:metal_steel_block", "default:water_source", "lib_materials:metal_steel_block"}, + {"lib_materials:metal_steel_block", "lib_materials:metal_steel_block", "lib_materials:metal_steel_block"}, + }, + --replacements = {{"columnia:blueprint", "columnia:blueprint"}}, + }) + minetest.register_craft({ + type = 'cooking', + recipe = "lib_materials:metal_lead_lump", + output = "lib_materials:metal_lead_ingot", + }) + minetest.register_craft({ + type = 'cooking', + recipe = "lib_materials:metal_silver_lump", + output = "lib_materials:metal_silver_ingot", + }) + minetest.register_craft({ + type = 'cooking', + recipe = "lib_materials:metal_iron_wrought_ingot", + output = "lib_materials:metal_iron_cast_ingot", + }) + minetest.register_craft({ + type = 'cooking', + recipe = "lib_materials:metal_iron_cast_ingot", + cooktime = 2, + output = "lib_materials:metal_steel_carbon_ingot", + }) + minetest.register_craft({ + type = 'cooking', + recipe = "lib_materials:metal_steel_carbon_ingot", + cooktime = 2, + output = "lib_materials:metal_iron_wrought_ingot", + }) + local function register_block(block, ingot) + minetest.register_craft({ + output = block, + recipe = { + {ingot, ingot, ingot}, + {ingot, ingot, ingot}, + {ingot, ingot, ingot}, + } + }) + + minetest.register_craft({ + output = ingot.." 9", + recipe = { + {block} + } + }) + end + register_block("lib_materials:metal_brass_block", "lib_materials:metal_brass_ingot") + register_block("lib_materials:metal_lead_block", "lib_materials:metal_lead_ingot") + register_block("lib_materials:metal_silver_block", "lib_materials:metal_silver_ingot") + register_block("lib_materials:metal_iron_wrought_block", "lib_materials:metal_iron_wrought_ingot") + register_block("lib_materials:metal_iron_cast_block", "lib_materials:metal_iron_cast_ingot") + register_block("lib_materials:metal_steel_carbon_block", "lib_materials:metal_steel_carbon_ingot") + register_block("lib_materials:metal_steel_stainless_block", "lib_materials:metal_steel_stainless_ingot") + +--Minerals + minetest.register_node("lib_materials:mineral_coal_block", { + description = S("Mineral - Coal Block"), + tiles = {"lib_materials_mineral_coal_block.png"}, + is_ground_content = false, + groups = {cracky = 3}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:mineral_diamond_block", { + description = S("Mineral - Diamond Block"), + tiles = {"lib_materials_mineral_diamond_block.png"}, + is_ground_content = false, + groups = {cracky = 1, level = 3}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:mineral_mese_block", { + description = S("Mineral - Mese Block"), + tiles = {"lib_materials_mineral_mese_block.png"}, + paramtype = "light", + groups = {cracky = 1, level = 2}, + sounds = default.node_sound_stone_defaults(), + light_source = 3, + }) + minetest.register_node("lib_materials:mineral_quartz_block", { + description = S("Mineral - Quartz Block"), + tiles = {"lib_materials_mineral_quartz_block_top.png", "lib_materials_mineral_quartz_block_bottom.png", "lib_materials_mineral_quartz_block_side.png"}, + groups = {snappy=1,bendy=2,cracky=1,level=2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:mineral_quartz_chiseled", { + description = S("Mineral - Chiseled Quartz"), + tiles = {"lib_materials_mineral_quartz_chiseled_top.png", "lib_materials_mineral_quartz_chiseled_top.png", "lib_materials_mineral_quartz_chiseled_side.png"}, + groups = {snappy=1,bendy=2,cracky=1,level=2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:mineral_quartz_pillar", { + description = S("Mineral - Quartz Pillar"), + tiles = {"lib_materials_mineral_quartz_pillar_top.png", "lib_materials_mineral_quartz_pillar_top.png", "lib_materials_mineral_quartz_pillar_side.png"}, + groups = {snappy=1,bendy=2,cracky=1,level=2}, + sounds = default.node_sound_stone_defaults(), + on_place = minetest.rotate_node, + paramtype2 = "facedir" + }) + + minetest.register_craftitem("lib_materials:mineral_coal_lump", { + description = S("Mineral - Coal Lump"), + inventory_image = "lib_materials_mineral_coal_lump.png", + groups = {coal = 1, flammable = 1} + }) + minetest.register_craftitem("lib_materials:mineral_diamond", { + description = S("Mineral - Diamond"), + inventory_image = "lib_materials_mineral_diamond.png", + }) + minetest.register_craftitem("lib_materials:mineral_flint", { + description = S("Mineral - Flint"), + inventory_image = "lib_materials_mineral_flint.png" + }) + minetest.register_craftitem("lib_materials:mineral_mese_crystal", { + description = S("Mineral - Mese Crystal"), + inventory_image = "lib_materials_mineral_mese_crystal.png", + }) + minetest.register_craftitem("lib_materials:mineral_mese_crystal_fragment", { + description = S("Mineral - Mese Crystal Fragment"), + inventory_image = "lib_materials_mineral_mese_crystal_fragment.png", + }) + minetest.register_craftitem("lib_materials:mineral_obsidian_shard", { + description = S("Mineral - Obsidian Shard"), + inventory_image = "lib_materials_mineral_obsidian_shard.png", + }) + minetest.register_craftitem("lib_materials:mineral_quartz_crystal", { + description = S("Mineral - Quartz Crystal"), + inventory_image = "lib_materials_mineral_quartz_crystal_full.png", + }) + + minetest.register_craft({ + output = 'lib_materials:mineral_quartz_block', + recipe = { + {'lib_materials:mineral_quartz_crystal', 'lib_materials:mineral_quartz_crystal'}, + {'lib_materials:mineral_quartz_crystal', 'lib_materials:mineral_quartz_crystal'}, + } + }) + minetest.register_craft({ + output = 'lib_materials:mineral_quartz_chiseled 2', + recipe = { + {'stairs:slab_quartzblock'}, + {'stairs:slab_quartzblock'}, + } + }) + minetest.register_craft({ + output = 'lib_materials:mineral_quartz_pillar 2', + recipe = { + {'lib_materials:mineral_quartz_block'}, + {'lib_materials:mineral_quartz_block'}, + } + }) + minetest.register_craft({ + output = 'lib_materials:mineral_quartz_pillar 2', + recipe = { + {'lib_materials:pillar_horizontal'}, + {'lib_materials:pillar_horizontal'}, + } + }) + --[[-- stairs.register_stair_and_slab("quartzblock", "lib_materials:mineral_quartz_block", + -- {snappy=1,bendy=2,cracky=1,level=2}, + -- {"quartz_block_top.png", "quartz_block_bottom.png", "quartz_block_side.png"}, + -- "Quartz stair", + -- "Quartz slab", + -- default.node_sound_stone_defaults() + -- ) + --]] + --[[-- stairs.register_slab("quartzstair", "lib_materials:mineral_quartz_pillar", + -- {snappy=1,bendy=2,cracky=1,level=2}, + -- {"quartz_pillar_top.png", "quartz_pillar_top.png", "quartz_pillar_side.png"}, + -- "Quartz Pillar stair", + -- "Quartz Pillar slab", + -- default.node_sound_stone_defaults() + -- ) + --]] + +--Ores + minetest.register_node("lib_materials:ore_stone_with_coal", { + description = S("Ore - Stone with Coal"), + tiles = {"lib_materials_stone_default.png^lib_materials_ore_coal.png"}, + groups = {cracky = 3}, + drop = 'default:coal_lump', + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:ore_stone_with_copper", { + description = S("Ore - Stone with Copper"), + tiles = {"lib_materials_stone_default.png^lib_materials_ore_copper.png"}, + groups = {cracky = 2}, + drop = 'default:copper_lump', + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:ore_stone_with_diamond", { + description = S("Ore - Stone with Diamond"), + tiles = {"lib_materials_stone_default.png^lib_materials_ore_diamond.png"}, + groups = {cracky = 1}, + drop = "default:diamond", + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:ore_stone_with_gold", { + description = S("Ore - Stone with Gold"), + tiles = {"lib_materials_stone_default.png^lib_materials_ore_gold.png"}, + groups = {cracky = 2}, + drop = "default:gold_lump", + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:ore_stone_with_iron", { + description = S("Ore - Stone with Iron"), + tiles = {"lib_materials_stone_default.png^lib_materials_ore_iron.png"}, + groups = {cracky = 2}, + drop = 'default:iron_lump', + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:ore_stone_desert_with_iron", { + description = S("Ore - Stone Desert Iron Ore"), + tiles = {"lib_materials_stone_desert_default.png^lib_materials_ore_iron.png"}, + is_ground_content = true, + groups = {cracky=3, not_cuttable=1}, + drop = 'default:iron_lump', + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:ore_stone_with_lead", { + description = S("Ore - Stone with Lead"), + tiles = { "lib_materials_stone_default.png^lib_materials_ore_lead.png" }, + is_ground_content = true, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), + drop = "lib_materials:lead_lump", + }) + minetest.register_node("lib_materials:ore_stone_with_mese", { + description = S("Ore - Stone with Mese"), + tiles = {"lib_materials_stone_default.png^lib_materials_ore_mese.png"}, + groups = {cracky = 1}, + drop = "default:mese_crystal", + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:ore_stone_with_quartz", { + description = S("Ore - Stone with Quartz"), + tiles = {"lib_materials_stone_default.png^lib_materials_ore_quartz.png"}, + groups = {cracky=3, stone=1}, + drop = 'lib_materials:quartz_crystal', + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:ore_stone_with_silver", { + description = S("Ore - Stone with Silver"), + tiles = { "lib_materials_stone_default.png^lib_materials_ore_silver.png" }, + is_ground_content = true, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), + drop = "lib_materials:lead_lump", + }) + minetest.register_node("lib_materials:ore_stone_with_tin", { + description = S("Ore - Stone with Tin"), + tiles = {"lib_materials_stone_default.png^lib_materials_ore_tin.png"}, + groups = {cracky = 2}, + drop = "default:tin_lump", + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:ore_stone_mudstone_with_coal_lignite", { + description = S("Ore - Stone Mudstone with Lignite Coal"), + tiles = {"lib_materials_stone_mudstone.png^lib_materials_ore_coal_lignite.png" }, + is_ground_content = true, + groups = {crumbly=3}, + }) + minetest.register_node("lib_materials:ore_stone_mudstone_with_coal_black", { + description = S("Ore - Stone Mudstone with Black Coal"), + tiles = {"lib_materials_stone_mudstone.png^lib_materials_ore_coal.png" }, + is_ground_content = true, + groups = {crumbly=3}, + }) + minetest.register_node("lib_materials:ore_stone_mudstone_with_coal_anthracite", { + description = S("Ore - Stone Mudstone with Anthracite Coal"), + tiles = {"lib_materials_stone_mudstone.png^lib_materials_ore_coal_anthracite.png" }, + is_ground_content = true, + groups = {crumbly=3}, + }) + minetest.register_node( "lib_materials:ore_stone_pegmatite_with_cassiterite", { + description = S("Ore - Stone Pegmatite with Cassiterite"), + tiles = { "lib_materials_stone_pegmatite.png^lib_materials_ore_cassiterite.png" }, + groups = {cracky=3}, + is_ground_content = true, sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node( "lib_materials:ore_stone_skarn_with_chalcopyrite", { + description = S("Ore - Stone Skarn with Chalcopyrite"), + tiles = { "lib_materials_stone_skarn.png^lib_materials_ore_chalcopyrite.png" }, + groups = {cracky=3}, + is_ground_content = true, sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node( "lib_materials:ore_stone_skarn_with_galena", { + description = S("Ore - Stone Skarn with Galena"), + tiles = { "lib_materials_stone_skarn.png^lib_materials_ore_galena.png" }, + groups = {cracky=3}, + is_ground_content = true, sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node( "lib_materials:ore_stone_skarn_with_magnesite", { + description = S("Ore - Stone Skarn with Magnesite"), + tiles = { "lib_materials_stone_skarn.png^lib_materials_ore_magnesite.png" }, + groups = {cracky=3}, + is_ground_content = true, sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node( "lib_materials:ore_stone_skarn_with_magnetite", { + description = S("Ore - Stone Skarn with Magnetite"), + tiles = { "lib_materials_stone_skarn.png^lib_materials_ore_magnetite.png" }, + groups = {cracky=3}, + is_ground_content = true, sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node( "lib_materials:ore_stone_skarn_with_malachyte", { + description = S("Ore - Stone Skarn with Malachyte"), + tiles = { "lib_materials_stone_skarn.png^lib_materials_ore_chalcopyrite.png" }, + groups = {cracky=3}, + is_ground_content = true, sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node( "lib_materials:ore_stone_skarn_with_sphalerite", { + description = S("Ore - Stone Skarn with Sphalerite"), + tiles = { "lib_materials_stone_skarn.png^lib_materials_ore_sphalerite.png" }, + groups = {cracky=3}, + is_ground_content = true, sounds = default.node_sound_stone_defaults(), + }) + +-- Columnia Rusty_Block +--[[--MINERALS +-- +-- Skarn deposit +---- ~ Tomas Brod + +-- Chalcopyrite +-- minetest.register_node( "lib_materials:ore_stone_skarn_with_chalcopyrite", { + -- description = S("Ore - Stone Skarn with Chalcopyrite"), + -- tiles = { "lib_materials_stone_skarn.png^mineral_Chalcopyrite.png" }, + -- groups = {cracky=3}, + -- is_ground_content = true, sounds = default.node_sound_stone_defaults(), +-- }) +-- -- Malachyte +-- minetest.register_node( "lib_materials:ore_stone_skarn_with_malachyte", { + -- description = S("Ore - Stone Skarn with Malachyte"), + -- tiles = { "lib_materials_stone_skarn.png^mineral_Chalcopyrite.png" }, + -- groups = {cracky=3}, + -- is_ground_content = true, sounds = default.node_sound_stone_defaults(), +-- }) +-- -- Sphalerite +-- minetest.register_node( "lib_materials:ore_stone_skarn_with_sphalerite", { + -- description = S("Ore - Stone Skarn with Sphalerite"), + -- tiles = { "lib_materials_stone_skarn.png^mineral_sphalerite.png" }, + -- groups = {cracky=3}, + -- is_ground_content = true, sounds = default.node_sound_stone_defaults(), +-- }) +-- -- Galena +-- minetest.register_node( "lib_materials:ore_stone_skarn_with_galena", { + -- description = S("Ore - Stone Skarn with Galena"), + -- tiles = { "lib_materials_stone_skarn.png^mineral_galena.png" }, + -- groups = {cracky=3}, + -- is_ground_content = true, sounds = default.node_sound_stone_defaults(), +-- }) +-- -- Magnetite +-- minetest.register_node( "lib_materials:ore_stone_skarn_with_magnetite", { + -- description = S("Ore - Stone Skarn with Magnetite"), + -- tiles = { "lib_materials_stone_skarn.png^mineral_Magnetite.png" }, + -- groups = {cracky=3}, + -- is_ground_content = true, sounds = default.node_sound_stone_defaults(), +-- }) +-- -- Magnesite +-- minetest.register_node( "lib_materials:ore_stone_skarn_with_magnesite", { + -- description = S("Ore - Stone Skarn with Magnesite"), + -- tiles = { "lib_materials_stone_skarn.png^mineral_Magnesite.png" }, + -- groups = {cracky=3}, + -- is_ground_content = true, sounds = default.node_sound_stone_defaults(), +-- }) +-- -- Vermiculite (fixme: move to CommonRocks) +-- minetest.register_node( "lib_materials:mineral_vermiculite", { + -- description = S("Mineral - Vermiculite"), + -- tiles = { "mineral_Vermiculite.png" }, + -- groups = {crumbly=3}, + -- is_ground_content = true, sounds = default.node_sound_stone_defaults(), +-- }) + +-- +-- Pegmatite deposit +-- +-- Cassiterite +-- minetest.register_node( "lib_materials:ore_stone_pegmatite_with_cassiterite", { + -- description = S("Ore - Stone Pegmatite with Cassiterite"), + -- tiles = { "lib_materials_stone_pegmatite.png^mineral_cassiterite.png" }, + -- groups = {cracky=3}, + -- is_ground_content = true, sounds = default.node_sound_stone_defaults(), +-- }) + + +-- minetest.register_node("lib_materials:ore_stone_mudstone_with_coal_lignite", { + -- description = S("Ore - Stone Mudstone with Lignite Coal"), + -- tiles = {"lib_materials_stone_mudstone.png^rocks_lignite.png" }, + -- is_ground_content = true, + -- groups = {crumbly=3}, +-- }) +-- minetest.register_node("lib_materials:ore_stone_mudstone_with_coal_black", { + -- description = S("Ore - Stone Mudstone with Black Coal"), + -- tiles = {"lib_materials_stone_mudstone.png^default_mineral_coal.png" }, + -- is_ground_content = true, + -- groups = {crumbly=3}, +-- }) +-- minetest.register_node("lib_materials:ore_stone_mudstone_with_coal_anthracite", { + -- description = S("Ore - Stone Mudstone with Anthracite Coal"), + -- tiles = {"lib_materials_stone_mudstone.png^rocks_anthracite.png" }, + -- is_ground_content = true, + -- groups = {crumbly=3}, +-- }) +--]] +--Quartz, --Quartz Crystal, --Ore, --Quartz Block, --Chiseled Quartz, --Quartz Pillar +--Crafting, --Quartz Block, --Chiseled Quartz, --Quartz Pillar, --Stairs & Slabs --Add Technic granite, marble, and ore node definitions and craftitems -minetest.register_node("lib_materials:brass_block", { - description = S("Brass Block"), - tiles = { "technic_brass_block.png" }, - is_ground_content = true, - groups = {cracky=1, level=2}, - sounds = default.node_sound_stone_defaults() -}) - -minetest.register_node("lib_materials:lead_block", { - description = S("Lead Block"), - tiles = { "technic_lead_block.png" }, - is_ground_content = true, - groups = {cracky=1, level=2}, - sounds = default.node_sound_stone_defaults() -}) - -minetest.register_node("lib_materials:wrought_iron_block", { - description = S("Wrought Iron Block"), - tiles = { "technic_wrought_iron_block.png" }, - is_ground_content = true, - groups = {cracky=1, level=2}, - sounds = default.node_sound_stone_defaults() -}) - -minetest.register_node("lib_materials:cast_iron_block", { - description = S("Cast Iron Block"), - tiles = { "technic_cast_iron_block.png" }, - is_ground_content = true, - groups = {cracky=1, level=2}, - sounds = default.node_sound_stone_defaults() -}) - -minetest.register_node("lib_materials:carbon_steel_block", { - description = S("Carbon Steel Block"), - tiles = { "technic_carbon_steel_block.png" }, - is_ground_content = true, - groups = {cracky=1, level=2}, - sounds = default.node_sound_stone_defaults() -}) - -minetest.register_node("lib_materials:stainless_steel_block", { - description = S("Stainless Steel Block"), - tiles = { "technic_stainless_steel_block.png" }, - is_ground_content = true, - groups = {cracky=1, level=2}, - sounds = default.node_sound_stone_defaults() -}) -minetest.register_node( "lib_materials:mineral_lead", { - description = S("Lead Ore"), - tiles = { "default_stone.png^technic_mineral_lead.png" }, - is_ground_content = true, - groups = {cracky=3}, - sounds = default.node_sound_stone_defaults(), - drop = "lib_materials:lead_lump", -}) -minetest.register_craftitem("lib_materials:brass_ingot", { - description = S("Brass Ingot"), - inventory_image = "technic_brass_ingot.png", -}) - -minetest.register_craftitem("lib_materials:lead_lump", { - description = S("Lead Lump"), - inventory_image = "technic_lead_lump.png", -}) - -minetest.register_craftitem("lib_materials:lead_ingot", { - description = S("Lead Ingot"), - inventory_image = "technic_lead_ingot.png", -}) - -minetest.register_craftitem("lib_materials:wrought_iron_ingot", { - description = S("Wrought Iron Ingot"), - inventory_image = "technic_wrought_iron_ingot.png", -}) - -minetest.register_craftitem("lib_materials:cast_iron_ingot", { - description = S("Cast Iron Ingot"), - inventory_image = "technic_cast_iron_ingot.png", -}) - -minetest.register_craftitem("lib_materials:carbon_steel_ingot", { - description = S("Carbon Steel Ingot"), - inventory_image = "technic_carbon_steel_ingot.png", -}) - -minetest.register_craftitem("lib_materials:stainless_steel_ingot", { - description = S("Stainless Steel Ingot"), - inventory_image = "technic_stainless_steel_ingot.png", -}) - - - -local function register_block(block, ingot) - minetest.register_craft({ - output = block, - recipe = { - {ingot, ingot, ingot}, - {ingot, ingot, ingot}, - {ingot, ingot, ingot}, - } - }) - - minetest.register_craft({ - output = ingot.." 9", - recipe = { - {block} - } - }) -end - -register_block("lib_materials:brass_block", "lib_materials:brass_ingot") -register_block("lib_materials:lead_block", "lib_materials:lead_ingot") -register_block("lib_materials:wrought_iron_block", "lib_materials:wrought_iron_ingot") -register_block("lib_materials:cast_iron_block", "lib_materials:cast_iron_ingot") -register_block("lib_materials:carbon_steel_block", "lib_materials:carbon_steel_ingot") -register_block("lib_materials:stainless_steel_block", "lib_materials:stainless_steel_ingot") - -minetest.register_craft({ - type = 'cooking', - recipe = "lib_materials:lead_lump", - output = "lib_materials:lead_ingot", -}) - - -minetest.register_craft({ - type = 'cooking', - recipe = "lib_materials:wrought_iron_ingot", - output = "lib_materials:cast_iron_ingot", -}) - -minetest.register_craft({ - type = 'cooking', - recipe = "lib_materials:cast_iron_ingot", - cooktime = 2, - output = "lib_materials:carbon_steel_ingot", -}) - -minetest.register_craft({ - type = 'cooking', - recipe = "lib_materials:carbon_steel_ingot", - cooktime = 2, - output = "lib_materials:wrought_iron_ingot", -}) - diff --git a/type_sand.lua b/type_sand.lua index beb17d3..ed57996 100644 --- a/type_sand.lua +++ b/type_sand.lua @@ -1,10 +1,56 @@ -local S = lib_materials.gettext - +local S = lib_materials.intllib + minetest.register_node("lib_materials:sand", { + description = "Sand - Sand Default", + 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_default.png"}, + groups = {crumbly = 3, falling_node = 1, sand = 1}, + sounds = default.node_sound_sand_defaults(), + }) + minetest.register_node("lib_materials:sand_desert", { + description = "Sand - Desert Default", + tiles = {"lib_materials_sand_desert_default.png"}, + groups = {crumbly = 3, falling_node = 1, sand = 1}, + sounds = default.node_sound_sand_defaults(), + }) + minetest.register_node("lib_materials:sand_silver", { + description = "Sand - Silver Default", + tiles = {"lib_materials_sand_silver_default.png"}, + groups = {crumbly = 3, falling_node = 1, sand = 1}, + sounds = default.node_sound_sand_defaults(), + }) + minetest.register_node("lib_materials:sand_volcanic", { + description = ("Sand - Volcanic"), + tiles = {"lib_materials_sand_volcanic.png"}, + groups = {crumbly = 3, falling_node = 1, sand = 1}, + sounds = default.node_sound_sand_defaults(), + }) + minetest.register_node("lib_materials:sand_white", { + description = ("Sand - White"), + tiles = {"lib_materials_sand_white.png"}, + groups = {crumbly = 3, falling_node = 1, sand = 1}, + sounds = default.node_sound_sand_defaults(), + }) + + minetest.register_node("lib_materials:sand_with_rocks", { + description = "Sand and rocks", + tiles = {"lib_materials_sand_with_rocks.png"}, + groups = {crumbly = 3, falling_node = 1, sand = 1}, + --sounds = default.node_sound_sand_defaults(), + drop = {max_items=2, items={{items={"lib_materials:small_rocks"}, rarity=1}}}, + }) +-- Prehistoric Life Sand +-- Node Texture Modifier +-- Valleys_c Sand -- Some sand with rocks for the river beds. -- This drops small rocks as well. -- if false then @@ -15,12 +61,9 @@ local S = lib_materials.gettext -- minetest.register_node("lib_materials:sand_with_rocks", newnode) -- end -minetest.register_node("lib_materials:sand_with_rocks", { - description = "Sand and rocks", - tiles = {"vmg_sand_with_rocks.png"}, - groups = {crumbly = 3, falling_node = 1, sand = 1}, - --sounds = default.node_sound_sand_defaults(), - drop = {max_items=2, items={{items={"lib_materials:small_rocks"}, rarity=1}}}, -}) + + + + diff --git a/type_stone.lua b/type_stone.lua index 999e8bb..77a1d9a 100644 --- a/type_stone.lua +++ b/type_stone.lua @@ -1,46 +1,984 @@ -local S = lib_materials.gettext +local S = lib_materials.intllib + +--[[ + + Includes nodes from Technic, Mapgen, Stone, Darkage, Valleys_c, and others. + + stone_brown and stone_sand are creations of Steven G. Merchant (aka Shad MOrdre -- shadmordre@minetest.net or shadmordre@gmail.com) Copyright 2016© + +--]] + +lib_materials.register_stone = function(name, desc, texture, stone_cracky, stone_level) + + minetest.register_node("lib_materials:stone_"..name.."", { + description = S("Stone - "..desc..""), + tiles = {texture}, + is_ground_content = true, + groups = {cracky = stone_cracky, stone = 1, level = stone_level}, + drop = 'lib_materials:'..name..'', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + + --if stairs and lib_materials.enable_stairs then + --register_stairs + --end + + --if shapes and lib_materials.enable_shapes then + --register_shapes + --end + + --if shapes and lib_materials.enable_slopes then + --register_slopes + --end + + --minetest.after(3, lib_architecture.register_nodes, name, desc, texture, "lib_materials:stone_"..name, default.node_sound_stone_defaults()) + --lib_architecture.register_nodes(name, desc, texture, "lib_materials:"..name.."", default.node_sound_stone_defaults()) + + -- natural_slopes.register_slope("lib_materials:"..name.."", { + -- groups = {cracky = 3, stone = 1, level = 2}, + -- tiles = {texture}, + -- description = ""..desc.." slope", + -- sounds = default.node_sound_stone_defaults()({footstep = {['name'] = "default_grass_footstep", ['gain'] = 0.25},}) + -- }, + -- 1 + -- ) +end -minetest.register_node("lib_materials:stone_brown", { - description = S("Brown Stone"), - tiles = {"lib_materials_stone_brown.png"}, - is_ground_content = true, - groups = {cracky = 3, stone = 1, level = 2}, - drop = 'lib_materials:stone_brown', - legacy_mineral = true, - sounds = default.node_sound_stone_defaults(), -}) + lib_materials.register_stone("travertine", "Travertine", "lib_materials_stone_travertine.png", 3, 1) + lib_materials.register_stone("rhyolite", "Rhyolite", "lib_materials_stone_rhyolite.png", 3, 1) + lib_materials.register_stone("sandstone_red", "Sandstone Red", "lib_materials_stone_sandstone_red.png", 3, 1) + lib_materials.register_stone("serpentine_02", "Serpentine 02", "lib_materials_stone_serpentine_02.png", 3, 1) + lib_materials.register_stone("granite_black", "Granite Black", "lib_materials_stone_granite_black.png", 3, 1) + lib_materials.register_stone("granite_brown_02", "Granite Brown 02", "lib_materials_stone_granite_brown_02.png", 3, 1) + lib_materials.register_stone("granite_04", "Granite 04", "lib_materials_stone_granite_04.png", 3, 1) + lib_materials.register_stone("brownstone", "Brownstone", "lib_materials_stone_brownstone.png", 3, 1) + +--CUSTOM + minetest.register_node("lib_materials:cobble_stone_desert_default", { + tiles = {"lib_materials_stone_desert_default.png^(lib_materials_stone_cobble_default.png^[mask:lib_materials_mask_cobble.png)"}, + description = "Cobble - Stone Desert Default", + is_ground_content = true, + groups = {cracky=3, stone=2}, + }) + minetest.register_node("lib_materials:dirt_desert_cobble_stone", { + tiles = {"lib_materials_stone_desert_default.png^(lib_materials_dirt.png^[mask:lib_materials_mask_cobble.png)"}, + description = "Cobble - Stone Desert Default", + 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", + is_ground_content = true, + groups = {cracky=3, stone=2}, + }) -minetest.register_node("lib_materials:stone_sand", { - description = S("Sand Stone"), - tiles = {"lib_materials_stone_sand.png"}, - is_ground_content = true, - groups = {cracky = 3, stone = 1, level = 2}, - drop = 'lib_materials:stone_sand', - legacy_mineral = true, - sounds = default.node_sound_stone_defaults(), -}) +--Castles mod. (To be converted) + minetest.register_node("lib_materials:stone_castle_dungeon", { + description = S("Stone - Castle Dungeon"), + tiles = {"castle_dungeon_stone.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_castle_dungeon', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_castle_pavement", { + description = S("Stone - Castle Pavement"), + tiles = {"castle_pavement_brick.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:stone_castle_pavement', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_castle_rubble", { + description = S("Stone - Castle Rubble"), + tiles = {"castle_rubble.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:stone_castle_rubble', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_castle_slate", { + description = S("Stone - Castle Slate"), + tiles = {"castle_slate.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:stone_castle_slate', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_castle_wall", { + description = S("Stone - Castle Wall"), + tiles = {"castle_stonewall.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_castle_wall', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) -minetest.register_node( "lib_materials:granite", { - description = S("Granite"), - tiles = { "technic_granite.png" }, - is_ground_content = true, - groups = {cracky=1, granite=1, stone = 1, level = 2}, - drop = 'lib_materials:granite', - legacy_mineral = true, - sounds = default.node_sound_stone_defaults(), -}) +--DecoBlocks mod. (To be moved to type_deco.lua) + minetest.register_node("lib_materials:stone_sandstone_pillar", { + description = S("Stone - Sandstone Pillar"), + tiles = { + "decoblocks_sandstone_pillar_top.png", + "decoblocks_sandstone_pillar_top.png", + "decoblocks_sandstone_pillar.png", + "decoblocks_sandstone_pillar.png", + "decoblocks_sandstone_pillar.png", + "decoblocks_sandstone_pillar.png", + }, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:stone_castle_rubble', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + +--GrailTest game + minetest.register_node("lib_materials:stone_bluestone", { + description = S("Stone - Blue Stone"), + tiles = {"lib_materials_stone_bluestone.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_bluestone', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_greenstone", { + description = S("Stone - Green Stone"), + tiles = {"lib_materials_stone_greenstone.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_greenstone', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_whitestone", { + description = S("Stone - White Stone"), + tiles = {"lib_materials_stone_whitestone.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_whitestone', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + + minetest.register_node("lib_materials:stone_brown", { + description = S("Stone - Brown Stone"), + tiles = {"lib_materials_stone_brown.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_brown', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sand", { + description = S("Stone - Sand Stone"), + tiles = {"lib_materials_stone_sand.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_sand', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + + --Default + minetest.register_node("lib_materials:stone", { + description = S("Stone"), + tiles = {"lib_materials_stone_default.png"}, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:cobble', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_brick", { + description = S("Stone - Brick"), + paramtype2 = "facedir", + place_param2 = 0, + tiles = {"lib_materials_stone_brick.png"}, + is_ground_content = false, + groups = {cracky = 2, stone = 1}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_block", { + description = S("Stone - Block"), + tiles = {"lib_materials_stone_block.png"}, + is_ground_content = false, + groups = {cracky = 2, stone = 1}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_cobble", { + description = S("Stone - Cobble"), + tiles = {"lib_materials_stone_cobble_default.png"}, + is_ground_content = false, + 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"}, + is_ground_content = false, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_cobble_mossy", { + description = S("Stone - Mossy Cobble"), + tiles = {"lib_materials_stone_cobble_mossy.png"}, + is_ground_content = false, + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_gravel", { + description = S("Stone - Gravel"), + tiles = {"lib_materials_stone_gravel_default.png"}, + is_ground_content = false, + groups = {crumbly = 2, falling_node = 1}, + sounds = default.node_sound_gravel_defaults(), + drop = { + max_items = 1, + items = { + {items = {'default:flint'}, rarity = 16}, + {items = {'lib_materials:stone_gravel'}} + } + } + }) + minetest.register_node("lib_materials:stone_default_rockwall", { + description = S("Rockwall - Stone"), + tiles = {"lib_materials_stone_default_rockwall.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_desert", { + description = S("Stone - Desert"), + tiles = {"lib_materials_stone_desert_default.png"}, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:desert_cobble', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_desert_brick", { + description = S("Stone - Desert Brick"), + paramtype2 = "facedir", + place_param2 = 0, + tiles = {"lib_materials_stone_desert_brick.png"}, + is_ground_content = false, + groups = {cracky = 2, stone = 1}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_desert_block", { + description = S("Stone - Desert Block"), + tiles = {"lib_materials_stone_desert_block.png"}, + is_ground_content = false, + groups = {cracky = 2, stone = 1}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_desert_cobble", { + description = S("Stone - Desert Cobble"), + tiles = {"lib_materials_stone_desert_cobble.png"}, + is_ground_content = false, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_desert_cobble_small", { + description = S("Stone - Desert Cobble Small"), + tiles = {"lib_materials_stone_desert_cobble_small.png"}, + is_ground_content = false, + 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"}, + is_ground_content = false, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_obsidian", { + description = S("Stone - Obsidian"), + tiles = {"lib_materials_stone_obsidian_default.png"}, + sounds = default.node_sound_stone_defaults(), + groups = {cracky = 1, level = 2}, + }) + minetest.register_node("lib_materials:stone_obsidian_brick", { + description = S("Stone - Obsidian Brick"), + paramtype2 = "facedir", + place_param2 = 0, + tiles = {"lib_materials_stone_obsidian_brick.png"}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + groups = {cracky = 1, level = 2}, + }) + minetest.register_node("lib_materials:stone_obsidian_block", { + description = S("Stone - Obsidian Block"), + tiles = {"lib_materials_stone_obsidian_block.png"}, + is_ground_content = false, + sounds = default.node_sound_stone_defaults(), + groups = {cracky = 1, level = 2}, + }) + minetest.register_node("lib_materials:stone_sandstone", { + description = S("Stone - Sandstone"), + tiles = {"lib_materials_stone_sandstone_default.png"}, + groups = {crumbly = 1, cracky = 3}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_brick", { + description = S("Stone - Sandstone Brick"), + paramtype2 = "facedir", + place_param2 = 0, + tiles = {"lib_materials_stone_sandstone_brick.png"}, + is_ground_content = false, + groups = {cracky = 2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_block", { + description = S("Stone - Sandstone Block"), + tiles = {"lib_materials_stone_sandstone_block.png"}, + is_ground_content = false, + groups = {cracky = 2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_desert", { + description = S("Stone - Sandstone Desert"), + tiles = {"lib_materials_stone_sandstone_desert_default.png"}, + groups = {crumbly = 1, cracky = 3}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_desert_brick", { + description = S("Stone - Sandstone Desert Brick"), + paramtype2 = "facedir", + place_param2 = 0, + tiles = {"lib_materials_stone_sandstone_desert_brick.png"}, + is_ground_content = false, + groups = {cracky = 2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_desert_block", { + description = S("Stone - Sandstone Desert Block"), + tiles = {"lib_materials_stone_sandstone_desert_block.png"}, + is_ground_content = false, + groups = {cracky = 2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_desert_gravel", { + description = S("Stone - Sandstone Desert Gravel"), + tiles = {"lib_materials_stone_sandstone_desert_gravel.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:lib_materials:stone_sandstone_desert_gravel', + legacy_mineral = true, + sounds = default.node_sound_gravel_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_silver", { + description = S("Stone - Sandstone Silver"), + tiles = {"lib_materials_stone_sandstone_silver_default.png"}, + groups = {crumbly = 1, cracky = 3}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_silver_brick", { + description = S("Stone - Sandstone Silver Brick"), + paramtype2 = "facedir", + place_param2 = 0, + tiles = {"lib_materials_stone_sandstone_silver_brick.png"}, + is_ground_content = false, + groups = {cracky = 2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_silver", { + description = S("Stone - Sandstone Silver Block"), + tiles = {"lib_materials_stone_sandstone_silver_block.png"}, + is_ground_content = false, + groups = {cracky = 2}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_white", { + description = S("Stone - - White Sandstone"), + tiles = {"lib_materials_stone_sandstone_white.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_sandstone_white', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_white_brick", { + description = S("Stone - - White Sandstone Brick"), + tiles = {"lib_materials_stone_sandstone_white_brick.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_sandstone_white_brick', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_white_gravel", { + description = S("Stone - - White Sandstone Gravel"), + tiles = {"lib_materials_stone_sandstone_white_gravel.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_sandstone_white_gravel', + legacy_mineral = true, + sounds = default.node_sound_gravel_defaults(), + }) + + minetest.register_node("lib_materials:stone_adobe", { + description = S("Stone - Adobe"), + tiles = {"lib_materials_stone_adobe.png"}, + is_ground_content = true, + groups = {crumbly=3}, + sounds = default.node_sound_sand_defaults(), + }) + minetest.register_node("lib_materials:stone_andesite", { + description = S("Stone - Andesite"), + tiles = {"lib_materials_stone_andesite.png" }, + groups = {cracky=3, stone=1}, + is_ground_content = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_basalt_01", { + description = S("Stone - Basalt 01"), + tiles = {"lib_materials_stone_basalt_01.png"}, + is_ground_content = true, + 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() + }) + minetest.register_node("lib_materials:stone_basalt_01_block", { + description = S("Stone - Basalt 01 Block"), + tiles = {"lib_materials_stone_basalt_01_block.png"}, + is_ground_content = false, + groups = {cracky = 2, stone = 1}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_basalt_01_brick", { + description = S("Stone - Basalt 01 Brick"), + tiles = {"lib_materials_stone_basalt_01_brick.png"}, + is_ground_content = false, + groups = {cracky = 2, stone = 1}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_basalt_01_cobble", { + description = S("Stone - Basalt 01 Cobble"), + tiles = {"lib_materials_stone_basalt_01_cobble.png"}, + is_ground_content = false, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_basalt_02", { + description = S("Stone - Basalt 02"), + tiles = {"lib_materials_stone_basalt_02.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_basalt_02', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_basalt_03", { + description = S("Stone - Basalt 03"), + tiles = {"lib_materials_stone_basalt_03.png" }, + groups = {cracky=3, stone=1}, + is_ground_content = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_chalk", { + description = S("Stone - Chalk"), + tiles = {"lib_materials_stone_chalk.png"}, + is_ground_content = true, + drop = 'lib_materials:chalk_powder 2', + groups = {crumbly=2, cracky=2, not_cuttable=1}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_claystone", { + description = S("Stone - Claystone"), + tiles = {"lib_materials_stone_claystone.png" }, + is_ground_content = true, + groups = {crumbly=1, cracky=3}, + sounds = default.node_sound_dirt_defaults(), + }) + minetest.register_node("lib_materials:stone_conglomerate", { + description = S("Stone - Conglomerate"), + tiles = {"lib_materials_stone_conglomerate.png" }, + is_ground_content = true, + sounds = default.node_sound_dirt_defaults(), + groups = {crumbly=3}, + }) + minetest.register_node("lib_materials:stone_diorite", { + description = S("Stone - Diorite"), + tiles = {"lib_materials_stone_diorite.png" }, + groups = {cracky=3, stone=1}, + is_ground_content = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_gabbro", { + description = S("Stone - Gabbro"), + tiles = {"lib_materials_stone_gabbro.png" }, + groups = {cracky=3, stone=1}, + is_ground_content = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_gneiss_01", { + description = S("Stone - Gneiss 01"), + tiles = {"lib_materials_stone_gneiss_01.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + 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", { + description = S("Stone - Gneiss 01 Block"), + tiles = {"lib_materials_stone_gneiss_01_block.png"}, + is_ground_content = false, + groups = {cracky = 2, stone = 1}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_gneiss_01_brick", { + description = S("Stone - Gneiss 01 Brick"), + tiles = {"lib_materials_stone_gneiss_01_brick.png"}, + is_ground_content = false, + groups = {cracky = 2, stone = 1}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_gneiss_01_cobble", { + description = S("Stone - Gneiss 01 Cobble"), + tiles = {"lib_materials_stone_gneiss_01_cobble.png"}, + is_ground_content = false, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_gneiss_02", { + description = S("Stone - Gniess 02"), + tiles = {"lib_materials_stone_gneiss_02.png" }, + groups = {cracky=3, stone=1}, + is_ground_content = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_granite_01", { + description = S("Stone - Granite 01 (Technic)"), + tiles = { "lib_materials_stone_granite_01.png" }, + is_ground_content = true, + groups = {cracky=1, granite=1, stone = 1, level = 2}, + drop = 'lib_materials:stone_granite_01', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_granite_02", { + description = S("Stone - Granite 02"), + tiles = {"lib_materials_stone_granite_02.png"}, + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults(), + }) + 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(), + }) + minetest.register_node("lib_materials:stone_granite_03", { + description = S("Stone - Granite 03"), + tiles = {"lib_materials_stone_granite_03.png" }, + is_ground_content = true, + 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" }, + is_ground_content = true, + sounds = default.node_sound_dirt_defaults(), + groups = {crumbly=3}, + }) + minetest.register_node("lib_materials:stone_limestone_01", { + description = S("Stone - Limestone 01"), + tiles = {"lib_materials_stone_limestone_01.png"}, + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_limestone_02", { + description = S("Stone - Limestone 02"), + tiles = {"lib_materials_stone_limestone_02.png" }, + is_ground_content = true, + sounds = default.node_sound_stone_defaults(), + groups = {cracky=2}, + }) + minetest.register_node("lib_materials:stone_marble_01", { + description = S("Stone - Marble 01 (Technic)"), + tiles = { "lib_materials_stone_marble_01.png" }, + is_ground_content = true, + groups = {cracky=3, marble=1, stone = 1, level = 2}, + drop = 'lib_materials:stone_marble_01', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_marble_02", { + description = S("Stone - Marble 02"), + tiles = {"lib_materials_stone_marble_02.png"}, + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_marble_03", { + description = S("Stone - Marble 03"), + tiles = {"lib_materials_stone_marble_03.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_marble_03_block", { + description = S("Stone - Marble 03 Block"), + tiles = {"lib_materials_stone_marble_03_block.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_mudstone", { + description = S("Stone - Mudstone"), + tiles = {"lib_materials_stone_mudstone.png" }, + groups = {cracky=1, crumbly=3}, + is_ground_content = true, + sounds = default.node_sound_dirt_defaults(), + }) + minetest.register_node("lib_materials:stone_pegmatite", { + description = S("Stone - Pegmatite"), + tiles = {"lib_materials_stone_pegmatite.png" }, + groups = {cracky=3, stone=1}, + is_ground_content = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_rhyolitic_tuff", { + description = S("Stone - Rhyolitic Tuff"), + tiles = {"lib_materials_stone_rhyolitic_tuff.png"}, + is_ground_content = true, + legacy_mineral = true, + groups = {cracky = 3, stone = 1}, + drop = { + max_items = 1, + items = { + {-- player get tuff node if he is lucky :) + items = {'lib_materials:stone_rhyolitic_tuff'}, + rarity = 3, + }, + {-- player will get rubble with 2/3 chance + items = {'lib_materials:stone_rhyolitic_tuff_cobble'}, + } + + } + }, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_rhyolitic_tuff_bricks", { + description = S("Stone - Rhyolitic Tuff Bricks"), + tiles = {"lib_materials_stone_rhyolitic_tuff_bricks.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_rhyolitic_tuff_cobble", { + description = S("Stone - Rhyolitic Tuff Cobble"), + tiles = {"lib_materials_stone_rhyolitic_tuff_cobble.png"}, + groups = {crumbly = 2, falling_node = 1}, + sounds = default.node_sound_gravel_defaults(), + }) + minetest.register_node("lib_materials:stone_sandstone_old_red", { + description = S("Stone - Old Red Sandstone"), + tiles = {"lib_materials_stone_sandstone_old_red.png"}, + is_ground_content = true, + drop = "lib_materials:stone_sandstone_old_red_cobble", + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_sandstone_old_red_block", { + description = S("Stone - Old Red Sandstone Block"), + tiles = {"lib_materials_stone_sandstone_old_red_block.png"}, + is_ground_content = false, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_sandstone_old_red_brick", { + description = S("Stone - Old Red Sandstone Brick"), + tiles = {"lib_materials_stone_sandstone_old_red_brick.png"}, + is_ground_content = false, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_sandstone_old_red_cobble", { + description = S("Stone - Old Red Sandstone Cobble"), + tiles = {"lib_materials_stone_sandstone_old_red_cobble.png"}, + is_ground_content = true, + groups = {cracky = 3, crumbly=2, stone = 2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_savanna", { + description = S("Stone - Savannah Stone"), + tiles = {"lib_materials_stone_savannah.png"}, + groups = {cracky = 3, stone=1}, + drop = 'lib_materials:stone_savanna_cobble', + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_savanna_cobble", { + description = S("Stone - Savanna Cobble"), + tiles = {"lib_materials_stone_savanna_cobble.png"}, + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_savanna_with_ore_coal", { + description = S("Stone - Savanna Stone With Coal Ore"), + tiles = {"lib_materials_stone_savannah_with_ore_coal.png"}, + groups = {cracky = 3, stone = 1, ore=1}, + drop = 'default:coal_lump', + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_savanna_with_ore_iron", { + description = S("Stone - Savanna Stone With Iron Ore"), + tiles = {"lib_materials_stone_savannah_with_ore_iron.png"}, + groups = {cracky = 2, stone = 1, ore=1}, + drop = 'default:iron_lump', + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_schist", { + description = S("Stone - Schist"), + tiles = {"lib_materials_stone_schist.png"}, + is_ground_content = true, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_serpentine", { + description = S("Stone - Serpentine"), + tiles = {"lib_materials_stone_serpentine.png"}, + is_ground_content = true, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_shale", { + description = S("Stone - Shale"), + tiles = {"lib_materials_stone_shale.png","lib_materials_stone_shale.png","lib_materials_stone_shale_side.png"}, + is_ground_content = true, + groups = {crumbly=2,cracky=2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_skarn", { + description = S("Stone - Skarn"), + tiles = {"lib_materials_stone_skarn.png" }, + groups = {cracky=3, stone=1}, + is_ground_content = true, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:stone_slate_01", { + description = S("Stone - Slate 01"), + tiles = {"lib_materials_stone_slate_01_top.png","lib_materials_stone_slate_01_top.png","lib_materials_stone_slate_01_side.png"}, + is_ground_content = true, + drop = 'lib_materials:stone_slate_01_cobble', + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_slate_01_block", { + description = S("Stone - Slate 01 Block"), + tiles = {"lib_materials_stone_slate_01_block.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_slate_01_brick", { + description = S("Stone - Slate 01 Brick"), + tiles = {"lib_materials_stone_slate_01_brick.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_slate_01_cobble", { + description = S("Stone - Slate 01 Cobble"), + tiles = {"lib_materials_stone_slate_01_cobble.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_slate_01_tile", { + description = S("Stone - Slate 01 Tile"), + tiles = {"lib_materials_stone_slate_01_tile.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_slate_02", { + description = S("Stone - Slate 02"), + tiles = {"lib_materials_stone_slate_02.png" }, + is_ground_content = true, + sounds = default.node_sound_dirt_defaults(), + groups = {cracky=3}, + }) + minetest.register_node("lib_materials:stone_tuff", { + description = S("Stone - Tuff"), + tiles = {"lib_materials_stone_tuff.png"}, + is_ground_content = true, + legacy_mineral = true, + groups = {cracky = 3, stone = 1}, + drop = { + max_items = 1, + items = { + {-- player get tuff node if he is lucky :) + items = {'lib_materials:stone_tuff'}, + rarity = 3, + }, + {-- player will get rubble with 2/3 chance + items = {'lib_materials:stone_tuff_cobble'}, + } + } + }, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_tuff_bricks", { + description = S("Stone - Tuff Bricks"), + tiles = {"lib_materials_stone_tuff_bricks.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_tuff_bricks_old", { + description = S("Stone - Tuff Bricks Old"), + tiles = {"lib_materials_stone_tuff_bricks_old.png"}, + is_ground_content = false, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() + }) + minetest.register_node("lib_materials:stone_tuff_cobble", { + description = S("Stone - Tuff Cobble"), + tiles = {"lib_materials_stone_tuff_cobble.png"}, + groups = {crumbly = 2, falling_node = 1}, + sounds = default.node_sound_gravel_defaults(), + }) + minetest.register_node("lib_materials:stone_vermiculite", { + description = S("Stone - Vermiculite"), + tiles = {"lib_materials_stone_vermiculite.png"}, + groups = {crumbly = 1, cracky = 3}, + sounds = default.node_sound_stone_defaults(), + }) + + +--Technic Node - Granite 01, Marble 01 +--Farlands Nodes - Granite 02, Granite Brown, Limestone 01, Marble 02, Savanna +--Rocks mod - Andesite, Basalt 03, Claystone, Conglomerate, Diorite, Gabbro, Gneiss 02, Granite 03, Laterite, Limestone 02, Mudstone, Pegmatite, Skarn, Slate 02, + -- Basalt Ex/Mafic hard same as diorite, byt limit=0.5 + -- Mudstone Sed soft Ocean, beach, river, glaciers + -- more rock defs +--Darkage Nodes - Adobe, Basalt 01, Chalk, Gneiss 01, Marble 03, Old Red Sandstone (ors), Serpentine, Shale, Schist, Slate 01, Tuff, Rhyolitic Tuff + minetest.register_craftitem("lib_materials:mineral_chalk_powder", { + description = "Chalk Powder", + inventory_image = "lib_materials_mineral_chalk_powder.png", + }) + minetest.register_node("lib_materials:cobble_with_plaster", { + description = "Stone - Cobblestone with Plaster", + tiles = {"darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_D.png)", "darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_B.png)", + "darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_C.png)", "darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_A.png)", + "default_cobble.png", "darkage_chalk.png"}, + is_ground_content = false, + paramtype2 = "facedir", + drop = 'default:cobble', + groups = {cracky=3, not_cuttable=1}, + sounds = default.node_sound_stone_defaults(), + }) + minetest.register_node("lib_materials:chalked_bricks_with_plaster", { + description = "Stone - Chalked Bricks with Plaster", + tiles = {"darkage_chalk.png^(darkage_chalked_bricks.png^[mask:darkage_plaster_mask_D.png)", "darkage_chalk.png^(darkage_chalked_bricks.png^[mask:darkage_plaster_mask_B.png)", + "darkage_chalk.png^(darkage_chalked_bricks.png^[mask:darkage_plaster_mask_C.png)", "darkage_chalk.png^(darkage_chalked_bricks.png^[mask:darkage_plaster_mask_A.png)", + "darkage_chalked_bricks.png", "darkage_chalk.png"}, + is_ground_content = false, + paramtype2 = "facedir", + drop = 'default:cobble', + groups = {cracky=3, not_cuttable=1}, + sounds = default.node_sound_stone_defaults(), + }) +-- abm to turn Tuff bricks to old Tuff bricks if water is nearby +-- minetest.register_abm({ + -- nodenames = {"lib_materials:stone_tuff_bricks"}, + -- neighbors = {"group:water"}, + -- interval = 16, + -- chance = 200, + -- catch_up = false, + -- action = function(pos, node) + -- minetest.set_node(pos, {name = "lib_materials:stone_tuff_bricks_old"}) + -- end +-- }) -minetest.register_node( "lib_materials:marble", { - description = S("Marble"), - tiles = { "technic_marble.png" }, - is_ground_content = true, - groups = {cracky=3, marble=1, stone = 1, level = 2}, - drop = 'lib_materials:marble', - legacy_mineral = true, - sounds = default.node_sound_stone_defaults(), -}) diff --git a/type_stone_deco.lua b/type_stone_deco.lua new file mode 100644 index 0000000..e74a098 --- /dev/null +++ b/type_stone_deco.lua @@ -0,0 +1,775 @@ + + +local S = lib_materials.intllib + + +--PYRAMIDS + +local img = {"eye", "men", "sun"} + +for i=1,3 do + minetest.register_node("lib_materials:deco_stone"..i, { + description = "Sandstone with "..img[i], + tiles = {"default_sandstone.png^pyramids_"..img[i]..".png"}, + is_ground_content = true, + groups = {crumbly=2,cracky=3}, + sounds = default.node_sound_stone_defaults(), + }) +end + + + minetest.register_node("lib_materials:deco_stone_egypt_01", { + description = S("Stone - Egypt 01"), + tiles = {"lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "decoblocks_sandstone_wall.png", + "decoblocks_sandstone_wall.png", + }, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults(), + }) + + minetest.register_node("lib_materials:deco_stone_egypt_02", { + description = S("Stone - Egypt 02"), + tiles = {"lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "decoblocks_sandstone_wall2.png", + "decoblocks_sandstone_wall2.png", + }, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults(), + }) + + minetest.register_node("lib_materials:deco_stone_egypt_03", { + description = S("Stone - Egypt 03"), + tiles = {"lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "decoblocks_sandstone_wall3.png", + "decoblocks_sandstone_wall3.png", + }, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults(), + }) + + minetest.register_node("lib_materials:deco_stone_egypt_04", { + description = S("Stone - Egypt 04"), + tiles = {"lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "lib_materials_stone_sandstone_default.png", + "decoblocks_sandstone_wall4.png", + "decoblocks_sandstone_wall4.png", + }, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults(), + }) + + + + minetest.register_node("lib_materials:stone_brown_angled", { + description = S("Stone - Brown Angled"), + drawtype = "nodebox", + tiles = {"lib_materials_stone_brown.png"}, + paramtype = "light", + paramtype2 = "facedir", + is_ground_content = true, + legacy_mineral = true, + connects_to = { "group:wall", "group:stone", "group:lib_architecture", "group:lib_doors", "group:lib_fences", "group:lib_general", "group:lib_lights"}, + groups = {cracky = 3, stone = 1, level = 2}, + sounds = default.node_sound_stone_defaults(), + node_box = { + type = "connected", + fixed = { + {-0.01, -0.01, -0.01, 0.01, 0.01, 0.01}, + }, + connect_front = { + {-0.5, -0.5, -0.5, 0.5, 0.5, -0.375}, + {-0.375, -0.375, -0.375, 0.375, 0.375, -0.25}, + {-0.25, -0.25, -0.25, 0.25, 0.25, -0.125}, + {-0.125, -0.125, -0.125, 0.125, 0.125, 0}, + }, + connect_back = { + {-0.5, -0.5, 0.375, 0.5, 0.5, 0.5}, + {-0.375, -0.375, 0.25, 0.375, 0.375, 0.375}, + {-0.25, -0.25, 0.125, 0.25, 0.25, 0.25}, + {-0.125, -0.125, 0, 0.125, 0.125, 0.125}, + }, + connect_left = { + {-0.5, -0.5, -0.5, -0.375, 0.5, 0.5}, + {-0.375, -0.375, -0.375, -0.25, 0.375, 0.375}, + {-0.25, -0.25, -0.25, -0.125, 0.25, 0.25}, + {-0.125, -0.125, -0.125, 0, 0.125, 0.125}, + }, + connect_right = { + {0.375, -0.5, -0.5, 0.5, 0.5, 0.5}, + {0.25, -0.375, -0.375, 0.375, 0.375, 0.375}, + {0.125, -0.25, -0.25, 0.25, 0.25, 0.25}, + {0, -0.125, -0.125, 0.125, 0.125, 0.125}, + }, + connect_bottom = { + {-0.5, -0.5, -0.5, 0.5, -0.375, 0.5}, + {-0.375, -0.375, -0.375, 0.375, -0.25, 0.375}, + {-0.25, -0.25, -0.25, 0.25, -0.125, 0.25}, + {-0.125, -0.125, -0.125, 0.125, 0, 0.125}, + }, + connect_top = { + {-0.5, 0.375, -0.5, 0.5, 0.5, 0.5}, + {-0.375, 0.25, -0.375, 0.375, 0.375, 0.375}, + {-0.25, 0.125, -0.25, 0.25, 0.25, 0.25}, + {-0.125, 0, -0.125, 0.15, 0.125, 0.125}, + }, + }, + selection_box = { + type = "connected", + fixed = { + {-0.05, -0.05, -0.05, 0.05, 0.05, 0.05}, + }, + connect_front = { + {-0.5, -0.5, -0.5, 0.5, 0.5, -0.375}, + {-0.375, -0.375, -0.375, 0.375, 0.375, -0.25}, + {-0.25, -0.25, -0.25, 0.25, 0.25, -0.125}, + {-0.125, -0.125, -0.125, 0.125, 0.125, 0}, + }, + connect_back = { + {-0.5, -0.5, 0.375, 0.5, 0.5, 0.5}, + {-0.375, -0.375, 0.25, 0.375, 0.375, 0.375}, + {-0.25, -0.25, 0.125, 0.25, 0.25, 0.25}, + {-0.125, -0.125, 0, 0.125, 0.125, 0.125}, + }, + connect_left = { + {-0.5, -0.5, -0.5, -0.375, 0.5, 0.5}, + {-0.375, -0.375, -0.375, -0.25, 0.375, 0.375}, + {-0.25, -0.25, -0.25, -0.125, 0.25, 0.25}, + {-0.125, -0.125, -0.125, 0, 0.125, 0.125}, + }, + connect_right = { + {0.375, -0.5, -0.5, 0.5, 0.5, 0.5}, + {0.25, -0.375, -0.375, 0.375, 0.375, 0.375}, + {0.125, -0.25, -0.25, 0.25, 0.25, 0.25}, + {0, -0.125, -0.125, 0.125, 0.125, 0.125}, + }, + connect_bottom = { + {-0.5, -0.5, -0.5, 0.5, -0.375, 0.5}, + {-0.375, -0.375, -0.375, 0.375, -0.25, 0.375}, + {-0.25, -0.25, -0.25, 0.25, -0.125, 0.25}, + {-0.125, -0.125, -0.125, 0.125, 0, 0.125}, + }, + connect_top = { + {-0.5, 0.375, -0.5, 0.5, 0.5, 0.5}, + {-0.375, 0.25, -0.375, 0.375, 0.375, 0.375}, + {-0.25, 0.125, -0.25, 0.25, 0.25, 0.25}, + {-0.125, 0, -0.125, 0.15, 0.125, 0.125}, + }, + }, + collision_box = { + type = "connected", + fixed = { + {-0.01, -0.01, -0.01, 0.01, 0.01, 0.01}, + }, + connect_front = { + {-0.5, -0.5, -0.5, 0.5, 0.5, -0.375}, + {-0.375, -0.375, -0.375, 0.375, 0.375, -0.25}, + {-0.25, -0.25, -0.25, 0.25, 0.25, -0.125}, + {-0.125, -0.125, -0.125, 0.125, 0.125, 0}, + }, + connect_back = { + {-0.5, -0.5, 0.375, 0.5, 0.5, 0.5}, + {-0.375, -0.375, 0.25, 0.375, 0.375, 0.375}, + {-0.25, -0.25, 0.125, 0.25, 0.25, 0.25}, + {-0.125, -0.125, 0, 0.125, 0.125, 0.125}, + }, + connect_left = { + {-0.5, -0.5, -0.5, -0.375, 0.5, 0.5}, + {-0.375, -0.375, -0.375, -0.25, 0.375, 0.375}, + {-0.25, -0.25, -0.25, -0.125, 0.25, 0.25}, + {-0.125, -0.125, -0.125, 0, 0.125, 0.125}, + }, + connect_right = { + {0.375, -0.5, -0.5, 0.5, 0.5, 0.5}, + {0.25, -0.375, -0.375, 0.375, 0.375, 0.375}, + {0.125, -0.25, -0.25, 0.25, 0.25, 0.25}, + {0, -0.125, -0.125, 0.125, 0.125, 0.125}, + }, + connect_bottom = { + {-0.5, -0.5, -0.5, 0.5, -0.375, 0.5}, + {-0.375, -0.375, -0.375, 0.375, -0.25, 0.375}, + {-0.25, -0.25, -0.25, 0.25, -0.125, 0.25}, + {-0.125, -0.125, -0.125, 0.125, 0, 0.125}, + }, + connect_top = { + {-0.5, 0.375, -0.5, 0.5, 0.5, 0.5}, + {-0.375, 0.25, -0.375, 0.375, 0.375, 0.375}, + {-0.25, 0.125, -0.25, 0.25, 0.25, 0.25}, + {-0.125, 0, -0.125, 0.15, 0.125, 0.125}, + }, + }, + + on_place = minetest.rotate_node + }) + + + +minetest.register_node("lib_materials:deco_stone_circle", { + description = S("Circle Stone Bricks"), + tiles = {"moreblocks_circle_stone_bricks.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:circle_stone_bricks', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:deco_stone_coal_checker", { + description = S("Coal Checker"), + tiles = {"default_stone.png^moreblocks_coal_checker.png", + "default_stone.png^moreblocks_coal_checker.png", + "default_stone.png^moreblocks_coal_checker.png", + "default_stone.png^moreblocks_coal_checker.png", + "default_stone.png^moreblocks_coal_checker.png^[transformR90", + "default_stone.png^moreblocks_coal_checker.png^[transformR90"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:coal_checker', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_coal", { + description = S("Coal Stone"), + tiles = {"moreblocks_coal_stone.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:coal_stone', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_coal_bricks", { + description = S("Coal Stone Bricks"), + tiles = {"moreblocks_coal_stone_bricks.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:coal_stone_bricks', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_cobble_compressed", { + description = S("Compressed Cobblestone"), + tiles = {"moreblocks_cobble_compressed.png"}, + is_ground_content = true, + groups = {cracky = 1}, + drop = 'lib_materials:cobble_compressed', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_bricks_grey", { + description = S("Grey Stone Bricks"), + tiles = {"moreblocks_grey_bricks.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:grey_bricks', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:deco_stone_iron_checker", { + description = S("Iron Checker"), + tiles = {"default_stone.png^moreblocks_iron_checker.png", + "default_stone.png^moreblocks_iron_checker.png", + "default_stone.png^moreblocks_iron_checker.png", + "default_stone.png^moreblocks_iron_checker.png", + "default_stone.png^moreblocks_iron_checker.png^[transformR90", + "default_stone.png^moreblocks_iron_checker.png^[transformR90"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:iron_checker', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_iron", { + description = S("Iron Stone"), + tiles = {"moreblocks_iron_stone.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:iron_stone', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_tile_split", { + description = S("Split Stone Tile"), + tiles = {"moreblocks_split_stone_tile_top.png", + "moreblocks_split_stone_tile.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:split_stone_tile', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_tile_01", { + description = S("Stone Tile"), + tiles = {"moreblocks_stone_tile.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:stone_tile', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:tar", { + description = S("Tar"), + tiles = {"moreblocks_tar.png"}, + is_ground_content = true, + groups = {cracky = 2}, + drop = 'lib_materials:tar', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + + +--CRAFTING RECIPES + +minetest.register_craft({ + output = "lib_materials:circle_stone_bricks 8", + recipe = { + {"default:stone", "default:stone", "default:stone"}, + {"default:stone", "", "default:stone"}, + {"default:stone", "default:stone", "default:stone"}, + } +}) + +minetest.register_craft({ + output = "lib_materials:stone_tile 4", + recipe = { + {"default:cobble", "default:cobble"}, + {"default:cobble", "default:cobble"}, + } +}) + +minetest.register_craft({ + output = "lib_materials:split_stone_tile", + recipe = { + {"lib_materials:stone_tile"}, + } +}) + +minetest.register_craft({ + output = "lib_materials:grey_bricks 2", + type = "shapeless", + recipe = {"default:stone", "default:brick"}, +}) + +minetest.register_craft({ + output = "lib_materials:grey_bricks 2", + type = "shapeless", + recipe = {"default:stonebrick", "default:brick"}, +}) + +minetest.register_craft({ + output = "lib_materials:coal_stone_bricks 4", + recipe = { + {"lib_materials:coal_stone", "lib_materials:coal_stone"}, + {"lib_materials:coal_stone", "lib_materials:coal_stone"}, + } +}) + +minetest.register_craft({ + output = "lib_materials:iron_stone_bricks 4", + recipe = { + {"lib_materials:iron_stone", "lib_materials:iron_stone"}, + {"lib_materials:iron_stone", "lib_materials:iron_stone"}, + } +}) + +minetest.register_craft({ + output = "lib_materials:plankstone 4", + recipe = { + {"default:stone", "default:wood"}, + {"default:wood", "default:stone"}, + } +}) + +minetest.register_craft({ + output = "lib_materials:plankstone 4", + recipe = { + {"default:wood", "default:stone"}, + {"default:stone", "default:wood"}, + } +}) + +minetest.register_craft({ + output = "lib_materials:coal_checker 4", + recipe = { + {"default:stone", "default:coal_lump"}, + {"default:coal_lump", "default:stone"}, + } +}) + +minetest.register_craft({ + output = "lib_materials:coal_checker 4", + recipe = { + {"default:coal_lump", "default:stone"}, + {"default:stone", "default:coal_lump"}, + } +}) + +minetest.register_craft({ + output = "lib_materials:iron_checker 4", + recipe = { + {"default:steel_ingot", "default:stone"}, + {"default:stone", "default:steel_ingot"}, + } +}) + +minetest.register_craft({ + output = "lib_materials:iron_checker 4", + recipe = { + {"default:stone", "default:steel_ingot"}, + {"default:steel_ingot", "default:stone"}, + } +}) + +minetest.register_craft({ + output = "lib_materials:iron_glass", + type = "shapeless", + recipe = {"default:steel_ingot", "default:glass"}, +}) + +minetest.register_craft({ + output = "default:glass", + type = "shapeless", + recipe = {"default:coal_lump", "lib_materials:iron_glass"}, +}) + +minetest.register_craft({ + output = "lib_materials:coal_glass", + type = "shapeless", + recipe = {"default:coal_lump", "default:glass"}, +}) + +minetest.register_craft({ + output = "default:glass", + type = "shapeless", + recipe = {"default:steel_ingot", "lib_materials:coal_glass"}, +}) + +minetest.register_craft({ + output = "lib_materials:clean_glass", + type = "shapeless", + recipe = {"lib_materials:sweeper", "default:glass"}, +}) + +minetest.register_craft({ + output = "lib_materials:coal_stone", + type = "shapeless", + recipe = {"default:coal_lump", "default:stone"}, +}) + +minetest.register_craft({ + output = "default:stone", + type = "shapeless", + recipe = {"default:steel_ingot", "lib_materials:coal_stone"}, +}) + +minetest.register_craft({ + output = "lib_materials:iron_stone", + type = "shapeless", + recipe = {"default:steel_ingot", "default:stone"}, +}) + +minetest.register_craft({ + output = "default:stone", + type = "shapeless", + recipe = {"default:coal_lump", "lib_materials:iron_stone"}, +}) + +minetest.register_craft({ + output = "lib_materials:cobble_compressed", + recipe = { + {"default:cobble", "default:cobble", "default:cobble"}, + {"default:cobble", "default:cobble", "default:cobble"}, + {"default:cobble", "default:cobble", "default:cobble"}, + } +}) + +minetest.register_craft({ + output = "default:cobble 9", + recipe = { + {"lib_materials:cobble_compressed"}, + } +}) + +minetest.register_craft({ + type = "cooking", output = "lib_materials:tar", recipe = "default:gravel", +}) + + +--XDECOR Decorative stone types + +minetest.register_node("lib_materials:stone_coal_tile", { + description = S("Stone - Coal Tile"), + tiles = { + "xdecor_coalstone_tile.png", + "xdecor_coalstone_tile.png", + "xdecor_coalstone_tile.png", + "xdecor_coalstone_tile.png", + "xdecor_coalstone_tile.png^[transformR90", + "xdecor_coalstone_tile.png^[transformR90", + }, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:coalstone_tile', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_desert_tile", { + description = S("Desert Stone Tile"), + tiles = {"xdecor_desertstone_tile.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:desertstone_tile', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:clay_hard", { + description = S("Hardened Clay"), + tiles = {"xdecor_hard_clay.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1}, + drop = 'lib_materials:hard_clay', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_tile_02", { + description = S("Stone Tile"), + tiles = {"xdecor_stone_tile.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_tile', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_rune", { + description = S("Runestone"), + tiles = {"xdecor_stone_rune.png"}, + is_ground_content = true, + groups = {cracky = 3, stone = 1, level = 2}, + drop = 'lib_materials:stone_rune', + legacy_mineral = true, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:packed_ice", { + description = S("Packed Ice"), + tiles = {"xdecor_packed_ice.png"}, + is_ground_content = true, + groups = {cracky = 1, puts_out_fire=1}, + drop = 'lib_materials:packed_ice', + legacy_mineral = true, + sounds = default.node_sound_glass_defaults(), +}) + + +-- DECO Stone Types + +minetest.register_node("lib_materials:stone_tiles", { + description = "Stone - Tiles", + tiles = {"lib_materials_stone_tiles.png"}, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_tiles_with_dirt", { + description = "Stone - Tiles with Dirt", + tiles = {"lib_materials_stone_tiles_with_dirt.png"}, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_tiles_mossy", { + description = "Stone - Mossy Tiles", + tiles = {"lib_materials_stone_tiles_mossy.png"}, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_brick_mossy", { + description = "Stone - Mossy Brick", + paramtype2 = "facedir", + place_param2 = 0, + tiles = {"lib_materials_stone_brick_mossy.png"}, + is_ground_content = false, + groups = {cracky = 2, stone = 1}, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_tiles_crumbled", { + description = "Stone - Crumbled Tiles", + tiles = {"lib_materials_stone_tiles_crumbled.png"}, + groups = {crumbly = 1}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("lib_materials:stone_granite_02_block", { + description = "Stone - Granite 02 Block", + tiles = {"lib_materials_stone_granite_02_block.png"}, + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("lib_materials:stone_granite_brown_block", { + description = "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_stucco", { + description = "Stone - Stucco", + tiles = {"lib_materials_stone_stucco.png"}, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults(), +}) + + + + + + +--MOREORES Decorative stone types +--To be added + + + -- ["wood_tile"] = { + -- description = S("Wooden Tile"), + -- groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3}, + -- tiles = {"default_wood.png^moreblocks_wood_tile.png", + -- "default_wood.png^moreblocks_wood_tile.png", + -- "default_wood.png^moreblocks_wood_tile.png", + -- "default_wood.png^moreblocks_wood_tile.png", + -- "default_wood.png^moreblocks_wood_tile.png^[transformR90", + -- "default_wood.png^moreblocks_wood_tile.png^[transformR90"}, + -- sounds = sound_wood, + -- }, + + -- ["wood_tile_flipped"] = { + -- description = S("Wooden Tile"), + -- groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3}, + -- tiles = {"default_wood.png^moreblocks_wood_tile.png^[transformR90", + -- "default_wood.png^moreblocks_wood_tile.png^[transformR90", + -- "default_wood.png^moreblocks_wood_tile.png^[transformR90", + -- "default_wood.png^moreblocks_wood_tile.png^[transformR90", + -- "default_wood.png^moreblocks_wood_tile.png^[transformR180", + -- "default_wood.png^moreblocks_wood_tile.png^[transformR180"}, + -- sounds = sound_wood, + -- no_stairs = true, + -- }, + + -- ["wood_tile_center"] = { + -- description = S("Centered Wooden Tile"), + -- groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3}, + -- tiles = {"default_wood.png^moreblocks_wood_tile_center.png"}, + -- sounds = sound_wood, + -- }, + + -- ["wood_tile_full"] = { + -- description = S("Full Wooden Tile"), + -- groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3}, + -- tiles = tile_tiles("wood_tile_full"), + -- sounds = sound_wood, + -- }, + + -- ["wood_tile_up"] = { + -- description = S("Upwards Wooden Tile"), + -- groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3}, + -- tiles = {"default_wood.png^moreblocks_wood_tile_up.png"}, + -- sounds = sound_wood, + -- no_stairs = true, + -- }, + + -- ["wood_tile_down"] = { + -- description = S("Downwards Wooden Tile"), + -- groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3}, + -- tiles = {"default_wood.png^[transformR180^moreblocks_wood_tile_up.png^[transformR180"}, + -- sounds = sound_wood, + -- no_stairs = true, + -- }, + + -- ["wood_tile_left"] = { + -- description = S("Leftwards Wooden Tile"), + -- groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3}, + -- tiles = {"default_wood.png^[transformR270^moreblocks_wood_tile_up.png^[transformR270"}, + -- sounds = sound_wood, + -- no_stairs = true, + -- }, + + -- ["wood_tile_right"] = { + -- description = S("Rightwards Wooden Tile"), + -- groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3}, + -- tiles = {"default_wood.png^[transformR90^moreblocks_wood_tile_up.png^[transformR90"}, + -- sounds = sound_wood, + -- no_stairs = true, + -- }, + + -- ["plankstone"] = { + -- description = S("Plankstone"), + -- groups = {cracky = 3}, + -- tiles = tile_tiles("plankstone"), + -- sounds = sound_stone, + -- }, + + -- ["all_faces_tree"] = { + -- description = S("All-faces Tree"), + -- tiles = {"default_tree_top.png"}, + -- groups = {tree = 1,snappy = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + -- sounds = sound_wood, + -- furnace_burntime = 30, + -- }, + + -- ["all_faces_jungle_tree"] = { + -- description = S("All-faces Jungle Tree"), + -- tiles = {"default_jungletree_top.png"}, + -- groups = {tree = 1,snappy = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + -- sounds = sound_wood, + -- furnace_burntime = 30, + -- }, + + + + + + + + + + + + + + + + + + + + +