diff --git a/mods/CORE/voxelibre/init.lua b/mods/CORE/voxelibre/init.lua index bb557be79..b4e8e0025 100644 --- a/mods/CORE/voxelibre/init.lua +++ b/mods/CORE/voxelibre/init.lua @@ -23,9 +23,14 @@ end _G.table.copy = table.copy _G.table.merge = table.merge +---comment +---@param string string +---@param position integer +---@param substring string +---@return string function string.insert(string, position, substring) if position < 1 or position > #string + 1 then - return + return string end local part1 = string.sub(string, 1, position - 1) diff --git a/mods/ITEMS/mcl_copper/init.lua b/mods/ITEMS/mcl_copper/init.lua index 7d597ee2a..e69de29bb 100644 --- a/mods/ITEMS/mcl_copper/init.lua +++ b/mods/ITEMS/mcl_copper/init.lua @@ -1,5 +0,0 @@ -local path = minetest.get_modpath("mcl_copper") -- Getting mcl_copper mod path - -mcl_copper = {} -- Initializing global variable mcl_copper. - -dofile(path .. "/nodes.lua") diff --git a/mods/ITEMS/mcl_copper/nodes.lua b/mods/ITEMS/mcl_copper/nodes.lua index ffa688377..e69de29bb 100644 --- a/mods/ITEMS/mcl_copper/nodes.lua +++ b/mods/ITEMS/mcl_copper/nodes.lua @@ -1,15 +0,0 @@ -local S = minetest.get_translator("mcl_copper") - --- Registering specific blocks. -minetest.register_node("mcl_copper:stone_with_copper", { - description = S("Copper Ore"), - tiles = {"default_stone.png^mcl_copper_ore.png"}, - is_ground_content = true, - groups = {pickaxey = 3, building_block = 1, material_stone = 1, blast_furnace_smeltable=1}, - drop = "mcl_copper:raw_copper", - sounds = mcl_sounds.node_sound_stone_defaults(), - _mcl_blast_resistance = 3, - _mcl_hardness = 3, - _mcl_silk_touch_drop = true, - _mcl_fortune_drop = mcl_core.fortune_drop_ore, -}) diff --git a/mods/ITEMS/mcl_core/nodes_base.lua b/mods/ITEMS/mcl_core/nodes_base.lua index d474e52a0..35a161238 100644 --- a/mods/ITEMS/mcl_core/nodes_base.lua +++ b/mods/ITEMS/mcl_core/nodes_base.lua @@ -20,20 +20,6 @@ mcl_core.fortune_drop_ore = { multiply = true, } -minetest.register_node("mcl_core:stone_with_coal", { - description = S("Coal Ore"), - tiles = {"mcl_core_coal_ore.png"}, - is_ground_content = true, - stack_max = 64, - groups = {pickaxey=1, building_block=1, material_stone=1, xp=1, blast_furnace_smeltable=1}, - drop = "mcl_core:coal_lump", - sounds = mcl_sounds.node_sound_stone_defaults(), - _mcl_blast_resistance = 3, - _mcl_hardness = 3, - _mcl_silk_touch_drop = true, - _mcl_fortune_drop = mcl_core.fortune_drop_ore, -}) - minetest.register_node("mcl_core:stone_with_iron", { description = S("Iron Ore"), tiles = {"mcl_core_iron_ore.png"}, diff --git a/mods/ITEMS/mcl_deepslate/init.lua b/mods/ITEMS/mcl_deepslate/init.lua index 4a87c0ed6..a0bd36873 100644 --- a/mods/ITEMS/mcl_deepslate/init.lua +++ b/mods/ITEMS/mcl_deepslate/init.lua @@ -69,7 +69,6 @@ local lapis_drops = { } local deepslate_ores = { - { "Coal", "mcl_core:coal_lump", "mcl_core:coal_lump", 1, 1 }, { "Iron", "mcl_raw_ores:raw_iron", "mcl_core:iron_ingot", 3, 0 }, { "Gold", "mcl_raw_ores:raw_gold", "mcl_core:gold_ingot", 4, 0 }, { "Emerald", "mcl_core:emerald", "mcl_core:emerald", 4, 6 }, @@ -81,10 +80,6 @@ for _, p in pairs(deepslate_ores) do register_deepslate_ore(p[1], p[2], p[3], p[4], p[5]) end -if copper_mod then - register_deepslate_ore("Copper", "mcl_copper:raw_copper", "mcl_copper:copper_ingot", 3, 4) -end - local redstone_timer = 68.28 local function redstone_ore_activate(pos, node, puncher, pointed_thing) diff --git a/mods/MAPGEN/mcl_mapgen_core/init.lua b/mods/MAPGEN/mcl_mapgen_core/init.lua index 49538aff7..2fddd5698 100644 --- a/mods/MAPGEN/mcl_mapgen_core/init.lua +++ b/mods/MAPGEN/mcl_mapgen_core/init.lua @@ -33,7 +33,7 @@ minetest.register_alias("mapgen_lava_source", "air") -- Built-in lava generator minetest.register_alias("mapgen_cobble", "mcl_core:cobble") minetest.register_alias("mapgen_mossycobble", "mcl_core:mossycobble") minetest.register_alias("mapgen_junglegrass", "mcl_flowers:fern") -minetest.register_alias("mapgen_stone_with_coal", "mcl_core:stone_with_coal") +minetest.register_alias("mapgen_stone_with_coal", "blocks:coal_ore") minetest.register_alias("mapgen_stone_with_iron", "mcl_core:stone_with_iron") minetest.register_alias("mapgen_desert_sand", "mcl_core:sand") minetest.register_alias("mapgen_desert_stone", "mcl_core:sandstone") diff --git a/mods/MAPGEN/mcl_mapgen_core/ores.lua b/mods/MAPGEN/mcl_mapgen_core/ores.lua index 89c27ec76..af8cc72c8 100644 --- a/mods/MAPGEN/mcl_mapgen_core/ores.lua +++ b/mods/MAPGEN/mcl_mapgen_core/ores.lua @@ -228,7 +228,7 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then -- Common spawn minetest.register_ore({ ore_type = "scatter", - ore = "mcl_core:stone_with_coal", + ore = "blocks:coal_ore", wherein = stonelike, clust_scarcity = 525*3, clust_num_ores = 5, @@ -238,7 +238,7 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then }) minetest.register_ore({ ore_type = "scatter", - ore = "mcl_core:stone_with_coal", + ore = "blocks:coal_ore", wherein = stonelike, clust_scarcity = 510*3, clust_num_ores = 8, @@ -248,7 +248,7 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then }) minetest.register_ore({ ore_type = "scatter", - ore = "mcl_core:stone_with_coal", + ore = "blocks:coal_ore", wherein = stonelike, clust_scarcity = 500*3, clust_num_ores = 12, @@ -260,7 +260,7 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then -- Medium-rare spawn minetest.register_ore({ ore_type = "scatter", - ore = "mcl_core:stone_with_coal", + ore = "blocks:coal_ore", wherein = stonelike, clust_scarcity = 550*3, clust_num_ores = 4, @@ -270,7 +270,7 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then }) minetest.register_ore({ ore_type = "scatter", - ore = "mcl_core:stone_with_coal", + ore = "blocks:coal_ore", wherein = stonelike, clust_scarcity = 525*3, clust_num_ores = 6, @@ -280,7 +280,7 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then }) minetest.register_ore({ ore_type = "scatter", - ore = "mcl_core:stone_with_coal", + ore = "blocks:coal_ore", wherein = stonelike, clust_scarcity = 500*3, clust_num_ores = 8, @@ -292,7 +292,7 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then -- Rare spawn minetest.register_ore({ ore_type = "scatter", - ore = "mcl_core:stone_with_coal", + ore = "blocks:coal_ore", wherein = stonelike, clust_scarcity = 600*3, clust_num_ores = 3, @@ -302,7 +302,7 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then }) minetest.register_ore({ ore_type = "scatter", - ore = "mcl_core:stone_with_coal", + ore = "blocks:coal_ore", wherein = stonelike, clust_scarcity = 550*3, clust_num_ores = 4, @@ -312,7 +312,7 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then }) minetest.register_ore({ ore_type = "scatter", - ore = "mcl_core:stone_with_coal", + ore = "blocks:coal_ore", wherein = stonelike, clust_scarcity = 500*3, clust_num_ores = 5, @@ -690,37 +690,37 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then { "coal", 1575, 5, 3, deepslate_min, deepslate_max }, { "coal", 1530, 8, 3, deepslate_min, deepslate_max }, { "coal", 1500, 12, 3, deepslate_min, deepslate_max }, - { "iron", 830, 5, 3, deepslate_min, deepslate_max }, - { "gold", 4775, 5, 3, deepslate_min, deepslate_max }, - { "gold", 6560, 7, 3, deepslate_min, deepslate_max }, - { "diamond", 10000, 4, 3, deepslate_min, mcl_worlds.layer_to_y(12) }, - { "diamond", 5000, 2, 3, deepslate_min, mcl_worlds.layer_to_y(12) }, - { "diamond", 10000, 8, 3, deepslate_min, mcl_worlds.layer_to_y(12) }, - { "diamond", 20000, 1, 1, mcl_worlds.layer_to_y(13), mcl_worlds.layer_to_y(15) }, - { "diamond", 20000, 2, 2, mcl_worlds.layer_to_y(13), mcl_worlds.layer_to_y(15) }, - { "redstone", 500, 4, 3, deepslate_min, mcl_worlds.layer_to_y(13) }, - { "redstone", 800, 7, 4, deepslate_min, mcl_worlds.layer_to_y(13) }, - { "redstone", 1000, 4, 3, mcl_worlds.layer_to_y(13), mcl_worlds.layer_to_y(15) }, - { "redstone", 1600, 7, 4, mcl_worlds.layer_to_y(13), mcl_worlds.layer_to_y(15) }, - { "lapis", 10000, 7, 4, mcl_worlds.layer_to_y(14), deepslate_max }, - { "lapis", 12000, 6, 3, mcl_worlds.layer_to_y(10), mcl_worlds.layer_to_y(13) }, - { "lapis", 14000, 5, 3, mcl_worlds.layer_to_y(6), mcl_worlds.layer_to_y(9) }, - { "lapis", 16000, 4, 3, mcl_worlds.layer_to_y(2), mcl_worlds.layer_to_y(5) }, - { "lapis", 18000, 3, 2, mcl_worlds.layer_to_y(0), mcl_worlds.layer_to_y(2) }, + --{ "iron", 830, 5, 3, deepslate_min, deepslate_max }, + --{ "gold", 4775, 5, 3, deepslate_min, deepslate_max }, + --{ "gold", 6560, 7, 3, deepslate_min, deepslate_max }, + --{ "diamond", 10000, 4, 3, deepslate_min, mcl_worlds.layer_to_y(12) }, + --{ "diamond", 5000, 2, 3, deepslate_min, mcl_worlds.layer_to_y(12) }, + --{ "diamond", 10000, 8, 3, deepslate_min, mcl_worlds.layer_to_y(12) }, + --{ "diamond", 20000, 1, 1, mcl_worlds.layer_to_y(13), mcl_worlds.layer_to_y(15) }, + --{ "diamond", 20000, 2, 2, mcl_worlds.layer_to_y(13), mcl_worlds.layer_to_y(15) }, + --{ "redstone", 500, 4, 3, deepslate_min, mcl_worlds.layer_to_y(13) }, + --{ "redstone", 800, 7, 4, deepslate_min, mcl_worlds.layer_to_y(13) }, + --{ "redstone", 1000, 4, 3, mcl_worlds.layer_to_y(13), mcl_worlds.layer_to_y(15) }, + --{ "redstone", 1600, 7, 4, mcl_worlds.layer_to_y(13), mcl_worlds.layer_to_y(15) }, + --{ "lapis", 10000, 7, 4, mcl_worlds.layer_to_y(14), deepslate_max }, + --{ "lapis", 12000, 6, 3, mcl_worlds.layer_to_y(10), mcl_worlds.layer_to_y(13) }, + --{ "lapis", 14000, 5, 3, mcl_worlds.layer_to_y(6), mcl_worlds.layer_to_y(9) }, + --{ "lapis", 16000, 4, 3, mcl_worlds.layer_to_y(2), mcl_worlds.layer_to_y(5) }, + --{ "lapis", 18000, 3, 2, mcl_worlds.layer_to_y(0), mcl_worlds.layer_to_y(2) }, } for _, o in pairs(ore_mapgen) do - register_ore_mg("mcl_deepslate:deepslate_with_"..o[1], o[2], o[3], o[4], o[5], o[6]) + register_ore_mg("blocks:deepslate_"..o[1].."_ore", o[2], o[3], o[4], o[5], o[6]) end if minetest.get_mapgen_setting("mg_name") == "v6" then - register_ore_mg("mcl_deepslate:deepslate_with_emerald", 14340, 1, 1, deepslate_min, deepslate_max) + --register_ore_mg("mcl_deepslate:deepslate_with_emerald", 14340, 1, 1, deepslate_min, deepslate_max) else - register_ore_mg("mcl_deepslate:deepslate_with_emerald", 16384, 1, 1, mcl_worlds.layer_to_y(4), deepslate_max, mountains) + --register_ore_mg("mcl_deepslate:deepslate_with_emerald", 16384, 1, 1, mcl_worlds.layer_to_y(4), deepslate_max, mountains) end if copper_mod then - register_ore_mg("mcl_deepslate:deepslate_with_copper", 830, 5, 3, deepslate_min, deepslate_max) + register_ore_mg("blocks:deepslate_copper_ore", 830, 5, 3, deepslate_min, deepslate_max) minetest.register_ore({ ore_type = "scatter", - ore = "mcl_copper:stone_with_copper", + ore = "blocks:copper_ore", wherein = stonelike, clust_scarcity = 830, clust_num_ores = 5, @@ -730,7 +730,7 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then }) minetest.register_ore({ ore_type = "scatter", - ore = "mcl_copper:stone_with_copper", + ore = "blocks:copper_ore", wherein = stonelike, clust_scarcity = 1660, clust_num_ores = 4, diff --git a/mods/blocks/natural/mineral.lua b/mods/blocks/natural/mineral.lua new file mode 100644 index 000000000..b46e71c6a --- /dev/null +++ b/mods/blocks/natural/mineral.lua @@ -0,0 +1,45 @@ +local common_defs = { + deepslate = { + _mcl_blast_resistance = 3, + _mcl_hardness = 4.5, + _mcl_silk_touch_drop = true, + groups = {natural_blocks = 1}, + sounds = mcl_sounds.node_sound_stone_defaults() + }, + stone = { + _mcl_blast_resistance = 3, + _mcl_hardness = 3, + _mcl_silk_touch_drop = true, + groups = {natural_blocks = 1}, + sounds = mcl_sounds.node_sound_stone_defaults() + } +} + +local overworld_ores = { + ["coal"] = { + drop = "items:coal", + groups = {coal_ores = 1, pickaxey = 1} + }, + ["copper"] = { + drop = { + items = { + {items = {"items:raw_copper 5"}, rarity = 4}, + {items = {"items:raw_copper 4"}, rarity = 4}, + {items = {"items:raw_copper 3"}, rarity = 4}, + {items = {"items:raw_copper 2"}} + }, + max_items = 1 + }, + groups = {copper_ores = 1, pickaxey = 3} + } +} + +for identifier, definitions in pairs(overworld_ores) do + identifier = identifier.."_ore" + + voxelibre.register_block(identifier, table.merge(common_defs.stone, definitions)) + + identifier = "deepslate_"..identifier + + voxelibre.register_block(identifier, table.merge(common_defs.deepslate, definitions)) +end diff --git a/textures/ingredients/ingredients_coal.png b/textures/ingredients/ingredients_coal.png new file mode 100644 index 000000000..846f77553 Binary files /dev/null and b/textures/ingredients/ingredients_coal.png differ diff --git a/textures/ingredients/ingredients_raw_copper.png b/textures/ingredients/ingredients_raw_copper.png new file mode 100644 index 000000000..73eb5cd0e Binary files /dev/null and b/textures/ingredients/ingredients_raw_copper.png differ diff --git a/textures/ingredients/ingredients_raw_gold.png b/textures/ingredients/ingredients_raw_gold.png new file mode 100644 index 000000000..4383370b1 Binary files /dev/null and b/textures/ingredients/ingredients_raw_gold.png differ diff --git a/textures/ingredients/ingredients_raw_iron.png b/textures/ingredients/ingredients_raw_iron.png new file mode 100644 index 000000000..5772fa04e Binary files /dev/null and b/textures/ingredients/ingredients_raw_iron.png differ diff --git a/textures/natural/natural_coal_ore.png b/textures/natural/natural_coal_ore.png new file mode 100644 index 000000000..b1e9d34b1 Binary files /dev/null and b/textures/natural/natural_coal_ore.png differ diff --git a/textures/natural/natural_copper_ore.png b/textures/natural/natural_copper_ore.png new file mode 100644 index 000000000..3b77eb521 Binary files /dev/null and b/textures/natural/natural_copper_ore.png differ diff --git a/textures/natural/natural_deepslate_coal_ore.png b/textures/natural/natural_deepslate_coal_ore.png new file mode 100644 index 000000000..ae42a3186 Binary files /dev/null and b/textures/natural/natural_deepslate_coal_ore.png differ diff --git a/textures/natural/natural_deepslate_copper_ore.png b/textures/natural/natural_deepslate_copper_ore.png new file mode 100644 index 000000000..f6b396098 Binary files /dev/null and b/textures/natural/natural_deepslate_copper_ore.png differ