From 4b0b205e382485eedacda0a477c96a1bbdead14b Mon Sep 17 00:00:00 2001 From: Riceball LEE Date: Mon, 10 Jul 2023 20:21:30 +0800 Subject: [PATCH] fix: should check activate/deactivate for conductor has already swapped the node --- mesecons/internal.lua | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/mesecons/internal.lua b/mesecons/internal.lua index f6521d6..31ab85b 100644 --- a/mesecons/internal.lua +++ b/mesecons/internal.lua @@ -192,6 +192,12 @@ mesecon.queue:add_function("activate", function (pos, rulename) if effector and effector.action_on then effector.action_on(pos, node, rulename) + elseif mesecon.is_conductor(node.name) then + local node_name = mesecon.get_conductor_off(node, rulename) + effector = mesecon.get_effector(node_name) + if effector and effector.action_on then + effector.action_on(pos, node, rulename) + end end end) @@ -215,6 +221,12 @@ mesecon.queue:add_function("deactivate", function (pos, rulename) if effector and effector.action_off then effector.action_off(pos, node, rulename) + elseif mesecon.is_conductor(node.name) then + local node_name = mesecon.get_conductor_on(node, rulename) + effector = mesecon.get_effector(node_name) + if effector and effector.action_off then + effector.action_off(pos, node, rulename) + end end end)