diff options
-rw-r--r-- | mesecons/init.lua | 9 | ||||
-rw-r--r-- | mesecons/legacy.lua | 30 | ||||
-rw-r--r-- | mesecons_switch/init.lua | 4 |
3 files changed, 32 insertions, 11 deletions
diff --git a/mesecons/init.lua b/mesecons/init.lua index a1a3149..096e509 100644 --- a/mesecons/init.lua +++ b/mesecons/init.lua @@ -66,11 +66,6 @@ dofile(minetest.get_modpath("mesecons").."/actionqueue.lua"); -- like calling action_on/off/change dofile(minetest.get_modpath("mesecons").."/internal.lua"); --- Deprecated stuff --- To be removed in future releases --- Currently there is nothing here -dofile(minetest.get_modpath("mesecons").."/legacy.lua"); - -- API -- these are the only functions you need to remember @@ -133,6 +128,10 @@ end print("[OK] Mesecons") +-- Deprecated stuff +-- To be removed in future releases +dofile(minetest.get_modpath("mesecons").."/legacy.lua"); + --The actual wires dofile(minetest.get_modpath("mesecons").."/wires.lua"); diff --git a/mesecons/legacy.lua b/mesecons/legacy.lua index 60e860f..c09b5a4 100644 --- a/mesecons/legacy.lua +++ b/mesecons/legacy.lua @@ -1,7 +1,29 @@ -function mesecon:receptor_on(pos, rules)
- mesecon.receptor_on(pos, rules)
+-- Ugly hack to prevent breaking compatibility with other mods
+-- Just remove the following two functions to delete the hack, to be done when other mods have updated
+function mesecon.receptor_on(self, pos, rules)
+ if (self.receptor_on) then
+ print("[Mesecons] Warning: A mod with mesecon support called mesecon:receptor_on.")
+ print("[Mesecons] If you are the programmer of this mod, please update it ")
+ print("[Mesecons] to use mesecon.receptor_on instead. mesecon:* is deprecated")
+ print("[Mesecons] Otherwise, please make sure you're running the latest version")
+ print("[Mesecons] of that mod and inform the mod creator.")
+ else
+ rules = pos
+ pos = self
+ end
+ mesecon.queue:add_action(pos, "receptor_on", {rules}, nil, rules)
end
-function mesecon:receptor_off(pos, rules)
- mesecon.receptor_off(pos, rules)
+function mesecon.receptor_off(self, pos, rules)
+ if (self.receptor_off) then
+ print("[Mesecons] Warning: A mod with mesecon support called mesecon:receptor_off.")
+ print("[Mesecons] If you are the programmer of this mod, please update it ")
+ print("[Mesecons] to use mesecon.receptor_off instead. mesecon:* is deprecated")
+ print("[Mesecons] Otherwise, please make sure you're running the latest version")
+ print("[Mesecons] of that mod and inform the mod creator.")
+ else
+ rules = pos
+ pos = self
+ end
+ mesecon.queue:add_action(pos, "receptor_off", {rules}, nil, rules)
end
diff --git a/mesecons_switch/init.lua b/mesecons_switch/init.lua index f40ef80..1b7f478 100644 --- a/mesecons_switch/init.lua +++ b/mesecons_switch/init.lua @@ -11,7 +11,7 @@ minetest.register_node("mesecons_switch:mesecon_switch_off", { }}, on_punch = function(pos, node) minetest.swap_node(pos, {name = "mesecons_switch:mesecon_switch_on", param2 = node.param2}) - mesecon.receptor_on(pos) + mesecon:receptor_on(pos) minetest.sound_play("mesecons_switch", {pos=pos}) end }) @@ -27,7 +27,7 @@ minetest.register_node("mesecons_switch:mesecon_switch_on", { }}, on_punch = function(pos, node) minetest.swap_node(pos, {name = "mesecons_switch:mesecon_switch_off", param2 = node.param2}) - mesecon.receptor_off(pos) + mesecon:receptor_off(pos) minetest.sound_play("mesecons_switch", {pos=pos}) end }) |