diff options
author | Jeija <norrepli@gmail.com> | 2012-08-12 10:57:00 +0200 |
---|---|---|
committer | Jeija <norrepli@gmail.com> | 2012-08-12 10:57:00 +0200 |
commit | 9829abc74dcc5ce886dfd6bbb01315e874fe917e (patch) | |
tree | 28841e2f3b5dbc5cbc2bc87a1623aef63ebf9553 /mesecons/init.lua | |
parent | d72c0e6bdde1d6e9400c641a80cbc8b7b654a96b (diff) | |
download | mesecons-9829abc74dcc5ce886dfd6bbb01315e874fe917e.tar mesecons-9829abc74dcc5ce886dfd6bbb01315e874fe917e.tar.gz mesecons-9829abc74dcc5ce886dfd6bbb01315e874fe917e.tar.bz2 mesecons-9829abc74dcc5ce886dfd6bbb01315e874fe917e.tar.xz mesecons-9829abc74dcc5ce886dfd6bbb01315e874fe917e.zip |
HUGE speed improvement
Diffstat (limited to 'mesecons/init.lua')
-rw-r--r-- | mesecons/init.lua | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/mesecons/init.lua b/mesecons/init.lua index e796691..78b84d9 100644 --- a/mesecons/init.lua +++ b/mesecons/init.lua @@ -88,6 +88,7 @@ mesecon.actions_off={} -- Saves registered function callbacks for mesecon off mesecon.actions_change={} -- Saves registered function callbacks for mesecon change mesecon.pwr_srcs={} mesecon.pwr_srcs_off={} +mesecon.effectors={} mesecon.rules={} mesecon.conductors={} @@ -135,7 +136,21 @@ function mesecon:receptor_on(pos, rules) end function mesecon:receptor_off(pos, rules) - mesecon:turnoff(pos, 0, 0, 0, true, rules) + if rules == nil then + rules = mesecon:get_rules("default") + end + + local i = 1 + while rules[i]~=nil do + local np = {} + np.x = pos.x + rules[i].x + np.y = pos.y + rules[i].y + np.z = pos.z + rules[i].z + if mesecon:connected_to_pw_src(np, 0, 0, 0, {}) == false then + mesecon:turnoff(np) + end + i=i+1 + end end function mesecon:register_on_signal_on(action) |