elepower/elepower_lighting/i_crafting.lua

333 lines
9.9 KiB
Lua

------------------------------------------------------
-- ___ _ --
-- | __| |___ _ __ _____ __ _____ _ _ --
-- | _|| / -_) '_ \/ _ \ V V / -_) '_| --
-- |___|_\___| .__/\___/\_/\_/\___|_| --
-- _ _ |_| _ _ _ --
-- | | (_)__ _| |_| |_(_)_ _ __ _ --
-- | |__| / _` | ' \ _| | ' \/ _` | --
-- |____|_\__, |_||_\__|_|_||_\__, | --
-- |___/ |___/ --
------------------------------------------------------
-- Crafting Recipes --
------------------------------------------------------
-- see elepower_papi >> external_nodes_items.lua for explanation
-- shorten table ref
local epi = ele.external.ing
local glass = epi.glass
local glass_slab = epi.slab_glass
local stick = epi.stick
local steel_wire = "basic_materials:steel_wire"
local steel_strip = "basic_materials:steel_strip"
local plastic_strip = "basic_materials:plastic_strip"
local plastic_sheet = "basic_materials:plastic_sheet"
local empty_spool = "basic_materials:empty_spool"
local mese_dust = "elepower_dynamics:mese_dust"
local dye_red = epi.dye_red
local dye_green = epi.dye_green
local dye_blue = epi.dye_blue
local s_wood = epi.slab_wood
local group_color_blue = epi.group_color_blue
local group_color_violet = epi.group_color_violet
minetest.register_craft( {
output = "elepower_lighting:electrum_strip 12",
recipe = {
{ "", "elepower_dynamics:electrum_ingot", "" },
{ "elepower_dynamics:electrum_ingot", "", "" },
},
})
-- Override base recipes so lighting independent
minetest.clear_craft({output = "elepower_dynamics:uv_bulb"})
minetest.registered_craftitems["elepower_dynamics:uv_bulb"] = {} -- registered as node
minetest.register_craft({
output = "elepower_dynamics:uv_bulb",
recipe = {
{ "" ,"elepower_lighting:bulb_glass" , "" },
{group_color_blue,"elepower_lighting:incandescent_bulb_element" ,group_color_violet},
{ "" ,steel_strip , "" }
}
})
-- Compressing Recipes
local compressor_recipes = {
{
recipe = { "elepower_lighting:electrum_strip 1", dye_red.." 1" },
output = "elepower_lighting:led_red",
time = 4,
},
{
recipe = { "elepower_lighting:electrum_strip 1", dye_green.." 1" },
output = "elepower_lighting:led_green",
time = 4,
},
{
recipe = { "elepower_lighting:electrum_strip 1", dye_blue.." 1" },
output = "elepower_lighting:led_blue",
time = 4,
}
}
for _,i in pairs(compressor_recipes) do
elepm.register_craft({
type = "compress",
recipe = i.recipe,
output = i.output,
time = i.time or 1
})
end
-- Soldering Recipes
local soldering_recipes = {
{
recipe = { "elepower_dynamics:pcb", "elepower_dynamics:chip 4", "elepower_lighting:led_red"},
output = "elepower_lighting:led_driver 4",
time = 8,
},
{
recipe = {"elepower_lighting:led_light_panel", "elepower_dynamics:microcontroller", "elepower_lighting:led_cluster"},
output = "elepower_lighting:led_light_panel_colored",
time = 12,
}
}
for _,i in pairs(soldering_recipes) do
elepm.register_craft({
type = "solder",
recipe = i.recipe,
output = i.output,
time = i.time or 4
})
end
-- Canning
local canning_recipes = {
{
recipe = {"elepower_dynamics:iron_plate", "elepower_dynamics:conduit"},
output = "elepower_lighting:conduit_iron_thin",
time = 4,
},
{
recipe = {"elepower_dynamics:iron_plate 2", "elepower_dynamics:conduit"},
output = "elepower_lighting:conduit_iron_thick",
time = 4,
},
{
recipe = {"elepower_dynamics:steel_plate", "elepower_dynamics:conduit"},
output = "elepower_lighting:conduit_steel_thin",
time = 4,
},
{
recipe = {"elepower_dynamics:steel_plate 2", "elepower_dynamics:conduit"},
output = "elepower_lighting:conduit_steel_thick",
time = 4,
},
{
recipe = {"elepower_dynamics:gold_plate", "elepower_dynamics:conduit"},
output = "elepower_lighting:conduit_gold_thin",
time = 4,
},
{
recipe = {"elepower_dynamics:gold_plate 2", "elepower_dynamics:conduit"},
output = "elepower_lighting:conduit_gold_thick",
time = 4,
},
}
for _,i in pairs(canning_recipes) do
elepm.register_craft({
type = "can",
recipe = i.recipe,
output = i.output,
time = i.time or 4
})
end
-- Wood Conduit
minetest.register_craft({
output = "elepower_lighting:conduit_wood_thin",
recipe = {
{ "" ,"", "" },
{ "" ,"elepower_dynamics:conduit", "" },
{ "" ,s_wood, "" }
}
})
minetest.register_craft({
output = "elepower_lighting:conduit_wood_thick",
recipe = {
{ "" ,s_wood, "" },
{ "" ,"elepower_dynamics:conduit", "" },
{ "" ,s_wood, "" }
}
})
-- Incandescent Bulb Glass
minetest.register_craft({
output = "elepower_lighting:bulb_glass 10",
recipe = {
{ "" ,glass, "" },
{glass, "" ,glass},
{glass, "" ,glass}
}
})
-- Incandescent Bulb Element
minetest.register_craft({
output = "elepower_lighting:incandescent_bulb_element 5",
recipe = {
{ "" , "" , "" },
{stick, "" ,steel_wire},
{ "" , "" , "" }
},
replacements = {
{stick, stick},
{steel_wire, empty_spool}
}
})
-- Incandescent Light Bulb
minetest.register_craft({
output = "elepower_lighting:bulb_incandescent",
recipe = {
{ "" , "elepower_lighting:bulb_glass" , "" },
{ "" , "elepower_lighting:incandescent_bulb_element" , "" },
{ "" , steel_strip , "" }
}
})
-- CCF Bulb Glass
minetest.register_craft({
output = "elepower_lighting:cf_bulb_glass 10",
recipe = {
{glass,glass,glass},
{glass, "" ,glass},
{glass, "" ,glass}
}
})
-- CCF Light Bulb
minetest.register_craft({
output = "elepower_lighting:bulb_cf",
recipe = {
{ "elepower_lighting:cf_bulb_glass", "" , "elepower_lighting:cf_bulb_glass" },
{ "" ,mese_dust , "" },
{ "" ,steel_strip, "" }
}
})
-- Fluro Light Bank Glass
minetest.register_craft({
output = "elepower_lighting:fluro_tube_glass 6",
recipe = {
{glass,"",glass},
{glass,"",glass},
{glass,"",glass}
}
})
-- Fluro Light Bank
minetest.register_craft({
output = "elepower_lighting:fluro_light_bank",
recipe = {
{ "","elepower_lighting:fluro_tube_glass","elepower_lighting:fluro_tube_glass" },
{ "",mese_dust , mese_dust },
{ "","elepower_dynamics:steel_plate" , steel_strip }
}
})
-- Light Emitting Diode cluster
minetest.register_craft({
output = "elepower_lighting:led_cluster",
recipe = {
{ "" , glass_slab , "" },
{ "elepower_lighting:led_red","elepower_lighting:led_green","elepower_lighting:led_blue"},
{ "" , plastic_strip , "" }
}
})
-- LED Light Bulb
minetest.register_craft({
output = "elepower_lighting:bulb_led",
recipe = {
{ "" ,"elepower_lighting:bulb_glass", "" },
{"elepower_lighting:led_cluster","elepower_lighting:led_driver","elepower_lighting:led_cluster"},
{ "" , steel_strip , "" }
}
})
-- LED Light Panel 1x1
minetest.register_craft({
output = "elepower_lighting:led_light_panel",
recipe = {
{ "" , glass_slab , "" },
{"elepower_lighting:led_cluster","elepower_lighting:led_driver","elepower_lighting:led_cluster"},
{ "" , plastic_sheet , "" }
}
})
-- LED Light Panel 1x3
minetest.register_craft({
output = "elepower_lighting:led_1x3_light_panel",
recipe = {
{ "" ,"", "" },
{"elepower_lighting:led_light_panel","elepower_lighting:led_light_panel","elepower_lighting:led_light_panel"},
{ "" ,"", "" }
}
})
-- LED Light Panel 2x3
minetest.register_craft({
output = "elepower_lighting:led_2x3_light_panel",
recipe = {
{"elepower_lighting:led_light_panel","elepower_lighting:led_light_panel","elepower_lighting:led_light_panel"},
{"elepower_lighting:led_light_panel","elepower_lighting:led_light_panel","elepower_lighting:led_light_panel"},
{ "" ,"", "" }
}
})
-- Lens
minetest.register_craft({
output = "elepower_lighting:magnifying_lens 5",
recipe = {
{ "" ,glass_slab , "" },
{glass_slab ,glass_slab ,glass_slab },
{ "" ,glass_slab , "" }
}
})
-- Flood Light - Incandescent
minetest.register_craft({
output = "elepower_lighting:incandescent_floodlight_xp0_yp0",
recipe = {
{ "" ,"elepower_dynamics:steel_plate", "" },
{"elepower_lighting:magnifying_lens","elepower_lighting:bulb_incandescent","elepower_lighting:bulb_incandescent"},
{ "" ,"elepower_dynamics:steel_plate", "" }
}
})
-- Flood Light - CCF
minetest.register_craft({
output = "elepower_lighting:cf_floodlight_xp0_yp0",
recipe = {
{ "" ,"elepower_dynamics:steel_plate", "" },
{"elepower_lighting:magnifying_lens","elepower_lighting:bulb_cf","elepower_lighting:bulb_cf"},
{ "" ,"elepower_dynamics:steel_plate", "" }
}
})
-- Flood Light - LED
minetest.register_craft({
output = "elepower_lighting:led_floodlight_xp0_yp0",
recipe = {
{ "" ,"elepower_dynamics:steel_plate", "" },
{"elepower_lighting:magnifying_lens","elepower_lighting:bulb_led","elepower_lighting:bulb_led"},
{ "" ,"elepower_dynamics:steel_plate", "" }
}
})