Fix double corner rotation

This commit is contained in:
numzero 2020-08-16 12:34:33 +03:00
parent b44e6e89be
commit f8469eb3bf
1 changed files with 14 additions and 2 deletions

View File

@ -6,7 +6,7 @@ local doublecorner_selectionbox = {
fixed = { -8/16, -8/16, -8/16, 8/16, -6/16, 8/16 },
}
local doublecorner_rules = {
local rules = {
{
{ x = 1, y = 0, z = 0 },
{ x = 0, y = 0, z = 1 },
@ -17,6 +17,18 @@ local doublecorner_rules = {
},
}
local doublecorner_rules = {}
for k = 1, 4 do
doublecorner_rules[k] = table.copy(rules)
for i, r in ipairs(rules) do
rules[i] = mesecon.rotate_rules_left(r)
end
end
local function doublecorner_get_rules(node)
return doublecorner_rules[node.param2 % 4 + 1]
end
local doublecorner_states = {
"mesecons_extrawires:doublecorner_00",
"mesecons_extrawires:doublecorner_01",
@ -53,7 +65,7 @@ for k, state in ipairs(doublecorner_states) do
mesecons = {
conductor = {
states = doublecorner_states,
rules = doublecorner_rules,
rules = doublecorner_get_rules,
},
},
on_blast = mesecon.on_blastnode,