224 lines
5.2 KiB
Lua
224 lines
5.2 KiB
Lua
|
|
-- Pig Iron Ingot
|
|
|
|
minetest.register_craftitem("pigiron:iron_ingot", {
|
|
description = "Iron Ingot",
|
|
inventory_image = "pigiron_iron_ingot.png",
|
|
})
|
|
|
|
-- Override Iron Lump -> Steel Recipe
|
|
|
|
minetest.register_craft({
|
|
type = "cooking",
|
|
output = "pigiron:iron_ingot",
|
|
recipe = "default:iron_lump",
|
|
})
|
|
|
|
-- Pig Iron Block
|
|
|
|
minetest.register_node("pigiron:iron_block", {
|
|
description = "Iron Block",
|
|
tiles = {"pigiron_iron_block.png"},
|
|
is_ground_content = false,
|
|
groups = {cracky = 1},
|
|
sounds = default.node_sound_metal_defaults(),
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "pigiron:iron_block",
|
|
recipe = {
|
|
{"pigiron:iron_ingot", "pigiron:iron_ingot", "pigiron:iron_ingot"},
|
|
{"pigiron:iron_ingot", "pigiron:iron_ingot", "pigiron:iron_ingot"},
|
|
{"pigiron:iron_ingot", "pigiron:iron_ingot", "pigiron:iron_ingot"},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "pigiron:iron_ingot 9",
|
|
type = "shapeless",
|
|
recipe = {"pigiron:iron_block"}
|
|
})
|
|
|
|
-- Rusted Pig Iron Block
|
|
|
|
minetest.register_node("pigiron:rusted_iron_block", {
|
|
description = "Rusted Iron Block",
|
|
tiles = {"pigiron_rusted_iron_block.png"},
|
|
is_ground_content = false,
|
|
groups = {cracky = 1},
|
|
sounds = default.node_sound_metal_defaults(),
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "pigiron:rusted_iron_block 8",
|
|
recipe = {
|
|
{"pigiron:iron_block", "pigiron:iron_block", "pigiron:iron_block"},
|
|
{"pigiron:iron_block", "bucket:bucket_water", "pigiron:iron_block"},
|
|
{"pigiron:iron_block", "pigiron:iron_block", "pigiron:iron_block"},
|
|
},
|
|
replacements = {
|
|
{"bucket:bucket_water", "bucket:bucket_empty"}
|
|
}
|
|
})
|
|
|
|
-- Cook Rusted Block Into Normal Block
|
|
|
|
minetest.register_craft({
|
|
output = "pigiron:iron_block",
|
|
type = "cooking",
|
|
recipe = "pigiron:rusted_iron_block",
|
|
cooktime = 5
|
|
})
|
|
|
|
-- Charcoal
|
|
|
|
minetest.register_craftitem("pigiron:charcoal_lump", {
|
|
description = "Lump of Charcoal",
|
|
inventory_image = "pigiron_charcoal_lump.png",
|
|
})
|
|
|
|
-- Tree -> Charcoal Recipe
|
|
|
|
minetest.register_craft({
|
|
output = "pigiron:charcoal_lump 2",
|
|
type = "cooking",
|
|
recipe = "group:tree",
|
|
cooktime = 4
|
|
})
|
|
|
|
-- Charcoal Fuel
|
|
|
|
minetest.register_craft({
|
|
type = "fuel",
|
|
recipe = "pigiron:charcoal_lump",
|
|
burntime = 10,
|
|
})
|
|
|
|
-- Charcoal Torch Recipe
|
|
|
|
minetest.register_craft({
|
|
output = "default:torch 4",
|
|
recipe = {
|
|
{"pigiron:charcoal_lump"},
|
|
{"group:stick"},
|
|
}
|
|
})
|
|
|
|
-- Iron/Charcoal Mix
|
|
|
|
minetest.register_craftitem("pigiron:iron_charcoal_mix", {
|
|
description = "Iron and Charcoal Mix",
|
|
inventory_image = "pigiron_iron_ingot.png^pigiron_charcoal_lump.png",
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "pigiron:iron_charcoal_mix",
|
|
type = "shapeless",
|
|
recipe = {
|
|
"pigiron:iron_ingot", "pigiron:charcoal_lump",
|
|
"pigiron:charcoal_lump", "pigiron:charcoal_lump"
|
|
}
|
|
})
|
|
|
|
-- Additional Recipe if Ethereal Found
|
|
if minetest.get_modpath("stairs") then
|
|
|
|
minetest.register_craft({
|
|
output = "pigiron:iron_charcoal_mix",
|
|
type = "shapeless",
|
|
recipe = {
|
|
"pigiron:iron_ingot", "ethereal:charcoal_lump",
|
|
"ethereal:charcoal_lump", "ethereal:charcoal_lump"
|
|
}
|
|
})
|
|
end
|
|
|
|
-- Cook Iron/Charcoal Mix into Steel Ingot
|
|
|
|
minetest.register_craft({
|
|
output = "default:steel_ingot",
|
|
type = "cooking",
|
|
recipe = "pigiron:iron_charcoal_mix",
|
|
cooktime = 10
|
|
})
|
|
|
|
-- Pig Iron Tools / Armor
|
|
|
|
-- Abm to turn Iron Block into Rusted Iron Block
|
|
|
|
minetest.register_abm({
|
|
label = "Rust Iron Block",
|
|
nodenames = {
|
|
"pigiron:iron_block", "stairs:slab_iron_block",
|
|
"stairs:stair_iron_block"
|
|
},
|
|
neighbors = {"group:water"},
|
|
interval = 20,
|
|
chance = 300,
|
|
catch_up = false,
|
|
action = function(pos, node)
|
|
|
|
if node.name == "pigiron:iron_block" then
|
|
minetest.set_node(pos, {name = "pigiron:rusted_iron_block"})
|
|
|
|
elseif node.name == "stairs:slab_iron_block" then
|
|
minetest.set_node(pos, {name = "stairs:slab_rusted_iron_block",
|
|
param2 = node.param2})
|
|
|
|
elseif node.name == "stairs:stair_iron_block" then
|
|
minetest.set_node(pos, {name = "stairs:stair_rusted_iron_block",
|
|
param2 = node.param2})
|
|
end
|
|
end
|
|
})
|
|
|
|
-- Register Stairs
|
|
|
|
if minetest.get_modpath("stairs") then
|
|
|
|
stairs.register_stair_and_slab("iron_block", "pigiron:iron_block",
|
|
{cracky = 1},
|
|
{"pigiron_iron_block.png"},
|
|
"Iron Block Stair",
|
|
"Iron Block Slab",
|
|
default.node_sound_metal_defaults())
|
|
|
|
stairs.register_stair_and_slab("rusted_iron_block", "pigiron:rusted_iron_block",
|
|
{cracky = 1},
|
|
{"pigiron_rusted_iron_block.png"},
|
|
"Rusted Iron Block Stair",
|
|
"Rusted Iron Block Slab",
|
|
default.node_sound_metal_defaults())
|
|
|
|
-- Cook Rusted Iron Stairs and Slabs Back Into Normal Iron Stairs
|
|
minetest.register_craft({
|
|
output = "stairs:stair_iron_block",
|
|
type = "cooking",
|
|
recipe = "stairs:stair_rusted_iron_block",
|
|
cooktime = 5
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "stairs:slab_iron_block",
|
|
type = "cooking",
|
|
recipe = "stairs:slab_rusted_iron_block",
|
|
cooktime = 5
|
|
})
|
|
end
|
|
|
|
-- Add Lucky Blocks
|
|
|
|
if minetest.get_modpath("lucky_block") then
|
|
|
|
lucky_block:add_blocks({
|
|
{"dro", {"pigiron:iron_ingots"}, 10},
|
|
{"nod", "pigiron:iron_block"}, 0},
|
|
{"nod", "pigiron:rusted_iron_block"}, 0},
|
|
{"tro", "pigiron:iron_block", nil, true},
|
|
{"dro", {"pigiron:charcoal_lump"}, 10},
|
|
{"fal", {"pigiron:iron_block", "pigiron:rusted_iron_block",
|
|
"pigiron:iron_block", "pigiron:rusted_iron_block",
|
|
"pigiron:iron_block", "pigiron:rusted_iron_block"}},
|
|
})
|
|
end
|