mirror of
https://github.com/sirrobzeroone/elepower.git
synced 2024-08-19 20:34:04 +02:00
Start to remove all default references to default mod into a single file so they can be more easily updated. Add recipes for blue/red paper. Add Silver Wire to internal copy of basic materials
503 lines
13 KiB
Lua
503 lines
13 KiB
Lua
|
|
-- see elepower_papi >> external_nodes_items.lua for explanation
|
|
-- shorten table ref
|
|
local epi = ele.external.ing
|
|
local ept = ele.external.tools
|
|
|
|
---------------
|
|
-- Overrides --
|
|
---------------
|
|
|
|
-- Remove iron_lump -> steel_ingot, because dynamics adds iron ingot
|
|
--minetest.clear_craft({type = "cooking", output = epi.steel_ingot})
|
|
|
|
-----------
|
|
-- Tools --
|
|
-----------
|
|
if ept.enable_iron_lead_tools == true then
|
|
-- Pickaxes
|
|
|
|
minetest.register_craft({
|
|
output = 'elepower_dynamics:pick_iron',
|
|
recipe = {
|
|
{'elepower_dynamics:iron_ingot', 'elepower_dynamics:iron_ingot', 'elepower_dynamics:iron_ingot'},
|
|
{'',epi.group_stick, ''},
|
|
{'',epi.group_stick, ''},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = 'elepower_dynamics:pick_lead',
|
|
recipe = {
|
|
{'elepower_dynamics:lead_ingot', 'elepower_dynamics:lead_ingot', 'elepower_dynamics:lead_ingot'},
|
|
{'',epi.group_stick, ''},
|
|
{'',epi.group_stick, ''},
|
|
}
|
|
})
|
|
|
|
-- Shovels
|
|
|
|
minetest.register_craft({
|
|
output = 'elepower_dynamics:shovel_iron',
|
|
recipe = {
|
|
{'elepower_dynamics:iron_ingot'},
|
|
{epi.group_stick},
|
|
{epi.group_stick},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = 'elepower_dynamics:shovel_lead',
|
|
recipe = {
|
|
{'elepower_dynamics:lead_ingot'},
|
|
{epi.group_stick},
|
|
{epi.group_stick},
|
|
}
|
|
})
|
|
|
|
-- Axes
|
|
|
|
minetest.register_craft({
|
|
output = 'elepower_dynamics:axe_iron',
|
|
recipe = {
|
|
{'elepower_dynamics:iron_ingot', 'elepower_dynamics:iron_ingot'},
|
|
{'elepower_dynamics:iron_ingot',epi.group_stick},
|
|
{'',epi.group_stick},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = 'elepower_dynamics:axe_lead',
|
|
recipe = {
|
|
{'elepower_dynamics:lead_ingot', 'elepower_dynamics:lead_ingot'},
|
|
{'elepower_dynamics:lead_ingot',epi.group_stick},
|
|
{'',epi.group_stick},
|
|
}
|
|
})
|
|
|
|
-- Swords
|
|
|
|
minetest.register_craft({
|
|
output = 'elepower_dynamics:sword_iron',
|
|
recipe = {
|
|
{'elepower_dynamics:iron_ingot'},
|
|
{'elepower_dynamics:iron_ingot'},
|
|
{epi.group_stick},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = 'elepower_dynamics:sword_lead',
|
|
recipe = {
|
|
{'elepower_dynamics:lead_ingot'},
|
|
{'elepower_dynamics:lead_ingot'},
|
|
{epi.group_stick},
|
|
}
|
|
})
|
|
end
|
|
|
|
-- Bucket
|
|
minetest.register_craft({
|
|
output = 'bucket:bucket_empty',
|
|
recipe = {
|
|
{'elepower_dynamics:iron_ingot', '', 'elepower_dynamics:iron_ingot'},
|
|
{'', 'elepower_dynamics:iron_ingot', ''},
|
|
}
|
|
})
|
|
|
|
-----------
|
|
-- Nodes --
|
|
-----------
|
|
|
|
minetest.register_craft({
|
|
type = "shapeless",
|
|
output = "elepower_dynamics:particle_board",
|
|
recipe = {
|
|
"elepower_dynamics:wood_dust",
|
|
"elepower_dynamics:wood_dust",
|
|
"elepower_dynamics:wood_dust",
|
|
"elepower_dynamics:wood_dust",
|
|
}
|
|
})
|
|
|
|
-- Conduit
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:conduit 8",
|
|
recipe = {
|
|
{"elepower_dynamics:lead_ingot", "elepower_dynamics:lead_ingot", "elepower_dynamics:lead_ingot"},
|
|
{"basic_materials:copper_wire", "basic_materials:copper_wire", "basic_materials:copper_wire"},
|
|
{"elepower_dynamics:lead_ingot", "elepower_dynamics:lead_ingot", "elepower_dynamics:lead_ingot"},
|
|
},
|
|
replacements = {
|
|
{"basic_materials:copper_wire", "basic_materials:empty_spool"},
|
|
{"basic_materials:copper_wire", "basic_materials:empty_spool"},
|
|
{"basic_materials:copper_wire", "basic_materials:empty_spool"},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:conduit_wall 1",
|
|
recipe = {
|
|
{"" ,"elepower_dynamics:lead_plate",""},
|
|
{"elepower_dynamics:lead_plate","elepower_dynamics:conduit" ,"elepower_dynamics:lead_plate"},
|
|
{"" ,"elepower_dynamics:lead_plate",""}
|
|
}
|
|
})
|
|
|
|
if ele.external.conduit_dirt_with_grass == true then
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:conduit_dirt_with_grass 1",
|
|
recipe = {
|
|
{"",epi.seed_wheat ,""},
|
|
{"","elepower_dynamics:conduit" ,""},
|
|
{"",epi.dirt ,""}
|
|
}
|
|
})
|
|
end
|
|
|
|
if ele.external.conduit_dirt_with_dry_grass == true then
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:conduit_dirt_with_dry_grass 1",
|
|
recipe = {
|
|
{"",epi.wheat ,""},
|
|
{"","elepower_dynamics:conduit",""},
|
|
{"",epi.dirt ,""}
|
|
}
|
|
})
|
|
end
|
|
|
|
if ele.external.conduit_stone_block == true then
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:conduit_stone_block 1",
|
|
recipe = {
|
|
{"" ,epi.slab_stone_block ,""},
|
|
{epi.slab_stone_block,"elepower_dynamics:conduit",epi.slab_stone_block},
|
|
{"" ,epi.slab_stone_block ,""}
|
|
}
|
|
})
|
|
end
|
|
|
|
if ele.external.conduit_stone_block_desert == true then
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:conduit_stone_block_desert 1",
|
|
recipe = {
|
|
{"" ,epi.slab_desert_stone_block ,""},
|
|
{epi.slab_desert_stone_block,"elepower_dynamics:conduit",epi.slab_desert_stone_block},
|
|
{"" ,epi.slab_desert_stone_block ,""}
|
|
}
|
|
})
|
|
end
|
|
|
|
|
|
|
|
-- Opaque Fluid Duct
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:opaque_duct 3",
|
|
recipe = {
|
|
{"elepower_dynamics:lead_ingot", "elepower_dynamics:lead_ingot", "elepower_dynamics:lead_ingot"},
|
|
{"fluid_transfer:fluid_duct" , "fluid_transfer:fluid_duct" , "fluid_transfer:fluid_duct"},
|
|
{"elepower_dynamics:lead_ingot", "elepower_dynamics:lead_ingot", "elepower_dynamics:lead_ingot"},
|
|
}
|
|
})
|
|
|
|
-- Portable Tank
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:portable_tank",
|
|
recipe = {
|
|
{epi.glass,"elepower_dynamics:fluid_duct",epi.glass},
|
|
{epi.glass,epi.glass,epi.glass},
|
|
{epi.bronze_ingot,epi.bronze_ingot,epi.bronze_ingot},
|
|
}
|
|
})
|
|
|
|
-----------
|
|
-- Items --
|
|
-----------
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:wound_copper_coil",
|
|
recipe = {
|
|
{"" ,epi.copper_ingot , ""},
|
|
{epi.copper_ingot, "elepower_dynamics:iron_ingot", epi.copper_ingot},
|
|
{"" , epi.copper_ingot , ""}
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:wound_copper_coil",
|
|
recipe = {
|
|
{"" ,"basic_materials:copper_wire", ""},
|
|
{"basic_materials:copper_wire","elepower_dynamics:iron_ingot", "basic_materials:copper_wire"},
|
|
{"" ,"basic_materials:copper_wire", ""}
|
|
},
|
|
replacements = {
|
|
{"basic_materials:copper_wire", "basic_materials:empty_spool"},
|
|
{"basic_materials:copper_wire", "basic_materials:empty_spool"},
|
|
{"basic_materials:copper_wire", "basic_materials:empty_spool"},
|
|
{"basic_materials:copper_wire", "basic_materials:empty_spool"},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:wound_silver_coil",
|
|
recipe = {
|
|
{"" , epi.silver_ingot, ""},
|
|
{epi.silver_ingot, "elepower_dynamics:zinc_ingot",epi.silver_ingot},
|
|
{"" , epi.silver_ingot, ""}
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:wound_silver_coil",
|
|
recipe = {
|
|
{"", "basic_materials:silver_wire", ""},
|
|
{"basic_materials:silver_wire", "elepower_dynamics:zinc_ingot", "basic_materials:silver_wire"},
|
|
{"", "basic_materials:silver_wire", ""}
|
|
},
|
|
replacements = {
|
|
{"basic_materials:silver_wire", "basic_materials:empty_spool"},
|
|
{"basic_materials:silver_wire", "basic_materials:empty_spool"},
|
|
{"basic_materials:silver_wire", "basic_materials:empty_spool"},
|
|
{"basic_materials:silver_wire", "basic_materials:empty_spool"},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:servo_valve 3",
|
|
recipe = {
|
|
{"", "elepower_dynamics:wound_copper_coil", ""},
|
|
{"elepower_dynamics:fluid_duct", "elepower_dynamics:fluid_duct", "elepower_dynamics:fluid_duct"},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:tree_tap",
|
|
recipe = {
|
|
{epi.steel_ingot, epi.steel_ingot, epi.steel_ingot},
|
|
{"", "", epi.steel_ingot},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:chip 6",
|
|
recipe = {
|
|
{"basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet"},
|
|
{epi.mese_crystal_fragment,epi.group_color_black, epi.mese_crystal_fragment},
|
|
{epi.copper_ingot, epi.silver_ingot, epi.copper_ingot},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:capacitor 6",
|
|
recipe = {
|
|
{"basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet"},
|
|
{epi.silver_ingot, epi.mese_crystal, epi.silver_ingot},
|
|
{epi.copper_ingot, epi.group_color_violet, epi.copper_ingot},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:pcb_blank 3",
|
|
recipe = {
|
|
{epi.copper_ingot,epi.copper_ingot, epi.copper_ingot},
|
|
{epi.copper_ingot,epi.mese_crystal, epi.copper_ingot},
|
|
{epi.gold_ingot ,epi.gold_ingot, epi.gold_ingot},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:pcb_blank",
|
|
recipe = {
|
|
{"", "elepower_dynamics:copper_plate", ""},
|
|
{epi.mese_crystal_fragment, epi.mese_crystal_fragment, epi.mese_crystal_fragment},
|
|
{"", "elepower_dynamics:gold_plate", ""},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
type = "shapeless",
|
|
output = "elepower_dynamics:acidic_compound",
|
|
recipe = {
|
|
"elepower_dynamics:copper_dust",
|
|
"elepower_dynamics:copper_dust",
|
|
"elepower_dynamics:copper_dust",
|
|
"elepower_dynamics:copper_dust",
|
|
epi.seed_wheat,
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:uv_bulb",
|
|
recipe = {
|
|
{epi.group_color_blue, epi.group_color_violet, epi.group_color_blue},
|
|
{"", epi.mese_lamp, ""},
|
|
{"", epi.glass, ""},
|
|
}
|
|
})
|
|
|
|
-- Fluid Transfer Node
|
|
minetest.clear_craft({output = "fluid_transfer:fluid_transfer_pump"})
|
|
minetest.register_craft({
|
|
output = "fluid_transfer:fluid_transfer_pump 3",
|
|
recipe = {
|
|
{epi.group_stone, "elepower_dynamics:control_circuit",epi.group_stone},
|
|
{"elepower_dynamics:electrum_gear", "elepower_dynamics:servo_valve", "elepower_dynamics:electrum_gear"},
|
|
{epi.group_stone, "elepower_dynamics:fluid_duct", epi.group_stone},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:battery 2",
|
|
recipe = {
|
|
{"elepower_dynamics:zinc_dust", "elepower_dynamics:graphite_rod", "elepower_dynamics:lead_dust"},
|
|
{"elepower_dynamics:tin_plate", epi.mese_crystal_fragment, "elepower_dynamics:tin_plate"},
|
|
{"elepower_dynamics:tin_plate", epi.mese_crystal_fragment, "elepower_dynamics:tin_plate"},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:lcd_panel",
|
|
recipe = {
|
|
{epi.group_color_red, epi.group_color_green, epi.group_color_blue},
|
|
{epi.silver_ingot, "elepower_dynamics:wound_copper_coil", epi.silver_ingot},
|
|
{"", epi.mese_lamp, ""}
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:pv_cell",
|
|
recipe = {
|
|
{epi.glass, epi.glass, epi.glass},
|
|
{epi.group_color_blue, "elepower_dynamics:silicon_wafer_doped", epi.group_color_blue},
|
|
{epi.mese_crystal_fragment, "elepower_dynamics:wound_copper_coil", epi.mese_crystal_fragment}
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:integrated_circuit",
|
|
recipe = {
|
|
{"elepower_dynamics:chip", "elepower_dynamics:chip", "elepower_dynamics:chip"},
|
|
{"elepower_dynamics:capacitor", "elepower_dynamics:pcb", "elepower_dynamics:capacitor"},
|
|
{epi.copper_ingot, epi.mese_crystal, epi.copper_ingot},
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:tin_can 8",
|
|
recipe = {
|
|
{"elepower_dynamics:tin_plate", ""},
|
|
{"", "elepower_dynamics:tin_plate"}
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "elepower_dynamics:gas_container 8",
|
|
recipe = {
|
|
{"elepower_dynamics:steel_plate", "", "elepower_dynamics:steel_plate"},
|
|
{"elepower_dynamics:steel_plate", "", "elepower_dynamics:steel_plate"},
|
|
{"" ,"elepower_dynamics:steel_plate", ""}
|
|
}
|
|
})
|
|
|
|
--------------
|
|
-- Smelting --
|
|
--------------
|
|
|
|
minetest.register_craft({
|
|
type = "cooking",
|
|
output = "elepower_dynamics:iron_ingot",
|
|
recipe = epi.iron_lump
|
|
})
|
|
|
|
minetest.register_craft({
|
|
type = "cooking",
|
|
output = epi.steel_ingot,
|
|
recipe = "elepower_dynamics:iron_ingot"
|
|
})
|
|
|
|
minetest.register_craft({
|
|
type = "cooking",
|
|
output = "elepower_dynamics:lead_ingot",
|
|
recipe = "elepower_dynamics:lead_lump"
|
|
})
|
|
|
|
minetest.register_craft({
|
|
type = "cooking",
|
|
output = "elepower_dynamics:nickel_ingot",
|
|
recipe = "elepower_dynamics:nickel_lump"
|
|
})
|
|
|
|
minetest.register_craft({
|
|
type = "cooking",
|
|
output = "elepower_dynamics:zinc_ingot",
|
|
recipe = "elepower_dynamics:zinc_lump"
|
|
})
|
|
|
|
minetest.register_craft({
|
|
type = "cooking",
|
|
output = "elepower_dynamics:viridisium_ingot",
|
|
recipe = "elepower_dynamics:viridisium_lump",
|
|
cooktime = 10,
|
|
})
|
|
|
|
-----------
|
|
-- Gears --
|
|
-----------
|
|
|
|
local keywords = { "_ingot", "" }
|
|
for mat, data in pairs(elepd.registered_gears) do
|
|
for _,keyword in ipairs(keywords) do
|
|
local found = ele.helpers.scan_item_list(mat .. keyword)
|
|
local immebreak = false
|
|
|
|
if mat == "wood" then
|
|
found = epi.group_stick
|
|
immebreak = true
|
|
end
|
|
|
|
if found then
|
|
-- Gear recipe for material
|
|
minetest.register_craft({
|
|
recipe = {
|
|
{ "", found, "" },
|
|
{ found, "", found},
|
|
{ "", found, "" }
|
|
},
|
|
output = data.item
|
|
})
|
|
|
|
if immebreak then break end
|
|
end
|
|
end
|
|
end
|
|
|
|
-----------
|
|
-- Nodes --
|
|
-----------
|
|
|
|
local function blockcraft(mat)
|
|
local ingot = "elepower_dynamics:" .. mat .. "_ingot"
|
|
local block = "elepower_dynamics:" .. mat .. "_block"
|
|
minetest.register_craft({
|
|
type = "shapeless",
|
|
output = block,
|
|
recipe = {
|
|
ingot, ingot, ingot,
|
|
ingot, ingot, ingot,
|
|
ingot, ingot, ingot,
|
|
}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
type = "shapeless",
|
|
output = ingot .. " 9",
|
|
recipe = { block },
|
|
})
|
|
end
|
|
|
|
blockcraft("viridisium")
|
|
blockcraft("nickel")
|
|
blockcraft("invar")
|
|
blockcraft("lead")
|
|
blockcraft("zinc")
|