From 75894128f0b5c13e5b4b4152baf09f6ba90da93d Mon Sep 17 00:00:00 2001 From: mrkubax10 Date: Wed, 3 Dec 2025 23:51:19 +0100 Subject: [PATCH] Don't use `mcl_fences.register_fence_def` if not present --- nodes.lua | 55 ++++++++++++++++++++++++++++++++++--------------------- 1 file changed, 34 insertions(+), 21 deletions(-) diff --git a/nodes.lua b/nodes.lua index 060dd59..95fc3c9 100644 --- a/nodes.lua +++ b/nodes.lua @@ -591,26 +591,39 @@ if industrialtest.mtgAvailable then } }) elseif industrialtest.mclAvailable then - mcl_fences.register_fence_def("iron_fence",{ - description=S("Iron Fence"), - tiles={"default_steel_block.png"}, - groups={ - _industrialtest_metalFence=1 - }, - connects_to={ - "group:fence", - "group:fence_gate", - "group:solid", - "industrialtest:magnetizer" - }, - on_construct=ironFenceOnConstruct, - on_destruct=ironFenceOnDestruct, - after_destruct=function(pos,oldnode,oldmeta) - ironFenceDetach(oldmeta) - end, - _mcl_fences_baseitem="industrialtest:iron_plate", - _mcl_fences_stickreplacer="industrialtest:iron_plate" + -- Some MCL2 forks define this function so use it if available + if mcl_fences.register_fence_def then + mcl_fences.register_fence_def("iron_fence",{ + description=S("Iron Fence"), + tiles={"default_steel_block.png"}, + groups={ + _industrialtest_metalFence=1 + }, + connects_to={ + "group:fence", + "group:fence_gate", + "group:solid", + "industrialtest:magnetizer" + }, + on_construct=ironFenceOnConstruct, + on_destruct=ironFenceOnDestruct, + after_destruct=function(pos,oldnode,oldmeta) + ironFenceDetach(oldmeta) + end + }) + else + mcl_fences.register_fence("iron_fence",S("Iron Fence"),"default_steel_block.png",{_industrialtest_metalFence=1},4,5,{"industrialtest:magnetizer","group:fence"},mcl_sounds.node_sound_metal_defaults()) + end + if minetest.registered_nodes["mcl_fences:iron_fence"] then + -- mcl_fences.register_fence_def registers fences in it's own namespace so register alias here to keep compatibility + minetest.register_alias("industrialtest:iron_fence","mcl_fences:iron_fence") + end + minetest.register_craft({ + type="shaped", + output="industrialtest:iron_fence 3", + recipe={ + {"industrialtest:iron_plate","industrialtest:iron_plate","industrialtest:iron_plate"}, + {"industrialtest:iron_plate","industrialtest:iron_plate","industrialtest:iron_plate"} + } }) - -- mcl_fences.register_fence_def registers fences in it's own namespace so register alias here to keep compatibility - minetest.register_alias("industrialtest:iron_fence","mcl_fences:iron_fence") end