Merge pull request 'Add deepslate, copper and raw_ores by NO11' (#2141) from deepslate-copper-rawores into master

Reviewed-on: MineClone2/MineClone2#2141
Reviewed-by: AFCMS <afcm.contact@gmail.com>
This commit is contained in:
cora 2022-05-05 00:40:31 +00:00
commit 6674684998
52 changed files with 1159 additions and 0 deletions

View File

@ -0,0 +1,7 @@
# MineClone2 Copper
### by NO11
Adds copper ore, blocks and items.
![screenshot](./screenshot.png)

View File

@ -0,0 +1,76 @@
minetest.register_craft({
output = "mcl_copper:block_raw",
recipe = {
{ "mcl_copper:raw_copper", "mcl_copper:raw_copper", "mcl_copper:raw_copper" },
{ "mcl_copper:raw_copper", "mcl_copper:raw_copper", "mcl_copper:raw_copper" },
{ "mcl_copper:raw_copper", "mcl_copper:raw_copper", "mcl_copper:raw_copper" },
},
})
minetest.register_craft({
output = "mcl_copper:block",
recipe = {
{ "mcl_copper:copper_ingot", "mcl_copper:copper_ingot" },
{ "mcl_copper:copper_ingot", "mcl_copper:copper_ingot" },
},
})
minetest.register_craft({
output = "mcl_copper:block_cut 4",
recipe = {
{ "mcl_copper:block", "mcl_copper:block" },
{ "mcl_copper:block", "mcl_copper:block" },
},
})
minetest.register_craft({
output = "mcl_copper:block_exposed_cut 4",
recipe = {
{ "mcl_copper:block_exposed", "mcl_copper:block_exposed" },
{ "mcl_copper:block_exposed", "mcl_copper:block_exposed" },
},
})
minetest.register_craft({
output = "mcl_copper:block_oxidized_cut 4",
recipe = {
{ "mcl_copper:block_oxidized", "mcl_copper:block_oxidized" },
{ "mcl_copper:block_oxidized", "mcl_copper:block_oxidized" },
},
})
minetest.register_craft({
output = "mcl_copper:mcl_copper:block_weathered_cut 4",
recipe = {
{ "mcl_copper:block_weathered", "mcl_copper:block_weathered" },
{ "mcl_copper:block_weathered", "mcl_copper:block_weathered" },
},
})
minetest.register_craft({
output = "mcl_copper:copper_ingot 4",
recipe = {
{ "mcl_copper:block" },
},
})
minetest.register_craft({
output = "mcl_copper:raw_copper 9",
recipe = {
{ "mcl_copper:block_raw" },
},
})
minetest.register_craft({
type = "cooking",
output = "mcl_copper:copper_ingot",
recipe = "mcl_copper:raw_copper",
cooktime = 10,
})
minetest.register_craft({
type = "cooking",
output = "mcl_copper:copper_ingot",
recipe = "mcl_copper:stone_with_copper",
cooktime = 10,
})

View File

@ -0,0 +1,181 @@
--local deepslate_mod = minetest.get_modpath("mcl_deepslate")
local function register_oxidation_abm(abm_name, node_name, oxidized_variant)
minetest.register_abm({
label = abm_name,
nodenames = {node_name},
interval = 500,
chance = 3,
action = function(pos, node)
minetest.swap_node(pos, {name = oxidized_variant, param2 = node.param2})
end,
})
end
--[[
local stairs = {
{"stair", "exposed", "_inner", "cut_inner"},
{"stair", "weathered", "_inner", "exposed_cut_inner"},
{"stair", "exposed", "_outer", "cut_outer"},
{"stair", "weathered", "_outer", "exposed_cut_outer"},
{"stair", "oxidized", "_outer", "weathered_cut_outer"},
{"stair", "oxidized", "_inner", "weathered_cut_inner"},
{"slab", "exposed", "","cut"},
{"slab", "oxidized", "","weathered_cut"},
{"slab", "weathered", "","exposed_cut"},
{"slab", "exposed", "_top","cut_top"},
{"slab", "oxidized", "_top", "weathered_cut_top"},
{"slab", "weathered", "_top","exposed_cut_top"},
{"slab", "exposed", "_double","cut_double"},
{"slab", "oxidized", "_double","weathered_cut_double"},
{"slab", "weathered", "_double","exposed_cut_double"},
{"stair", "exposed", "","cut"},
{"stair", "oxidized", "", "weathered_cut"},
{"stair", "weathered", "", "exposed_cut"},
}]]
--[[
local function anti_oxidation_particles(pointed_thing)
local pos = pointed_thing.under
minetest.add_particlespawner({
amount = 8,
time = 1,
minpos = {x = pos.x - 1, y = pos.y - 1, z = pos.z - 1},
maxpos = {x = pos.x + 1, y = pos.y + 1, z = pos.z + 1},
minvel = {x = 0, y = 0, z = 0},
maxvel = {x = 0, y = 0, z = 0},
minacc = {x = 0, y = 0, z = 0},
maxacc = {x = 0, y = 0, z = 0},
minexptime = 0.5,
maxexptime = 1,
minsize = 1,
maxsize = 2.5,
collisiondetection = false,
vertical = false,
texture = "mcl_copper_anti_oxidation_particle.png",
glow = 5,
})
end
local function add_wear(placer, itemstack)
if not minetest.is_creative_enabled(placer:get_player_name()) then
local tool = itemstack:get_name()
local wear = mcl_autogroup.get_wear(tool, "axey")
itemstack:add_wear(wear)
end
end
local function anti_oxidation(itemstack, placer, pointed_thing)
if pointed_thing.type ~= "node" then return end
local node = minetest.get_node(pointed_thing.under)
local noddef = minetest.registered_nodes[minetest.get_node(pointed_thing.under).name]
if not placer:get_player_control().sneak and noddef.on_rightclick then
return minetest.item_place(itemstack, placer, pointed_thing)
end
if minetest.is_protected(pointed_thing.under, placer:get_player_name()) then
minetest.record_protection_violation(pointed_thing.under, placer:get_player_name())
return itemstack
end
if noddef._mcl_stripped_variant == nil then
for _, c in pairs(stairs) do
if noddef.name == "mcl_stairs:"..c[1].."_copper_"..c[2].."_cut"..c[3] then
minetest.swap_node(pointed_thing.under, {name="mcl_stairs:"..c[1].."_copper_"..c[4], param2=node.param2})
anti_oxidation_particles(pointed_thing)
add_wear(placer, itemstack)
end
end
if noddef._mcl_anti_oxidation_variant ~= nil then
minetest.swap_node(pointed_thing.under, {name=noddef._mcl_anti_oxidation_variant, param2=node.param2})
anti_oxidation_particles(pointed_thing)
add_wear(placer, itemstack)
end
elseif noddef._mcl_stripped_variant ~= nil then
minetest.swap_node(pointed_thing.under, {name=noddef._mcl_stripped_variant, param2=node.param2})
add_wear(placer, itemstack)
else
return itemstack
end
return itemstack
end
local function register_axe_override(axe_name)
minetest.override_item("mcl_tools:axe_"..axe_name, {
on_place = anti_oxidation,
})
end]]
--[[ Commented out for now because there the discussion how to handle this is ongoing
local stonelike = {"mcl_core:stone", "mcl_core:diorite", "mcl_core:andesite", "mcl_core:granite"}
if not deepslate_mod then
if minetest.settings:get_bool("mcl_generate_ores", true) then
minetest.register_ore({
ore_type = "scatter",
ore = "mcl_copper:stone_with_copper",
wherein = stonelike,
clust_scarcity = 830,
clust_num_ores = 5,
clust_size = 3,
y_min = mcl_vars.mg_overworld_min,
y_max = mcl_worlds.layer_to_y(39),
})
minetest.register_ore({
ore_type = "scatter",
ore = "mcl_copper:stone_with_copper",
wherein = stonelike,
clust_scarcity = 1660,
clust_num_ores = 4,
clust_size = 2,
y_min = mcl_worlds.layer_to_y(40),
y_max = mcl_worlds.layer_to_y(63),
})
end
end
--]]
local block_oxidation = {
{"", "_exposed"},
{"_cut", "_exposed_cut"},
{"_exposed", "_weathered"},
{"_exposed_cut", "_weathered_cut"},
{"_weathered", "_oxidized"},
{"_weathered_cut", "_oxidized_cut"}
}
local stair_oxidation = {
{"slab", "cut", "exposed_cut"},
{"slab", "exposed_cut", "weathered_cut"},
{"slab", "weathered_cut", "oxidized_cut"},
{"slab", "cut_top", "exposed_cut_top"},
{"slab", "exposed_cut_top", "weathered_cut_top"},
{"slab", "weathered_cut_top", "oxidized_cut_double"},
{"slab", "cut_double", "exposed_cut_double"},
{"slab", "exposed_cut_double", "weathered_cut_double"},
{"slab", "weathered_cut_double", "oxidized_cut_double"},
{"stair", "cut", "exposed_cut"},
{"stair", "exposed_cut", "weathered_cut"},
{"stair", "weathered_cut", "oxidized_cut"},
{"stair", "cut_inner", "exposed_cut_inner"},
{"stair", "exposed_cut_inner", "weathered_cut_inner"},
{"stair", "weathered_cut_inner", "oxidized_cut_inner"},
{"stair", "cut_outer", "exposed_cut_outer"},
{"stair", "exposed_cut_outer", "weathered_cut_outer"},
{"stair", "weathered_cut_outer", "oxidized_cut_outer"}
}
for _, b in pairs(block_oxidation) do
register_oxidation_abm("Copper oxidation", "mcl_copper:block"..b[1], "mcl_copper:block"..b[2])
end
for _, s in pairs(stair_oxidation) do
register_oxidation_abm("Copper oxidation", "mcl_stairs:"..s[1].."_copper_"..s[2], "mcl_stairs:"..s[1].."_copper_"..s[3])
end
--local axes = {"wood", "stone", "iron", "gold", "diamond"}
--[[
for _, axe in pairs(axes) do
register_axe_override(axe)
end
]]

View File

@ -0,0 +1,6 @@
local path = minetest.get_modpath("mcl_copper")
dofile(path .. "/nodes.lua")
dofile(path .. "/items.lua")
dofile(path .. "/crafting.lua")
dofile(path .. "/functions.lua")

View File

@ -0,0 +1,15 @@
local S = minetest.get_translator("mcl_copper")
minetest.register_craftitem("mcl_copper:copper_ingot", {
description = S("Copper Ingot"),
_doc_items_longdesc = S("Molten Raw Copper. It is used to craft blocks."),
inventory_image = "mcl_copper_ingot.png",
groups = { craftitem = 1 },
})
minetest.register_craftitem("mcl_copper:raw_copper", {
description = S("Raw Copper"),
_doc_items_longdesc = S("Raw Copper. Mine a Copper Ore to get it."),
inventory_image = "mcl_copper_raw.png",
groups = { craftitem = 1 },
})

View File

@ -0,0 +1,37 @@
# textdomain: mcl_copper
A block of copper is mostly a decorative block.=Ein Kupferblock wird meistens als dekorativer Block verwendet.
A block used for compact raw copper storage.=Ein Block für die kompakte Lagerung von Rohkupfer.
Block of Copper=Kupferblock
Block of Raw Copper=Rohkupferblock
Copper Ingot=Kupfer Barren
Copper Ore=Kupfererz
Cut copper is a decorative block.=Ein Geschnittener Kupferblock ist ein dekorativer Block.
Cut Copper=Geschnittener Kupferblock
Double Slab of Cut Copper=Doppelte Geschnittene Kupferstufe
Double Slab of Exposed Cut Copper=Doppelte Angelaufene Geschnittene Kupferstufe
Double Slab of Oxidized Cut Copper=Doppelte Oxidierte Geschnittene Kupferstufe
Double Slab of Weathered Cut Copper=Doppelte Verwitterte Geschnittene Kupferstufe
Exposed copper is a decorative block.=Ein Angelaufener Kupferblock ist ein dekorativer Block.
Exposed Copper=Angelaufener Kupferblock
Exposed cut copper is a decorative block.=Ein Angelaufener geschnittener Kupferblock ist ein dekorativer Block.
Exposed Cut Copper=Angelaufener geschnittener Kupferblock
Molten Raw Copper. It is used to craft blocks.=Geschmolzenes Rohkupfer. Es wird verwendet, um Blöcke herzustellen.
Oxidized copper is a decorative block.=Ein Oxidierter Kupferblockist ist ein dekorativer Block.
Oxidized Copper=Oxidierter Kupferblock
Oxidized cut copper is a decorative block.=Ein Oxidierter geschnittener Kupferblock ist ein dekorativer Block.
Oxidized Cut Copper=Oxidierter geschnittener Kupferblock
Raw Copper. Mine a Copper Ore to get it.=Bauen sie ein Kupfererz ab, um es zu erhalten.
Raw Copper=Rohkupfer
Slab of Cut Copper=Geschnittene Kupferstufe
Slab of Exposed Cut Copper=Angelaufene Geschnittene Kupferstufe
Slab of Oxidized Cut Copper=Oxidierte Geschnittene Kupferstufe
Slab of Weathered Cut Copper=Verwitterte Geschnittene Kupferstufe
Some copper contained in stone, it is pretty common and can be found below sea level.=Stein, in dem etwas Kupfer enthalten ist. Es ist ziemlich häufig und kann unter dem Meeresspiegel gefunden werden.
Stairs of Cut Copper=Geschnittene Kupfertreppe
Stairs of Exposed Cut Copper=Angelaufene Geschnittene Kupfertreppe
Stairs of Oxidized Cut Copper=Oxidierte Geschnittene Kupfertreppe
Stairs of Weathered Cut Copper=Verwitterte Geschnittene Kupfertreppe
Weathered copper is a decorative block.=Ein Verwitterter Kupferblock ist ein dekorativer Block.
Weathered Copper=Verwitterter Kupferblock
Weathered cut copper is a decorative block.=Ein Verwitterter geschnittener Kupferblock ist ein dekorativer Block.
Weathered Cut Copper=Verwitterter geschnittener Kupferblock

View File

@ -0,0 +1,37 @@
# textdomain: mcl_copper
A block of copper is mostly a decorative block.=
A block used for compact raw copper storage.=
Block of Copper=
Block of Raw Copper=
Copper Ingot=
Copper Ore=
Cut copper is a decorative block.=
Cut Copper=
Double Slab of Cut Copper=
Double Slab of Exposed Cut Copper=
Double Slab of Oxidized Cut Copper=
Double Slab of Weathered Cut Copper=
Exposed copper is a decorative block.=
Exposed Copper=
Exposed cut copper is a decorative block.=
Exposed Cut Copper=
Molten Raw Copper. It is used to craft blocks.=
Oxidized copper is a decorative block.=
Oxidized Copper=
Oxidized cut copper is a decorative block.=
Oxidized Cut Copper=
Raw Copper. Mine a Copper Ore to get it.=
Raw Copper=
Slab of Cut Copper=
Slab of Exposed Cut Copper=
Slab of Oxidized Cut Copper=
Slab of Weathered Cut Copper=
Some copper contained in stone, it is pretty common and can be found below sea level.=
Stairs of Cut Copper=
Stairs of Exposed Cut Copper=
Stairs of Oxidized Cut Copper=
Stairs of Weathered Cut Copper=
Weathered copper is a decorative block.=
Weathered Copper=
Weathered cut copper is a decorative block.=
Weathered Cut Copper=

View File

@ -0,0 +1,4 @@
name = mcl_copper
author = NO11
depends = mcl_core, mcl_sounds, mcl_stairs
description = Adds Copper Ore, blocks and items.

View File

@ -0,0 +1,177 @@
local S = minetest.get_translator("mcl_copper")
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."),
tiles = {"default_stone.png^mcl_copper_ore.png"},
is_ground_content = true,
groups = {pickaxey = 3, building_block = 1, material_stone = 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,
})
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"},
is_ground_content = false,
groups = {pickaxey = 2, building_block = 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},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
})
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},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
_mcl_anti_oxidation_varient = "mcl_copper:block",
})
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,
groups = {pickaxey = 2, building_block = 1},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
_mcl_anti_oxidation_varient = "mcl_copper:block_weathered",
})
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},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
_mcl_anti_oxidation_varient = "mcl_copper:block_exposed",
})
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},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
})
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},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
_mcl_anti_oxidation_varient = "mcl_copper:block_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,
groups = {pickaxey = 2, building_block = 1},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
_mcl_anti_oxidation_varient = "mcl_copper:block_weathered_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},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
_mcl_anti_oxidation_varient = "mcl_copper:block_exposed_cut",
})
mcl_stairs.register_slab("copper_cut", "mcl_copper:block_cut",
{pickaxey = 2},
{"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("copper_exposed_cut", "mcl_copper:block_exposed_cut",
{pickaxey = 2},
{"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("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("copper_weathered_cut", "mcl_copper:block_weathered_cut",
{pickaxey = 2},
{"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_stair("copper_cut", "mcl_copper:block_cut",
{pickaxey = 2},
{"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("copper_exposed_cut", "mcl_copper:block_exposed_cut",
{pickaxey = 2},
{"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("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("copper_weathered_cut", "mcl_copper:block_weathered_cut",
{pickaxey = 2},
{"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")

Binary file not shown.

After

Width:  |  Height:  |  Size: 215 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

View File

@ -0,0 +1,15 @@
# Mineclone2 New Ores and Deepslate
by NO11
This mod adds Deepslate to the Minetest game Mineclone2, which Minecraft adds in version 1.17.
Find new ores or build something from the 30 new blocks! Deepslate is generated directly above the lava layer in overworld.
Important: You need my "Mineclone2 Raw Ores" mod for this mod to work!
All other dependencies are automatically in the mineclone2 game.
Optionally use "Mineclone2 Copper" to get the deepslate copper ore as well.
You can find all craft recipes for deepslate blocks here: https://minecraft.fandom.com/wiki/Deepslate_(disambiguation)
(just click on the respective block)
Textures are from Pixel Perfection!

View File

@ -0,0 +1,440 @@
local modname = minetest.get_current_modname()
local S = minetest.get_translator(modname)
--local layer_max = mcl_worlds.layer_to_y(16)
--local layer_min = mcl_vars.mg_overworld_min
local copper_mod = minetest.get_modpath("mcl_copper")
local cobble = "mcl_deepslate:deepslate_cobbled"
local stick = "mcl_core:stick"
--[[
local mountains = {
"ExtremeHills", "ExtremeHills_beach", "ExtremeHills_ocean", "ExtremeHills_deep_ocean", "ExtremeHills_underground",
"ExtremeHills+", "ExtremeHills+_ocean", "ExtremeHills+_deep_ocean", "ExtremeHills+_underground",
"ExtremeHillsM", "ExtremeHillsM_ocean", "ExtremeHillsM_deep_ocean", "ExtremeHillsM_underground",
}
]]
minetest.register_node("mcl_deepslate:deepslate", {
description = S("Deepslate"),
_doc_items_longdesc = S("Deepslate is a stone type found deep underground in the Overworld that functions similar to regular stone but is harder than the stone."),
_doc_items_hidden = false,
tiles = { "mcl_deepslate_top.png", "mcl_deepslate_top.png", "mcl_deepslate.png" },
paramtype2 = "facedir",
is_ground_content = true,
on_place = mcl_util.rotate_axis,
groups = { pickaxey = 1, stone = 1, building_block = 1, material_stone = 1 },
drop = cobble,
sounds = mcl_sounds.node_sound_stone_defaults(),
on_rotate = screwdriver.rotate_3way,
_mcl_blast_resistance = 6,
_mcl_hardness = 3,
_mcl_silk_touch_drop = true,
})
local function spawn_silverfish(pos, oldnode, oldmetadata, digger)
if not minetest.is_creative_enabled("") then
minetest.add_entity(pos, "mobs_mc:silverfish")
end
end
minetest.register_node("mcl_deepslate:infested_deepslate", {
description = S("Infested Deepslate"),
_doc_items_longdesc = S("An infested block is a block from which a silverfish will pop out when it is broken. It looks identical to its normal counterpart."),
_tt_help = S("Hides a silverfish"),
tiles = { "mcl_deepslate_top.png", "mcl_deepslate_top.png", "mcl_deepslate.png" },
is_ground_content = true,
groups = { dig_immediate = 3, spawns_silverfish = 1, deco_block = 1 },
drop = "",
sounds = mcl_sounds.node_sound_stone_defaults(),
after_dig_node = spawn_silverfish,
_mcl_hardness = 0,
_mcl_blast_resistance = 0.5,
})
minetest.register_node("mcl_deepslate:tuff", {
description = S("Tuff"),
_doc_items_longdesc = S("Tuff is an ornamental rock formed from volcanic ash, occurring in underground blobs below Y=16."),
_doc_items_hidden = false,
tiles = { "mcl_deepslate_tuff.png" },
groups = { pickaxey = 1, deco_block = 1 },
sounds = mcl_sounds.node_sound_stone_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 1.5,
_mcl_silk_touch_drop = true,
})
local function register_deepslate_ore(desc, drop, cooked, pick, xp)
local item = desc:lower()
local item_string
if item == "lapis lazuli" then
item_string = "lapis"
else
item_string = item
end
local nodename = "mcl_deepslate:deepslate_with_"..item_string
minetest.register_node(nodename, {
description = S("Deepslate "..desc.." Ore"),
_doc_items_longdesc = S("Deepslate "..item.." ore is a variant of "..item.." ore that can generate in deepslate and tuff blobs."),
_doc_items_hidden = false,
tiles = { "mcl_deepslate_"..item_string.."_ore.png" },
is_ground_content = true,
stack_max = 64,
groups = { pickaxey = pick, building_block = 1, material_stone = 1, xp = xp },
drop = drop,
sounds = mcl_sounds.node_sound_stone_defaults(),
_mcl_blast_resistance = 3,
_mcl_hardness = 4.5,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore,
})
minetest.register_craft({
type = "cooking",
output = cooked,
recipe = nodename,
cooktime = 10,
})
end
local lapis_drops = {
max_items = 1, items = {
{ items = { "mcl_dye:blue 8" }, rarity = 5 },
{ items = { "mcl_dye:blue 7" }, rarity = 5 },
{ items = { "mcl_dye:blue 6" }, rarity = 5 },
{ items = { "mcl_dye:blue 5" }, rarity = 5 },
{ items = { "mcl_dye:blue 4" } }
}
}
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 },
{ "Diamond", "mcl_core:diamond", "mcl_core:diamond", 4, 4 },
{ "Lapis Lazuli", lapis_drops, "mcl_dye:blue", 3, 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", 4, 4)
end
local redstone_timer = 68.28
local function redstone_ore_activate(pos)
minetest.swap_node(pos, { name = "mcl_deepslate:deepslate_with_redstone_lit" })
local t = minetest.get_node_timer(pos)
t:start(redstone_timer)
end
local function redstone_ore_reactivate(pos)
local t = minetest.get_node_timer(pos)
t:start(redstone_timer)
end
minetest.register_node("mcl_deepslate:deepslate_with_redstone", {
description = S("Deepslate Redstone Ore"),
_doc_items_longdesc = S("Deepslate redstone ore is a variant of redstone ore that can generate in deepslate and tuff blobs."),
tiles = { "mcl_deepslate_redstone_ore.png" },
is_ground_content = true,
groups = { pickaxey = 4, building_block = 1, material_stone = 1, xp = 7 },
drop = {
items = {
max_items = 1,
{ items = { "mesecons:redstone 4" }, rarity = 2 },
{ items = { "mesecons:redstone 5" } },
}
},
sounds = mcl_sounds.node_sound_stone_defaults(),
on_punch = redstone_ore_activate,
on_walk_over = redstone_ore_activate,
_mcl_blast_resistance = 3,
_mcl_hardness = 4.5,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = {
discrete_uniform_distribution = true,
items = { "mesecons:redstone" },
min_count = 4,
max_count = 5,
}
})
minetest.register_node("mcl_deepslate:deepslate_with_redstone_lit", {
description = S("Lit Deepslate Redstone Ore"),
_doc_items_create_entry = false,
tiles = { "mcl_deepslate_redstone_ore.png" },
paramtype = "light",
light_source = 9,
is_ground_content = true,
groups = { pickaxey = 4, not_in_creative_inventory = 1, material_stone = 1, xp = 7 },
drop = {
items = {
max_items = 1,
{ items = { "mesecons:redstone 4" }, rarity = 2 },
{ items = { "mesecons:redstone 5" } },
}
},
sounds = mcl_sounds.node_sound_stone_defaults(),
on_punch = redstone_ore_reactivate,
on_walk_over = redstone_ore_reactivate, -- Uses walkover mod
on_timer = function(pos, _)
minetest.swap_node(pos, { name = "mcl_deepslate:deepslate_with_redstone" })
end,
_mcl_blast_resistance = 3,
_mcl_hardness = 4.5,
_mcl_silk_touch_drop = { "mcl_deepslate:deepslate_with_redstone" },
_mcl_fortune_drop = {
discrete_uniform_distribution = true,
items = { "mesecons:redstone" },
min_count = 4,
max_count = 5,
},
})
minetest.register_craft({
type = "cooking",
output = "mesecons:redstone",
recipe = "mcl_deepslate:deepslate_with_redstone",
cooktime = 10,
})
--[[ Commented out for now because there the discussion how to handle this is ongoing
minetest.register_ore({
ore_type = "blob",
ore = "mcl_deepslate:deepslate",
wherein = { "mcl_core:stone" },
clust_scarcity = 200,
clust_num_ores = 100,
clust_size = 10,
y_min = layer_min,
y_max = layer_max,
noise_params = {
offset = 0,
scale = 1,
spread = { x = 250, y = 250, z = 250 },
seed = 12345,
octaves = 3,
persist = 0.6,
lacunarity = 2,
flags = "defaults",
}
})
minetest.register_ore({
ore_type = "blob",
ore = "mcl_deepslate:tuff",
wherein = { "mcl_core:stone", "mcl_core:diorite", "mcl_core:andesite", "mcl_core:granite", "mcl_deepslate:deepslate" },
clust_scarcity = 10*10*10,
clust_num_ores = 58,
clust_size = 7,
y_min = layer_min,
y_max = layer_max,
noise_params = {
offset = 0,
scale = 1,
spread = {x=250, y=250, z=250},
seed = 12345,
octaves = 3,
persist = 0.6,
lacunarity = 2,
flags = "defaults",
}
})
minetest.register_ore({
ore_type = "scatter",
ore = "mcl_deepslate:infested_deepslate",
wherein = "mcl_deepslate:deepslate",
clust_scarcity = 26 * 26 * 26,
clust_num_ores = 3,
clust_size = 2,
y_min = layer_min,
y_max = layer_max,
biomes = mountains,
})
minetest.register_ore({
ore_type = "scatter",
ore = "mcl_core:water_source",
wherein = "mcl_deepslate:deepslate",
clust_scarcity = 9000,
clust_num_ores = 1,
clust_size = 1,
y_min = mcl_worlds.layer_to_y(5),
y_max = layer_max,
})
minetest.register_ore({
ore_type = "scatter",
ore = "mcl_core:lava_source",
wherein = "mcl_deepslate:deepslate",
clust_scarcity = 2000,
clust_num_ores = 1,
clust_size = 1,
y_min = mcl_worlds.layer_to_y(1),
y_max = mcl_worlds.layer_to_y(10),
})
minetest.register_ore({
ore_type = "scatter",
ore = "mcl_core:lava_source",
wherein = "mcl_deepslate:deepslate",
clust_scarcity = 9000,
clust_num_ores = 1,
clust_size = 1,
y_min = mcl_worlds.layer_to_y(11),
y_max = layer_max,
})
if minetest.settings:get_bool("mcl_generate_ores", true) then
local stonelike = { "mcl_core:stone", "mcl_core:diorite", "mcl_core:andesite", "mcl_core:granite" }
local function register_ore_mg(ore, scarcity, num, size, y_min, y_max, biomes)
biomes = biomes or ""
minetest.register_ore({
ore_type = "scatter",
ore = ore,
wherein = { "mcl_deepslate:deepslate", "mcl_deepslate:tuff" },
clust_scarcity = scarcity,
clust_num_ores = num,
clust_size = size,
y_min = y_min,
y_max = y_max,
biomes = biomes,
})
end
local ore_mapgen = {
{ "coal", 1575, 5, 3, layer_min, layer_max },
{ "coal", 1530, 8, 3, layer_min, layer_max },
{ "coal", 1500, 12, 3, layer_min, layer_max },
{ "iron", 830, 5, 3, layer_min, layer_max },
{ "gold", 4775, 5, 3, layer_min, layer_max },
{ "gold", 6560, 7, 3, layer_min, layer_max },
{ "diamond", 10000, 4, 3, layer_min, mcl_worlds.layer_to_y(12) },
{ "diamond", 5000, 2, 3, layer_min, mcl_worlds.layer_to_y(12) },
{ "diamond", 10000, 8, 3, layer_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, layer_min, mcl_worlds.layer_to_y(13) },
{ "redstone", 800, 7, 4, layer_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), layer_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])
end
if minetest.get_mapgen_setting("mg_name") == "v6" then
register_ore_mg("mcl_deepslate:deepslate_with_emerald", 14340, 1, 1, layer_min, layer_max)
else
register_ore_mg("mcl_deepslate:deepslate_with_emerald", 16384, 1, 1, mcl_worlds.layer_to_y(4), layer_max, mountains)
end
if copper_mod then
register_ore_mg("mcl_deepslate:deepslate_with_copper", 830, 5, 3, layer_min, layer_max)
minetest.register_ore({
ore_type = "scatter",
ore = "mcl_copper:stone_with_copper",
wherein = stonelike,
clust_scarcity = 830,
clust_num_ores = 5,
clust_size = 3,
y_min = mcl_vars.mg_overworld_min,
y_max = mcl_worlds.layer_to_y(39),
})
minetest.register_ore({
ore_type = "scatter",
ore = "mcl_copper:stone_with_copper",
wherein = stonelike,
clust_scarcity = 1660,
clust_num_ores = 4,
clust_size = 2,
y_min = mcl_worlds.layer_to_y(40),
y_max = mcl_worlds.layer_to_y(63),
})
end
end
--]]
local function register_deepslate_variant(item, desc, longdesc)
local texture = desc:lower():gsub("% ", "_")
local def = {
description = S(desc),
_doc_items_longdesc = S(longdesc),
_doc_items_hidden = false,
tiles = { "mcl_"..texture..".png" },
groups = { pickaxey = 1, building_block = 1, material_stone = 1 },
sounds = mcl_sounds.node_sound_stone_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 3.5,
_mcl_silk_touch_drop = true,
}
if item == "cobbled" then
def.groups.cobble = 1
end
minetest.register_node("mcl_deepslate:deepslate_"..item, def)
if item == "bricks" or item == "tiles" then
def.description = S("Cracked "..desc)
def._doc_items_longdesc = S("Cracked "..desc:lower().." are a cracked variant.")
def.tiles = { "mcl_cracked_"..texture..".png" }
minetest.register_node("mcl_deepslate:deepslate_"..item.."_cracked", def)
end
if item ~= "chiseled" then
mcl_stairs.register_stair_and_slab_simple("deepslate_"..item, "mcl_deepslate:deepslate_"..item, S(desc.." Stairs"), S(desc.." Slab"), S("Double "..desc.." Slab"))
mcl_walls.register_wall("mcl_deepslate:deepslate"..item.."wall", S(desc.." Wall"), "mcl_deepslate:deepslate_"..item)
end
end
local deepslate_variants = {
{ "cobbled", "Cobbled Deepslate", "Cobbled deepslate is a stone variant that functions similar to cobblestone or blackstone." },
{ "polished", "Polished Deepslate", "Polished deepslate is the stone-like polished version of deepslate." },
{ "bricks", "Deepslate Bricks", "Deepslate bricks are the brick version of deepslate." },
{ "tiles", "Deepslate Tiles", "Deepslate tiles are a decorative variant of deepslate." },
{ "chiseled", "Chiseled Deepslate", "Chiseled deepslate is the chiseled version of deepslate." },
}
for _, dv in pairs(deepslate_variants) do
register_deepslate_variant(dv[1], dv[2], dv[3])
end
for i = 1, 3 do
local s = "mcl_deepslate:deepslate_"..deepslate_variants[i][1]
minetest.register_craft({
output = "mcl_deepslate:deepslate_"..deepslate_variants[i+1][1].." 4",
recipe = { { s, s }, { s, s } }
})
end
for _, p in pairs({ "bricks", "tiles" }) do
minetest.register_craft({
type = "cooking",
output = "mcl_deepslate:deepslate_"..p.."_cracked",
recipe = "mcl_deepslate:deepslate_"..p,
cooktime = 10,
})
end
minetest.register_craft({
type = "cooking",
output = "mcl_deepslate:deepslate",
recipe = cobble,
cooktime = 10,
})
minetest.register_craft({
output = "mcl_deepslate:deepslate_chiseled",
recipe = {
{ "mcl_stairs:slab_deepslate_cobbled" },
{ "mcl_stairs:slab_deepslate_cobbled" },
},
})

View File

@ -0,0 +1,53 @@
# textdomain: mcl_deepslate
An infested block is a block from which a silverfish will pop out when it is broken. It looks identical to its normal counterpart.=Ein befallener Block ist ein Block, aus dem ein Silberfisch herausspringt, wenn er abgebaut wird. Er sieht genauso aus wie sein normales Gegenstück.
Chiseled deepslate is the chiseled version of deepslate.=Gemeißelter Tiefenschiefer ist die behauene Version von Tiefenschiefer.
Chiseled Deepslate=Gemeißelter Tiefenschiefer
Cobbled deepslate is a stone variant that functions similar to cobblestone or blackstone.=Bruchtiefenschiefer funktioniert ähnlich wie Bruchstein, hat jedoch eine längere Abbauzeit.
Cobbled Deepslate Slab=Bruchtiefenschieferstufe
Cobbled Deepslate Stairs=Bruchtiefenschiefertreppe
Cobbled Deepslate Wall=Bruchtiefenschiefermauer
Cobbled Deepslate=Bruchtiefenschiefer
Cracked Deepslate Bricks=Rissige Tiefenschieferziegel
Cracked Deepslate Tiles=Rissige Tiefenschieferfliesen
Deepslate bricks are the brick version of deepslate.=Tiefenschieferziegel ist eine Variante des Tiefenschiefers. Er kann als dekorativer Block verwendet werden.
Deepslate Bricks Slab=Tiefenschieferziegelstufe
Deepslate Bricks Stairs=Tiefenschieferziegeltreppe
Deepslate Bricks Wall=Tiefenschieferziegelmauer
Deepslate Bricks=Tiefenschieferziegel
Deepslate coal ore is a variant of coal ore that can generate in deepslate and tuff blobs.=Tiefenschiefer-Steinkohle ist eine Variante von Steinkohle, die in Tiefenschiefer und Tuff generiert werden kann.
Deepslate Coal Ore=Tiefenschiefer-Steinkohle
Deepslate copper ore is a variant of copper ore that can generate in deepslate and tuff blobs.=Tiefenschiefer-Kupfererz ist eine Variante von Kupfererz, die in Tiefenschiefer und Tuff generiert werden kann.
Deepslate Copper Ore=Tiefenschiefer-Kupfererz
Deepslate diamond ore is a variant of diamond ore that can generate in deepslate and tuff blobs.=Tiefenschiefer-Diamanterz ist eine Variante von Diamanterz, die in Tiefenschiefer und Tuff generiert werden kann.
Deepslate Diamond Ore=Tiefenschiefer-Diamanterz
Deepslate emerald ore is a variant of emerald ore that can generate in deepslate and tuff blobs.=Tiefenschiefer-Smaragderz ist eine Variante von Smaragderz, die in Tiefenschiefer und Tuff generiert werden kann.
Deepslate Emerald Ore=Tiefenschiefer-Smaragderz
Deepslate gold ore is a variant of gold ore that can generate in deepslate and tuff blobs.=Tiefenschiefer-Golderz ist eine Variante von Golderz, die in Tiefenschiefer und Tuff generiert werden kann.
Deepslate Gold Ore=Tiefenschiefer-Golderz
Deepslate iron ore is a variant of iron ore that can generate in deepslate and tuff blobs.=Tiefenschiefer-Eisenerz ist eine Variante von Eisenerz, die in Tiefenschiefer und Tuff generiert werden kann.
Deepslate Iron Ore=Tiefenschiefer-Eisenerz
Deepslate is a stone type found deep underground in the Overworld that functions similar to regular stone but is harder than the stone.=Tiefenschiefer ist eine Gesteinsart. Er kann als dekorativer Block verwendet und in viele Varianten weiterverarbeitet werden.
Deepslate Lapis Lazuli Ore=Tiefenschiefer-Lapislazulierz
Deepslate lapis ore is a variant of lapis ore that can generate in deepslate and tuff blobs.=Tiefenschiefer-Lapislazulierz ist eine Variante von Lapislazulierz, die in Tiefenschiefer und Tuff generiert werden kann.
Deepslate redstone ore is a variant of redstone ore that can generate in deepslate and tuff blobs.=Tiefenschiefer-Redstone-Erz ist eine Variante von Redstone-Erz, die in Tiefenschiefer und Tuff generiert werden kann.
Deepslate Redstone Ore=Tiefenschiefer-Redstone-Erz
Deepslate tiles are a decorative variant of deepslate.=Tiefenschieferfliesen ist eine Variante des Tiefenschiefers. Der Block kann als dekorativer Block verwendet werden.
Deepslate Tiles Slab=Tiefenschieferfliesenstufe
Deepslate Tiles Stairs=Tiefenschieferfliesentreppe
Deepslate Tiles Wall=Tiefenschieferfliesenmauer
Deepslate Tiles=Tiefenschieferfliesen
Deepslate=Tiefenschiefer
Double Cobbled Deepslate Slab=Doppelte Bruchtiefenschieferstufe
Double Deepslate Bricks Slab=Doppelte Tiefenschieferziegelstufe
Double Deepslate Tiles Slab=Doppelte Tiefenschieferfliesenstufe
Double Polished Deepslate Slab=Doppelte Polierte Tiefenschieferstufe
Hides a silverfish=Versteckt einen Silberfisch
Infested Deepslate=Befallener Tiefenschiefer
Lit Deepslate Redstone Ore=Leuchtendes Tiefschiefer-Redstone-Erz
Polished deepslate is the stone-like polished version of deepslate.=Polierter Tiefenschiefer ist eine Variante des Tiefenschiefers. Er kann als dekorativer Block verwendet werden.
Polished Deepslate Slab=Polierte Tiefenschieferstufe
Polished Deepslate Stairs=Polierte Tiefenschiefertreppe
Polished Deepslate Wall=Polierte Tiefenschiefermauer
Polished Deepslate=Polierter Tiefenschiefer
Tuff=Tuffstein
Tuff is an ornamental rock formed from volcanic ash, occurring in underground blobs below Y=16.=Der Tuffstein ist ein grauer, vulkanischer Block.

View File

@ -0,0 +1,53 @@
# textdomain: mcl_deepslate
An infested block is a block from which a silverfish will pop out when it is broken. It looks identical to its normal counterpart.=
Chiseled deepslate is the chiseled version of deepslate.=
Chiseled Deepslate=
Cobbled deepslate is a stone variant that functions similar to cobblestone or blackstone.=
Cobbled Deepslate Slab=
Cobbled Deepslate Stairs=
Cobbled Deepslate Wall=
Cobbled Deepslate=
Cracked Deepslate Bricks=
Cracked Deepslate Tiles=
Deepslate bricks are the brick version of deepslate.=
Deepslate Bricks Slab=
Deepslate Bricks Stairs=
Deepslate Bricks Wall=
Deepslate Bricks=
Deepslate coal ore is a variant of coal ore that can generate in deepslate and tuff blobs.=
Deepslate Coal Ore=
Deepslate copper ore is a variant of copper ore that can generate in deepslate and tuff blobs.=
Deepslate Copper Ore=
Deepslate diamond ore is a variant of diamond ore that can generate in deepslate and tuff blobs.=
Deepslate Diamond Ore=
Deepslate emerald ore is a variant of emerald ore that can generate in deepslate and tuff blobs.=
Deepslate Emerald Ore=
Deepslate gold ore is a variant of gold ore that can generate in deepslate and tuff blobs.=
Deepslate Gold Ore=
Deepslate iron ore is a variant of iron ore that can generate in deepslate and tuff blobs.=
Deepslate Iron Ore=
Deepslate is a stone type found deep underground in the Overworld that functions similar to regular stone but is harder than the stone.=
Deepslate Lapis Lazuli Ore=
Deepslate lapis ore is a variant of lapis ore that can generate in deepslate and tuff blobs.=
Deepslate redstone ore is a variant of redstone ore that can generate in deepslate and tuff blobs.=
Deepslate Redstone Ore=
Deepslate tiles are a decorative variant of deepslate.=
Deepslate Tiles Slab=
Deepslate Tiles Stairs=
Deepslate Tiles Wall=
Deepslate Tiles=
Deepslate=
Double Cobbled Deepslate Slab=
Double Deepslate Bricks Slab=
Double Deepslate Tiles Slab=
Double Polished Deepslate Slab=
Hides a silverfish=
Infested Deepslate=
Lit Deepslate Redstone Ore=
Polished deepslate is the stone-like polished version of deepslate.=
Polished Deepslate Slab=
Polished Deepslate Stairs=
Polished Deepslate Wall=
Polished Deepslate=
Tuff=
Tuff is an ornamental rock formed from volcanic ash, occurring in underground blobs below Y=16.=

View File

@ -0,0 +1,4 @@
name = mcl_deepslate
author = NO11
depends = mcl_raw_ores, mcl_core, mcl_sounds, mcl_dye, mcl_util, screwdriver, mobs_mc, walkover, mcl_walls, mcl_stairs, mcl_brewing, mcl_mobitems, mcl_furnaces, mcl_farming, mcl_worlds
optional_depends = mcl_copper

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

View File

@ -0,0 +1,50 @@
local function register_raw_ore(description, n)
local ore = description:lower()
local n = n or ""
local raw_ingot = "mcl_raw_ores:raw_"..ore
local texture = "mcl_raw_ores_raw_"..ore
minetest.register_craftitem(raw_ingot, {
description = ("Raw "..description),
_doc_items_longdesc = ("Raw "..ore..". Mine a"..n.." "..ore.." ore to get it."),
inventory_image = texture..".png",
groups = { craftitem = 1 },
})
minetest.register_node(raw_ingot.."_block", {
description = ("Block of Raw "..description),
_doc_items_longdesc = ("A block of raw "..ore.." is mostly a decorative block but also useful as a compact storage of raw "..ore.."."),
tiles = { texture.."_block.png" },
is_ground_content = false,
groups = { pickaxey = 2, building_block = 1 },
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
})
minetest.register_craft({
output = raw_ingot.."_block",
recipe = {
{ raw_ingot, raw_ingot, raw_ingot },
{ raw_ingot, raw_ingot, raw_ingot },
{ raw_ingot, raw_ingot, raw_ingot },
},
})
minetest.register_craft({
type = "cooking",
output = "mcl_core:"..ore.."_ingot",
recipe = raw_ingot,
cooktime = 10,
})
minetest.register_craft({
output = raw_ingot.." 9",
recipe = {
{ raw_ingot.."_block" },
},
})
end
register_raw_ore("Iron", "n")
register_raw_ore("Gold")

View File

@ -0,0 +1,4 @@
name = mcl_raw_ores
author = NO11
depends = mcl_core
description = Adds raw iron and raw gold.

Binary file not shown.

After

Width:  |  Height:  |  Size: 599 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 945 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 694 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 923 B