diff --git a/mods/ITEMS/mcl_copper/crafting.lua b/mods/ITEMS/mcl_copper/crafting.lua index 9b0976d3a..088b24154 100644 --- a/mods/ITEMS/mcl_copper/crafting.lua +++ b/mods/ITEMS/mcl_copper/crafting.lua @@ -17,7 +17,7 @@ minetest.register_craft({ }) minetest.register_craft({ - output = "mcl_copper:block_cut 4", + output = "mcl_copper:cut 4", recipe = { { "mcl_copper:block", "mcl_copper:block" }, { "mcl_copper:block", "mcl_copper:block" }, @@ -25,7 +25,15 @@ minetest.register_craft({ }) minetest.register_craft({ - output = "mcl_copper:block_exposed_cut 4", + output = "mcl_copper:waxed_cut 4", + recipe = { + { "mcl_copper:waxed_block", "mcl_copper:waxed_block" }, + { "mcl_copper:waxed_block", "mcl_copper:waxed_block" }, + }, +}) + +minetest.register_craft({ + output = "mcl_copper:cut_exposed 4", recipe = { { "mcl_copper:block_exposed", "mcl_copper:block_exposed" }, { "mcl_copper:block_exposed", "mcl_copper:block_exposed" }, @@ -33,7 +41,31 @@ minetest.register_craft({ }) minetest.register_craft({ - output = "mcl_copper:block_oxidized_cut 4", + output = "mcl_copper:waxed_cut_exposed 4", + recipe = { + { "mcl_copper:waxed_block_exposed", "mcl_copper:waxed_block_exposed" }, + { "mcl_copper:waxed_block_exposed", "mcl_copper:waxed_block_exposed" }, + }, +}) + +minetest.register_craft({ + output = "mcl_copper:cut_weathered 4", + recipe = { + { "mcl_copper:block_weathered", "mcl_copper:block_weathered" }, + { "mcl_copper:block_weathered", "mcl_copper:block_weathered" }, + }, +}) + +minetest.register_craft({ + output = "mcl_copper:waxed_cut_weathered 4", + recipe = { + { "mcl_copper:waxed_block_weathered", "mcl_copper:waxed_block_weathered" }, + { "mcl_copper:waxed_block_weathered", "mcl_copper:waxed_block_weathered" }, + }, +}) + +minetest.register_craft({ + output = "mcl_copper:cut_oxidized 4", recipe = { { "mcl_copper:block_oxidized", "mcl_copper:block_oxidized" }, { "mcl_copper:block_oxidized", "mcl_copper:block_oxidized" }, @@ -41,14 +73,167 @@ minetest.register_craft({ }) minetest.register_craft({ - output = "mcl_copper:block_weathered_cut 4", + output = "mcl_copper:waxed_cut_oxidized 4", recipe = { - { "mcl_copper:block_weathered", "mcl_copper:block_weathered" }, - { "mcl_copper:block_weathered", "mcl_copper:block_weathered" }, + { "mcl_copper:waxed_block_oxidized", "mcl_copper:waxed_block_oxidized" }, + { "mcl_copper:waxed_block_oxidized", "mcl_copper:waxed_block_oxidized" }, }, }) -local waxable_blocks = { "block", "block_cut", "block_exposed", "block_exposed_cut", "block_weathered", "block_weathered_cut", "block_oxidized", "block_oxidized_cut" } +minetest.register_craft({ + output = "mcl_copper:grate 4", + recipe = { + { "", "mcl_copper:block", "" }, + { "mcl_copper:block", "", "mcl_copper:block" }, + { "", "mcl_copper:block", "" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:waxed_grate 4", + recipe = { + { "", "mcl_copper:waxed_block", "" }, + { "mcl_copper:waxed_block", "", "mcl_copper:waxed_block" }, + { "", "mcl_copper:waxed_block", "" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:grate_exposed 4", + recipe = { + { "", "mcl_copper:block_exposed", "" }, + { "mcl_copper:block_exposed", "", "mcl_copper:block_exposed" }, + { "", "mcl_copper:block_exposed", "" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:waxed_grate_exposed 4", + recipe = { + { "", "mcl_copper:waxed_block_exposed", "" }, + { "mcl_copper:waxed_block_exposed", "", "mcl_copper:waxed_block_exposed" }, + { "", "mcl_copper:waxed_block_exposed", "" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:grate_weathered 4", + recipe = { + { "", "mcl_copper:block_weathered", "" }, + { "mcl_copper:block_weathered", "", "mcl_copper:block_weathered" }, + { "", "mcl_copper:block_weathered", "" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:waxed_grate_weathered 4", + recipe = { + { "", "mcl_copper:waxed_block_weathered", "" }, + { "mcl_copper:waxed_block_weathered", "", "mcl_copper:waxed_block_weathered" }, + { "", "mcl_copper:waxed_block_weathered", "" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:grate_oxidized 4", + recipe = { + { "", "mcl_copper:block_oxidized", "" }, + { "mcl_copper:block_oxidized", "", "mcl_copper:block_oxidized" }, + { "", "mcl_copper:block_oxidized", "" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:waxed_grate_oxidized 4", + recipe = { + { "", "mcl_copper:waxed_block_oxidized", "" }, + { "mcl_copper:waxed_block_oxidized", "", "mcl_copper:waxed_block_oxidized" }, + { "", "mcl_copper:waxed_block_oxidized", "" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:chiseled 1", + recipe = { + { "mcl_stairs:slab_copper_cut" }, + { "mcl_stairs:slab_copper_cut" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:waxed_chiseled 1", + recipe = { + { "mcl_stairs:slab_waxed_copper_cut" }, + { "mcl_stairs:slab_waxed_copper_cut" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:chiseled_exposed 1", + recipe = { + { "mcl_stairs:slab_copper_exposed_cut" }, + { "mcl_stairs:slab_copper_exposed_cut" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:waxed_chiseled_exposed 1", + recipe = { + { "mcl_stairs:slab_waxed_copper_exposed_cut" }, + { "mcl_stairs:slab_waxed_copper_exposed_cut" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:chiseled_weathered 1", + recipe = { + { "mcl_stairs:slab_copper_weathered_cut" }, + { "mcl_stairs:slab_copper_weathered_cut" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:waxed_chiseled_weathered 1", + recipe = { + { "mcl_stairs:slab_waxed_copper_weathered_cut" }, + { "mcl_stairs:slab_waxed_copper_weathered_cut" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:chiseled_oxidized 1", + recipe = { + { "mcl_stairs:slab_copper_oxidized_cut" }, + { "mcl_stairs:slab_copper_oxidized_cut" } + } +}) + +minetest.register_craft({ + output = "mcl_copper:waxed_chiseled_oxidized 1", + recipe = { + { "mcl_stairs:slab_waxed_copper_oxidized_cut" }, + { "mcl_stairs:slab_waxed_copper_oxidized_cut" } + } +}) + +local waxable_blocks = { + "block", + "cut", + "grate", + "chiseled", + "block_exposed", + "cut_exposed", + "grate_exposed", + "chiseled_exposed", + "block_weathered", + "cut_weathered", + "grate_weathered", + "chiseled_weathered", + "block_oxidized", + "cut_oxidized", + "grate_oxidized", + "chiseled_oxidized" +} for _, w in ipairs(waxable_blocks) do minetest.register_craft({ @@ -59,10 +244,22 @@ for _, w in ipairs(waxable_blocks) do }) end -local cuttable_blocks = { "block", "waxed_block", "block_exposed", "waxed_block_exposed", "block_weathered", "waxed_block_weathered", "block_oxidized", "waxed_block_oxidized" } +local cuttable_blocks = { + "block", + "waxed_block", + "block_exposed", + "waxed_block_exposed", + "block_weathered", + "waxed_block_weathered", + "block_oxidized", + "waxed_block_oxidized" +} for _, c in ipairs(cuttable_blocks) do - mcl_stonecutter.register_recipe("mcl_copper:"..c, "mcl_copper:"..c.."_cut", 4) + mcl_stonecutter.register_recipe("mcl_copper:"..c, "mcl_copper:"..c:gsub("block", "cut"), 4) + mcl_stonecutter.register_recipe("mcl_copper:"..c, "mcl_copper:"..c:gsub("block", "grate"), 4) + mcl_stonecutter.register_recipe("mcl_copper:"..c, "mcl_copper:"..c:gsub("block", "chiseled"), 4) + mcl_stonecutter.register_recipe("mcl_copper:"..c:gsub("block", "cut"), "mcl_copper:"..c:gsub("block", "chiseled"), 1) end minetest.register_craft({ diff --git a/mods/ITEMS/mcl_copper/descriptions.lua b/mods/ITEMS/mcl_copper/descriptions.lua new file mode 100644 index 000000000..2d5ad228f --- /dev/null +++ b/mods/ITEMS/mcl_copper/descriptions.lua @@ -0,0 +1,89 @@ +mcl_copper.copper_descs = { + ["block"] = { + "Block of Copper", "Waxed Block of Copper", + "Exposed Copper", "Waxed Exposed Copper", + "Weathered Copper", "Waxed Weathered Copper", + "Oxidized Copper", "Waxed Oxidized Copper" + }, + ["cut"] = { + "Cut Copper", "Waxed Cut Copper", + "Exposed Cut Copper", "Waxed Exposed Cut Copper", + "Weathered Cut Copper", "Waxed Weathered Cut Copper", + "Oxidized Cut Copper", "Waxed Oxidized Cut Copper" + }, + ["grate"] = { + "Copper Grate", "Waxed Copper Grate", + "Exposed Copper Grate", "Waxed Exposed Copper Grate", + "Weathered Copper Grate", "Waxed Weathered Copper Grate", + "Oxidized Copper Grate", "Waxed Oxidized Copper Grate" + }, + ["chiseled"] = { + "Chiseled Copper", "Waxed Chiseled Copper", + "Exposed Chiseled Copper", "Waxed Exposed Chiseled Copper", + "Weathered Chiseled Copper", "Waxed Weathered Chiseled Copped", + "Oxidized Chiseled Copper", "Waxed Oxidized Chiseled Copper" + } +} + +mcl_copper.copper_longdescs = { + ["block"] = { + "A block of copper is mostly a decorative block.", + "Exposed copper is a decorative block.", + "Weathered copper is a decorative block.", + "Oxidized copper is a decorative block." + }, + ["cut"] = { + "Cut copper is a decorative block.", + "Exposed cut copper is a decorative block.", + "Weathered cut copper is a decorative block.", + "Oxidized cut copper is a decorative block." + }, + ["grate"] = { + "Copper grate is a decorative block.", + "Exposed copper grate is a decorative block.", + "Weathered copper grate is a decorative block.", + "Oxidized copper grate is a decorative block." + }, + ["chiseled"] = { + "Chiseled copper is a decorative block.", + "Exposed chiseled copper is a decorative block.", + "Weathered chiseled copper is a decorative block.", + "Oxidized chiseled copper is a decorative block." + } +} + +mcl_copper.stairs_subnames = { + ["cut"] = { + "copper_cut", "waxed_copper_cut", + "copper_exposed_cut", "waxed_copper_exposed_cut", + "copper_weathered_cut", "waxed_copper_weathered_cut", + "copper_oxidized_cut", "waxed_copper_oxidized_cut" + } +} + +mcl_copper.stairs_descs = { + ["copper_cut"] = { + "Slab of Cut Copper", "Double Slab of Cut Copper", "Stairs of Cut Copper", + }, + ["waxed_copper_cut"] = { + "Waxed Slab of Cut Copper", "Waxed Double Slab of Cut Copper", "Waxed Stairs of Cut Copper", + }, + ["copper_exposed_cut"] = { + "Slab of Exposed Cut Copper", "Double Slab of Exposed Cut Copper", "Stairs of Exposed Cut waxed_copper_oxidized_cut" + }, + ["waxed_copper_exposed_cut"] = { + "Waxed Slab of Exposed Cut Copper", "Waxed Double Slab of Exposed Cut Copper", "Stairs of Exposed Cut Copper" + }, + ["copper_weathered_cut"] = { + "Slab of Weathered Cut Copper", "Double Slab of Weathered Cut Copper", "Stairs of Weathered Cut Copper" + }, + ["waxed_copper_weathered_cut"] = { + "Waxed Slab of Weathered Cut Copper", "Waxed Double Slab of Weathered Cut Copper", "Waxed Stairs of Weathered Cut Copper" + }, + ["copper_oxidized_cut"] = { + "Slab of Oxidized Cut Copper", "Double Slab of Oxidized Cut Copper", "Stairs of Oxidized Cut Copper" + }, + ["waxed_copper_oxidized_cut"] = { + "Waxed Slab of Oxidized Cut Copper", "Waxed Double Slab of Oxidized Cut Copper", "Waxed Stairs of Oxidized Cut Copper" + } +} diff --git a/mods/ITEMS/mcl_copper/init.lua b/mods/ITEMS/mcl_copper/init.lua index 01ece6d54..e300f9143 100644 --- a/mods/ITEMS/mcl_copper/init.lua +++ b/mods/ITEMS/mcl_copper/init.lua @@ -2,6 +2,7 @@ local path = minetest.get_modpath("mcl_copper") mcl_copper = {} -- initialize global variable. +dofile(path .. "/descriptions.lua") dofile(path .. "/nodes.lua") dofile(path .. "/items.lua") dofile(path .. "/crafting.lua") diff --git a/mods/ITEMS/mcl_copper/nodes.lua b/mods/ITEMS/mcl_copper/nodes.lua index af5a49a1c..2b1fa89b7 100644 --- a/mods/ITEMS/mcl_copper/nodes.lua +++ b/mods/ITEMS/mcl_copper/nodes.lua @@ -1,5 +1,74 @@ local S = minetest.get_translator("mcl_copper") +function mcl_copper.register_copper_variants(name, definitions) + local oxidized_variant, stripped_variant, waxed_variant + local groups = table.copy(definitions.groups) + local names = { + name, "waxed_"..name, + name.."_exposed", "waxed_"..name.."_exposed", + name.."_weathered", "waxed_"..name.."_weathered", + name.."_oxidized", "waxed_"..name.."_oxidized" + } + local tiles = { + "mcl_copper_"..name..".png", + "mcl_copper_"..name.."_exposed.png", + "mcl_copper_"..name.."_weathered.png", + "mcl_copper_"..name.."_oxidized.png" + } + + for i = 1, #names do + if names[i]:find("waxed") then + groups.waxed = 1 + stripped_variant = "mcl_copper:"..names[i-1] + else + if not names[i]:find("oxidized") then + groups.oxidizable = 1 + oxidized_variant = "mcl_copper:"..names[i+2] + end + if i ~= 1 then + stripped_variant = "mcl_copper:"..names[i-2] + end + waxed_variant = "mcl_copper:"..names[i+1] + end + + minetest.register_node("mcl_copper:"..names[i], { + description = S(mcl_copper.copper_descs[name][i]), + drawtype = definitions.drawtype or "normal", + groups = groups, + is_ground_content = false, + light_source = nil, + paramtype = definitions.paramtype or "none", + paramtype2 = definitions.paramtype2 or "none", + sounds = mcl_sounds.node_sound_metal_defaults(), + sunlight_propagates = definitions.sunlight_propagates or false, + tiles = {tiles[math.ceil(i/2)]}, + _doc_items_longdesc = S(mcl_copper.copper_longdescs[name][math.ceil(i/2)]), + _mcl_blast_resistance = 6, + _mcl_hardness = 3, + _mcl_oxidized_variant = oxidized_variant, + _mcl_stripped_variant = stripped_variant, + _mcl_waxed_variant = waxed_variant, + }) + + if definitions._mcl_stairs then + local subname = mcl_copper.stairs_subnames[name][i] + groups.building_block = 0 + + mcl_stairs.register_slab(subname, "mcl_copper:"..names[i], + groups, {tiles[math.ceil(i/2)], tiles[math.ceil(i/2)], tiles[math.ceil(i/2)]}, + S(mcl_copper.stairs_descs[subname][1]), nil, nil, nil, + S(mcl_copper.stairs_descs[subname][2]) + ) + + mcl_stairs.register_stair(subname, "mcl_copper:"..names[i], + groups, {tiles[math.ceil(i/2)], tiles[math.ceil(i/2)], tiles[math.ceil(i/2)], + tiles[math.ceil(i/2)], tiles[math.ceil(i/2)], tiles[math.ceil(i/2)]}, + S(mcl_copper.stairs_descs[subname][3]), nil, nil, nil, "woodlike" + ) + end + end +end + minetest.register_node("mcl_copper:stone_with_copper", { description = S("Copper Ore"), _doc_items_longdesc = S("Some copper contained in stone, it is pretty common and can be found below sea level."), @@ -17,326 +86,27 @@ minetest.register_node("mcl_copper:stone_with_copper", { minetest.register_node("mcl_copper:block_raw", { description = S("Block of Raw Copper"), _doc_items_longdesc = S("A block used for compact raw copper storage."), - tiles = {"mcl_copper_block_raw.png"}, + tiles = {"mcl_copper_raw_block.png"}, is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, blast_furnace_smeltable = 1 }, + groups = {pickaxey = 2, building_block = 1, blast_furnace_smeltable = 1}, sounds = mcl_sounds.node_sound_metal_defaults(), _mcl_blast_resistance = 6, _mcl_hardness = 5, }) -minetest.register_node("mcl_copper:block", { - description = S("Block of Copper"), - _doc_items_longdesc = S("A block of copper is mostly a decorative block."), - tiles = {"mcl_copper_block.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, oxidizable = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 3, - _mcl_oxidized_variant = "mcl_copper:block_exposed", - _mcl_waxed_variant = "mcl_copper:waxed_block", -}) - -minetest.register_node("mcl_copper:waxed_block", { - description = S("Waxed Block of Copper"), - _doc_items_longdesc = S("A block of copper is mostly a decorative block."), - tiles = {"mcl_copper_block.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, waxed = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 3, - _mcl_stripped_variant = "mcl_copper:block", -}) - -minetest.register_node("mcl_copper:block_exposed", { - description = S("Exposed Copper"), - _doc_items_longdesc = S("Exposed copper is a decorative block."), - tiles = {"mcl_copper_exposed.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, oxidizable = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_oxidized_variant = "mcl_copper:block_weathered", - _mcl_waxed_variant = "mcl_copper:waxed_block_exposed", - _mcl_stripped_variant = "mcl_copper:block", -}) - -minetest.register_node("mcl_copper:waxed_block_exposed", { - description = S("Waxed Exposed Copper"), - _doc_items_longdesc = S("Exposed copper is a decorative block."), - tiles = {"mcl_copper_exposed.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, waxed = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_stripped_variant = "mcl_copper:block_exposed", -}) - -minetest.register_node("mcl_copper:block_weathered", { - description = S("Weathered Copper"), - _doc_items_longdesc = S("Weathered copper is a decorative block."), - tiles = {"mcl_copper_weathered.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, oxidizable = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_oxidized_variant = "mcl_copper:block_oxidized", - _mcl_waxed_variant = "mcl_copper:waxed_block_weathered", - _mcl_stripped_variant = "mcl_copper:block_exposed", -}) - -minetest.register_node("mcl_copper:waxed_block_weathered", { - description = S("Waxed Weathered Copper"), - _doc_items_longdesc = S("Weathered copper is a decorative block."), - tiles = {"mcl_copper_weathered.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, waxed = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_stripped_variant = "mcl_copper:block_weathered", -}) - -minetest.register_node("mcl_copper:block_oxidized", { - description = S("Oxidized Copper"), - _doc_items_longdesc = S("Oxidized copper is a decorative block."), - tiles = {"mcl_copper_oxidized.png"}, - is_ground_content = false, +mcl_copper.register_copper_variants("block", { groups = {pickaxey = 2, building_block = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_waxed_variant = "mcl_copper:waxed_block_oxidized", - _mcl_stripped_variant = "mcl_copper:block_weathered", + --_mcl_doors = true, }) - -minetest.register_node("mcl_copper:waxed_block_oxidized", { - description = S("Waxed Oxidized Copper"), - _doc_items_longdesc = S("Oxidized copper is a decorative block."), - tiles = {"mcl_copper_oxidized.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, waxed = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_stripped_variant = "mcl_copper:block_oxidized", -}) - -minetest.register_node("mcl_copper:block_cut", { - description = S("Cut Copper"), - _doc_items_longdesc = S("Cut copper is a decorative block."), - tiles = {"mcl_copper_block_cut.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, oxidizable = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_oxidized_variant = "mcl_copper:block_exposed_cut", - _mcl_waxed_variant = "mcl_copper:waxed_block_cut", -}) - -minetest.register_node("mcl_copper:waxed_block_cut", { - description = S("Waxed Cut Copper"), - _doc_items_longdesc = S("Cut copper is a decorative block."), - tiles = {"mcl_copper_block_cut.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, waxed = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_stripped_variant = "mcl_copper:block_cut", -}) - -minetest.register_node("mcl_copper:block_exposed_cut", { - description = S("Exposed Cut Copper"), - _doc_items_longdesc = S("Exposed cut copper is a decorative block."), - tiles = {"mcl_copper_exposed_cut.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, oxidizable = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_waxed_variant = "mcl_copper:waxed_block_exposed_cut", - _mcl_oxidized_variant = "mcl_copper:block_weathered_cut", - _mcl_stripped_variant = "mcl_copper:block_cut", -}) - -minetest.register_node("mcl_copper:waxed_block_exposed_cut", { - description = S("Waxed Exposed Cut Copper"), - _doc_items_longdesc = S("Exposed cut copper is a decorative block."), - tiles = {"mcl_copper_exposed_cut.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, waxed = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_stripped_variant = "mcl_copper:block_exposed_cut", -}) - -minetest.register_node("mcl_copper:block_weathered_cut", { - description = S("Weathered Cut Copper"), - _doc_items_longdesc = S("Weathered cut copper is a decorative block."), - tiles = {"mcl_copper_weathered_cut.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, oxidizable = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_stripped_variant = "mcl_copper:block_exposed_cut", - _mcl_oxidized_variant = "mcl_copper:block_oxidized_cut", - _mcl_waxed_variant = "mcl_copper:waxed_block_weathered_cut", -}) - -minetest.register_node("mcl_copper:waxed_block_weathered_cut", { - description = S("Waxed Weathered Cut Copper"), - _doc_items_longdesc = S("Weathered cut copper is a decorative block."), - tiles = {"mcl_copper_weathered_cut.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, waxed = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_stripped_variant = "mcl_copper:block_weathered_cut", -}) - -minetest.register_node("mcl_copper:block_oxidized_cut", { - description = S("Oxidized Cut Copper"), - _doc_items_longdesc = S("Oxidized cut copper is a decorative block."), - tiles = {"mcl_copper_oxidized_cut.png"}, - is_ground_content = false, +mcl_copper.register_copper_variants("cut", { groups = {pickaxey = 2, building_block = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_stripped_variant = "mcl_copper:block_weathered_cut", - _mcl_waxed_variant = "mcl_copper:waxed_block_oxidized_cut", + _mcl_stairs = true, }) - -minetest.register_node("mcl_copper:waxed_block_oxidized_cut", { - description = S("Waxed Oxidized Cut Copper"), - _doc_items_longdesc = S("Oxidized cut copper is a decorative block."), - tiles = {"mcl_copper_oxidized_cut.png"}, - is_ground_content = false, - groups = {pickaxey = 2, building_block = 1, waxed = 1}, - sounds = mcl_sounds.node_sound_metal_defaults(), - _mcl_blast_resistance = 6, - _mcl_hardness = 5, - _mcl_stripped_variant = "mcl_copper:block_oxidized_cut", +mcl_copper.register_copper_variants("grate", { + drawtype = "allfaces", + groups = {pickaxey = 2, building_block = 1, disable_suffocation = 1}, + sunlight_propagates = true, +}) +mcl_copper.register_copper_variants("chiseled", { + groups = {pickaxey = 2, building_block = 1} }) - -mcl_stairs.register_slab("copper_cut", "mcl_copper:block_cut", - {pickaxey = 2, oxidizable = 1}, - {"mcl_copper_block_cut.png", "mcl_copper_block_cut.png", "mcl_copper_block_cut.png"}, - S("Slab of Cut Copper"), - nil, nil, nil, - S("Double Slab of Cut Copper")) - -mcl_stairs.register_slab("waxed_copper_cut", "mcl_copper:waxed_block_cut", - {pickaxey = 2, waxed = 1}, - {"mcl_copper_block_cut.png", "mcl_copper_block_cut.png", "mcl_copper_block_cut.png"}, - S("Waxed Slab of Cut Copper"), - nil, nil, nil, - S("Waxed Double Slab of Cut Copper")) - -mcl_stairs.register_slab("copper_exposed_cut", "mcl_copper:block_exposed_cut", - {pickaxey = 2, oxidizable = 1}, - {"mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png"}, - S("Slab of Exposed Cut Copper"), - nil, nil, nil, - S("Double Slab of Exposed Cut Copper")) - -mcl_stairs.register_slab("waxed_copper_exposed_cut", "mcl_copper:waxed_block_exposed_cut", - {pickaxey = 2, waxed = 1}, - {"mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png"}, - S("Waxed Slab of Exposed Cut Copper"), - nil, nil, nil, - S("Waxed Double Slab of Exposed Cut Copper")) - -mcl_stairs.register_slab("copper_weathered_cut", "mcl_copper:block_weathered_cut", - {pickaxey = 2, oxidizable = 1}, - {"mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png"}, - S("Slab of Weathered Cut Copper"), - nil, nil, nil, - S("Double Slab of Weathered Cut Copper")) - -mcl_stairs.register_slab("waxed_copper_weathered_cut", "mcl_copper:waxed_block_weathered_cut", - {pickaxey = 2, waxed = 1}, - {"mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png"}, - S("Waxed Slab of Weathered Cut Copper"), - nil, nil, nil, - S("Waxed Double Slab of Weathered Cut Copper")) - -mcl_stairs.register_slab("copper_oxidized_cut", "mcl_copper:block_oxidized_cut", - {pickaxey = 2}, - {"mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png"}, - S("Slab of Oxidized Cut Copper"), - nil, nil, nil, - S("Double Slab of Oxidized Cut Copper")) - -mcl_stairs.register_slab("waxed_copper_oxidized_cut", "mcl_copper:waxed_block_oxidized_cut", - {pickaxey = 2, waxed = 1}, - {"mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png"}, - S("Waxed Slab of Oxidized Cut Copper"), - nil, nil, nil, - S("Waxed Double Slab of Oxidized Cut Copper")) - -mcl_stairs.register_stair("copper_cut", "mcl_copper:block_cut", - {pickaxey = 2, oxidizable = 1}, - {"mcl_copper_block_cut.png", "mcl_copper_block_cut.png", "mcl_copper_block_cut.png", "mcl_copper_block_cut.png", "mcl_copper_block_cut.png", "mcl_copper_block_cut.png"}, - S("Stairs of Cut Copper"), - nil, 6, nil, - "woodlike") - -mcl_stairs.register_stair("waxed_copper_cut", "mcl_copper:waxed_block_cut", - {pickaxey = 2, waxed = 1}, - {"mcl_copper_block_cut.png", "mcl_copper_block_cut.png", "mcl_copper_block_cut.png", "mcl_copper_block_cut.png", "mcl_copper_block_cut.png", "mcl_copper_block_cut.png"}, - S("Waxed Stairs of Cut Copper"), - nil, 6, nil, - "woodlike") - -mcl_stairs.register_stair("copper_exposed_cut", "mcl_copper:block_exposed_cut", - {pickaxey = 2, oxidizable = 1}, - {"mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png"}, - S("Stairs of Exposed Cut Copper"), - nil, 6, nil, - "woodlike") - -mcl_stairs.register_stair("waxed_copper_exposed_cut", "mcl_copper:waxed_block_exposed_cut", - {pickaxey = 2, waxed = 1}, - {"mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png", "mcl_copper_exposed_cut.png"}, - S("Waxed Stairs of Exposed Cut Copper"), - nil, 6, nil, - "woodlike") - -mcl_stairs.register_stair("copper_weathered_cut", "mcl_copper:block_weathered_cut", - {pickaxey = 2, oxidizable = 1}, - {"mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png"}, - S("Stairs of Weathered Cut Copper"), - nil, 6, nil, - "woodlike") - -mcl_stairs.register_stair("waxed_copper_weathered_cut", "mcl_copper:waxed_block_weathered_cut", - {pickaxey = 2, waxed = 1}, - {"mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png", "mcl_copper_weathered_cut.png"}, - S("Waxed Stairs of Weathered Cut Copper"), - nil, 6, nil, - "woodlike") - -mcl_stairs.register_stair("copper_oxidized_cut", "mcl_copper:block_oxidized_cut", - {pickaxey = 2}, - {"mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png"}, - S("Stairs of Oxidized Cut Copper"), - nil, 6, nil, - "woodlike") - -mcl_stairs.register_stair("waxed_copper_oxidized_cut", "mcl_copper:waxed_block_oxidized_cut", - {pickaxey = 2, waxed = 1}, - {"mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png", "mcl_copper_oxidized_cut.png"}, - S("Waxed Stairs of Oxidized Cut Copper"), - nil, 6, nil, - "woodlike") diff --git a/textures/mcl_copper_exposed.png b/textures/mcl_copper_block_exposed.png similarity index 100% rename from textures/mcl_copper_exposed.png rename to textures/mcl_copper_block_exposed.png diff --git a/textures/mcl_copper_oxidized.png b/textures/mcl_copper_block_oxidized.png similarity index 100% rename from textures/mcl_copper_oxidized.png rename to textures/mcl_copper_block_oxidized.png diff --git a/textures/mcl_copper_weathered.png b/textures/mcl_copper_block_weathered.png similarity index 100% rename from textures/mcl_copper_weathered.png rename to textures/mcl_copper_block_weathered.png diff --git a/textures/mcl_copper_chiseled.png b/textures/mcl_copper_chiseled.png new file mode 100644 index 000000000..43d7c65be Binary files /dev/null and b/textures/mcl_copper_chiseled.png differ diff --git a/textures/mcl_copper_chiseled_exposed.png b/textures/mcl_copper_chiseled_exposed.png new file mode 100644 index 000000000..862e94c64 Binary files /dev/null and b/textures/mcl_copper_chiseled_exposed.png differ diff --git a/textures/mcl_copper_chiseled_oxidized.png b/textures/mcl_copper_chiseled_oxidized.png new file mode 100644 index 000000000..2f3b1fa6e Binary files /dev/null and b/textures/mcl_copper_chiseled_oxidized.png differ diff --git a/textures/mcl_copper_chiseled_weathered.png b/textures/mcl_copper_chiseled_weathered.png new file mode 100644 index 000000000..5b7b72187 Binary files /dev/null and b/textures/mcl_copper_chiseled_weathered.png differ diff --git a/textures/mcl_copper_block_cut.png b/textures/mcl_copper_cut.png similarity index 100% rename from textures/mcl_copper_block_cut.png rename to textures/mcl_copper_cut.png diff --git a/textures/mcl_copper_exposed_cut.png b/textures/mcl_copper_cut_exposed.png similarity index 100% rename from textures/mcl_copper_exposed_cut.png rename to textures/mcl_copper_cut_exposed.png diff --git a/textures/mcl_copper_oxidized_cut.png b/textures/mcl_copper_cut_oxidized.png similarity index 100% rename from textures/mcl_copper_oxidized_cut.png rename to textures/mcl_copper_cut_oxidized.png diff --git a/textures/mcl_copper_weathered_cut.png b/textures/mcl_copper_cut_weathered.png similarity index 100% rename from textures/mcl_copper_weathered_cut.png rename to textures/mcl_copper_cut_weathered.png diff --git a/textures/mcl_copper_grate.png b/textures/mcl_copper_grate.png new file mode 100644 index 000000000..620f6fc86 Binary files /dev/null and b/textures/mcl_copper_grate.png differ diff --git a/textures/mcl_copper_grate_exposed.png b/textures/mcl_copper_grate_exposed.png new file mode 100644 index 000000000..8494f3272 Binary files /dev/null and b/textures/mcl_copper_grate_exposed.png differ diff --git a/textures/mcl_copper_grate_oxidized.png b/textures/mcl_copper_grate_oxidized.png new file mode 100644 index 000000000..acced3b56 Binary files /dev/null and b/textures/mcl_copper_grate_oxidized.png differ diff --git a/textures/mcl_copper_grate_weathered.png b/textures/mcl_copper_grate_weathered.png new file mode 100644 index 000000000..e31a8e526 Binary files /dev/null and b/textures/mcl_copper_grate_weathered.png differ diff --git a/textures/mcl_copper_block_raw.png b/textures/mcl_copper_raw_block.png similarity index 100% rename from textures/mcl_copper_block_raw.png rename to textures/mcl_copper_raw_block.png