| | |
| | | local tier = data.tier |
| | | local ltier = string.lower(tier) |
| | | |
| | | data.modname = data.modname or minetest.get_current_modname() |
| | | |
| | | local groups = {cracky = 2, technic_machine = 1, ["technic_"..ltier] = 1} |
| | | if data.tube then |
| | | groups.tubedevice = 1 |
| | |
| | | local eu_input = meta:get_int(tier.."_EU_input") |
| | | |
| | | local machine_desc_tier = machine_desc:format(tier) |
| | | local machine_node = "technic:"..ltier.."_"..machine_name |
| | | local machine_node = data.modname..":"..ltier.."_"..machine_name |
| | | local machine_demand = data.demand |
| | | |
| | | -- Setup meta data if it does not exist. |
| | |
| | | tentry = "" |
| | | end |
| | | |
| | | minetest.register_node("technic:"..ltier.."_"..machine_name, { |
| | | minetest.register_node(data.modname..":"..ltier.."_"..machine_name, { |
| | | description = machine_desc:format(tier), |
| | | tiles = { |
| | | "technic_"..ltier.."_"..machine_name.."_top.png"..tentry, |
| | | "technic_"..ltier.."_"..machine_name.."_bottom.png"..tentry, |
| | | "technic_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | "technic_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | "technic_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | "technic_"..ltier.."_"..machine_name.."_front.png" |
| | | data.modname.."_"..ltier.."_"..machine_name.."_top.png"..tentry, |
| | | data.modname.."_"..ltier.."_"..machine_name.."_bottom.png"..tentry, |
| | | data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | data.modname.."_"..ltier.."_"..machine_name.."_front.png" |
| | | }, |
| | | paramtype2 = "facedir", |
| | | groups = groups, |
| | |
| | | after_place_node = data.tube and pipeworks.after_place, |
| | | after_dig_node = technic.machine_after_dig_node, |
| | | on_receive_fields = function(pos, formname, fields, sender) |
| | | local node = minetest.get_node(pos) |
| | | if fields.quit then return end |
| | | if not pipeworks.may_configure(pos, sender) then return end |
| | | fs_helpers.on_receive_fields(pos, fields) |
| | | local node = minetest.get_node(pos) |
| | | local meta = minetest.get_meta(pos) |
| | | local form_buttons = "" |
| | | if not string.find(node.name, ":lv_") then |
| | |
| | | end, |
| | | }) |
| | | |
| | | minetest.register_node("technic:"..ltier.."_"..machine_name.."_active",{ |
| | | minetest.register_node(data.modname..":"..ltier.."_"..machine_name.."_active",{ |
| | | description = machine_desc:format(tier), |
| | | tiles = { |
| | | "technic_"..ltier.."_"..machine_name.."_top.png"..tentry, |
| | | "technic_"..ltier.."_"..machine_name.."_bottom.png"..tentry, |
| | | "technic_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | "technic_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | "technic_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | "technic_"..ltier.."_"..machine_name.."_front_active.png" |
| | | data.modname.."_"..ltier.."_"..machine_name.."_top.png"..tentry, |
| | | data.modname.."_"..ltier.."_"..machine_name.."_bottom.png"..tentry, |
| | | data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry, |
| | | data.modname.."_"..ltier.."_"..machine_name.."_front_active.png" |
| | | }, |
| | | paramtype2 = "facedir", |
| | | drop = "technic:"..ltier.."_"..machine_name, |
| | | drop = data.modname..":"..ltier.."_"..machine_name, |
| | | groups = active_groups, |
| | | connect_sides = data.connect_sides or connect_default, |
| | | legacy_facedir_simple = true, |
| | |
| | | allow_metadata_inventory_take = technic.machine_inventory_take, |
| | | allow_metadata_inventory_move = technic.machine_inventory_move, |
| | | technic_run = run, |
| | | technic_disabled_machine_name = "technic:"..ltier.."_"..machine_name, |
| | | technic_disabled_machine_name = data.modname..":"..ltier.."_"..machine_name, |
| | | on_receive_fields = function(pos, formname, fields, sender) |
| | | local node = minetest.get_node(pos) |
| | | if fields.quit then return end |
| | | if not pipeworks.may_configure(pos, sender) then return end |
| | | fs_helpers.on_receive_fields(pos, fields) |
| | | local node = minetest.get_node(pos) |
| | | local meta = minetest.get_meta(pos) |
| | | local form_buttons = "" |
| | | if not string.find(node.name, ":lv_") then |
| | |
| | | end, |
| | | }) |
| | | |
| | | technic.register_machine(tier, "technic:"..ltier.."_"..machine_name, technic.receiver) |
| | | technic.register_machine(tier, "technic:"..ltier.."_"..machine_name.."_active", technic.receiver) |
| | | technic.register_machine(tier, data.modname..":"..ltier.."_"..machine_name, technic.receiver) |
| | | technic.register_machine(tier, data.modname..":"..ltier.."_"..machine_name.."_active", technic.receiver) |
| | | |
| | | end -- End registration |
| | | |