Fix Microcontroller bug (discovered by Fenris) and some others that propably noone found

This commit is contained in:
Jeija
2012-09-08 15:10:31 +02:00
parent 4ae7bc9aa6
commit f959c16763
3 changed files with 22 additions and 46 deletions

View File

@ -60,14 +60,13 @@ function mesecon:receptor_on(pos, rules)
end
for i, rule in ipairs(rules) do
local np = {}
np.x = pos.x + rule.x
np.y = pos.y + rule.y
np.z = pos.z + rule.z
local np = {
x = pos.x + rule.x,
y = pos.y + rule.y,
z = pos.z + rule.z}
if mesecon:rules_link(pos, np, rules) then
mesecon:turnon(np, pos)
end
i=i+1
end
end
@ -76,17 +75,14 @@ function mesecon:receptor_off(pos, rules)
rules = mesecon:get_rules("default")
end
local connected = false
for i, rule in ipairs(rules) do
local np = {}
np.x = pos.x + rule.x
np.y = pos.y + rule.y
np.z = pos.z + rule.z
if mesecon:rules_link(pos, np, rules) and mesecon:connected_to_pw_src(np) == false then
local np = {
x = pos.x + rule.x,
y = pos.y + rule.y,
z = pos.z + rule.z}
if mesecon:rules_link(pos, np, rules) and not mesecon:connected_to_pw_src(np) then
mesecon:turnoff(np, pos)
end
i=i+1
end
end