Skip to content

Commit 438c087

Browse files
authored
Add external machine registration support (#557)
New 'technic.register_base_machine' definition table value: 'modname' (defaults to current run mod)
1 parent 88f2bc3 commit 438c087

File tree

1 file changed

+21
-19
lines changed

1 file changed

+21
-19
lines changed

technic/machines/register/machine_base.lua

+21-19
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ function technic.register_base_machine(data)
3838
local machine_desc = data.machine_desc
3939
local tier = data.tier
4040
local ltier = string.lower(tier)
41+
42+
data.modname = data.modname or minetest.get_current_modname()
4143

4244
local groups = {cracky = 2, technic_machine = 1, ["technic_"..ltier] = 1}
4345
if data.tube then
@@ -82,7 +84,7 @@ function technic.register_base_machine(data)
8284
local eu_input = meta:get_int(tier.."_EU_input")
8385

8486
local machine_desc_tier = machine_desc:format(tier)
85-
local machine_node = "technic:"..ltier.."_"..machine_name
87+
local machine_node = data.modname..":"..ltier.."_"..machine_name
8688
local machine_demand = data.demand
8789

8890
-- Setup meta data if it does not exist.
@@ -157,15 +159,15 @@ function technic.register_base_machine(data)
157159
tentry = ""
158160
end
159161

160-
minetest.register_node("technic:"..ltier.."_"..machine_name, {
162+
minetest.register_node(data.modname..":"..ltier.."_"..machine_name, {
161163
description = machine_desc:format(tier),
162164
tiles = {
163-
"technic_"..ltier.."_"..machine_name.."_top.png"..tentry,
164-
"technic_"..ltier.."_"..machine_name.."_bottom.png"..tentry,
165-
"technic_"..ltier.."_"..machine_name.."_side.png"..tentry,
166-
"technic_"..ltier.."_"..machine_name.."_side.png"..tentry,
167-
"technic_"..ltier.."_"..machine_name.."_side.png"..tentry,
168-
"technic_"..ltier.."_"..machine_name.."_front.png"
165+
data.modname.."_"..ltier.."_"..machine_name.."_top.png"..tentry,
166+
data.modname.."_"..ltier.."_"..machine_name.."_bottom.png"..tentry,
167+
data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry,
168+
data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry,
169+
data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry,
170+
data.modname.."_"..ltier.."_"..machine_name.."_front.png"
169171
},
170172
paramtype2 = "facedir",
171173
groups = groups,
@@ -227,18 +229,18 @@ function technic.register_base_machine(data)
227229
end,
228230
})
229231

230-
minetest.register_node("technic:"..ltier.."_"..machine_name.."_active",{
232+
minetest.register_node(data.modname..":"..ltier.."_"..machine_name.."_active",{
231233
description = machine_desc:format(tier),
232234
tiles = {
233-
"technic_"..ltier.."_"..machine_name.."_top.png"..tentry,
234-
"technic_"..ltier.."_"..machine_name.."_bottom.png"..tentry,
235-
"technic_"..ltier.."_"..machine_name.."_side.png"..tentry,
236-
"technic_"..ltier.."_"..machine_name.."_side.png"..tentry,
237-
"technic_"..ltier.."_"..machine_name.."_side.png"..tentry,
238-
"technic_"..ltier.."_"..machine_name.."_front_active.png"
235+
data.modname.."_"..ltier.."_"..machine_name.."_top.png"..tentry,
236+
data.modname.."_"..ltier.."_"..machine_name.."_bottom.png"..tentry,
237+
data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry,
238+
data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry,
239+
data.modname.."_"..ltier.."_"..machine_name.."_side.png"..tentry,
240+
data.modname.."_"..ltier.."_"..machine_name.."_front_active.png"
239241
},
240242
paramtype2 = "facedir",
241-
drop = "technic:"..ltier.."_"..machine_name,
243+
drop = data.modname..":"..ltier.."_"..machine_name,
242244
groups = active_groups,
243245
connect_sides = data.connect_sides or connect_default,
244246
legacy_facedir_simple = true,
@@ -249,7 +251,7 @@ function technic.register_base_machine(data)
249251
allow_metadata_inventory_take = technic.machine_inventory_take,
250252
allow_metadata_inventory_move = technic.machine_inventory_move,
251253
technic_run = run,
252-
technic_disabled_machine_name = "technic:"..ltier.."_"..machine_name,
254+
technic_disabled_machine_name = data.modname..":"..ltier.."_"..machine_name,
253255
on_receive_fields = function(pos, formname, fields, sender)
254256
local node = minetest.get_node(pos)
255257
if not pipeworks.may_configure(pos, sender) then return end
@@ -271,8 +273,8 @@ function technic.register_base_machine(data)
271273
end,
272274
})
273275

274-
technic.register_machine(tier, "technic:"..ltier.."_"..machine_name, technic.receiver)
275-
technic.register_machine(tier, "technic:"..ltier.."_"..machine_name.."_active", technic.receiver)
276+
technic.register_machine(tier, data.modname..":"..ltier.."_"..machine_name, technic.receiver)
277+
technic.register_machine(tier, data.modname..":"..ltier.."_"..machine_name.."_active", technic.receiver)
276278

277279
end -- End registration
278280

0 commit comments

Comments
 (0)