-
-
Save rvaidya/3fe8a5f3b1d113ffa8625cf5ff2c88a3 to your computer and use it in GitHub Desktop.
blueprint: | |
name: Aqara Magic Cube | |
description: Control anything using Aqara Magic Cube. | |
domain: automation | |
input: | |
remote: | |
name: Magic Cube | |
description: Select the Aqara Magic Cube device | |
selector: | |
device: | |
integration: zha | |
manufacturer: LUMI | |
active_face: | |
name: Active Face | |
description: Select the number input for tracking active face | |
selector: | |
entity: | |
domain: input_number | |
flip_90: | |
name: Flip 90 degrees | |
description: 'Actions to run when cube flips 90 degrees. | |
This cancels all specific 90 degrees functions. | |
e.g From side 1 to side 2 will be the same as from side 6 to side 2' | |
default: false | |
selector: | |
boolean: {} | |
cube_flip_90: | |
name: Flip cube 90 degrees | |
description: Action to run when cube flips 90 degrees. This only works if 'Flip | |
90 degrees' is toggled | |
default: [] | |
selector: | |
action: {} | |
flip_180: | |
name: Flip 180 degrees | |
description: 'Actions to run when cube flips 180 degrees. | |
This cancels all specific 180 degrees functions | |
e.g From side 1 to side 4 will be the same as from side 5 to side 2' | |
default: false | |
selector: | |
boolean: {} | |
cube_flip_180: | |
name: Flip cube 180 degrees | |
description: Action to run when cube flips 180 degrees. This only works if 'Flip | |
180 degrees' is toggled | |
default: [] | |
selector: | |
action: {} | |
flip_any: | |
name: Flip cube to any side | |
description: 'Actions to run when cube flips to any side. | |
This cares about the end side, but cancels all specific flip functions. | |
e.g From side 1 to side 2 will be the same as from side 6 to side 2 | |
but different than side 1 to side 5' | |
default: false | |
selector: | |
boolean: {} | |
cube_flip_1: | |
name: Flip cube to side 1 | |
description: Action to run when cube flips to side 1. This only works if 'Flip | |
any' is toggled | |
default: [] | |
selector: | |
action: {} | |
cube_flip_2: | |
name: Flip cube to side 2 | |
description: Action to run when cube flips to side 2. This only works if 'Flip | |
any' is toggled | |
default: [] | |
selector: | |
action: {} | |
cube_flip_3: | |
name: Flip cube to side 3 | |
description: Action to run when cube flips to side 3. This only works if 'Flip | |
any' is toggled | |
default: [] | |
selector: | |
action: {} | |
cube_flip_4: | |
name: Flip cube to side 4 | |
description: Action to run when cube flips to side 4. This only works if 'Flip | |
any' is toggled | |
default: [] | |
selector: | |
action: {} | |
cube_flip_5: | |
name: Flip cube to side 5 | |
description: Action to run when cube flips to side 5. This only works if 'Flip | |
any' is toggled | |
default: [] | |
selector: | |
action: {} | |
cube_flip_6: | |
name: Flip cube to side 6 | |
description: Action to run when cube flips to side 6. This only works if 'Flip | |
any' is toggled | |
default: [] | |
selector: | |
action: {} | |
slide_any_side: | |
name: Slide any side | |
description: 'Actions to run when cube slides on any side. | |
This cancels all specific ''slide'' functions | |
e.g Slide on side 1 will be the same as slide on side 2' | |
default: false | |
selector: | |
boolean: {} | |
cube_slide_any: | |
name: Slide cube on any side | |
description: Action to run when cube slides on any side. This only works if | |
'Slide any side' is toggled | |
default: [] | |
selector: | |
action: {} | |
knock_any_side: | |
name: Knock on any side | |
description: 'Actions to run when knocking cube regardless of the side. | |
This cancels all specific ''knock'' functions | |
e.g Knock on side 1 will be the same as knocking side 2' | |
default: false | |
selector: | |
boolean: {} | |
cube_knock_any: | |
name: Knock cube on any side | |
description: Action to run when knocking cube on any side. This only works if | |
'Knock on any side' is toggled | |
default: [] | |
selector: | |
action: {} | |
one_to_two: | |
name: From side 1 to side 2 | |
description: Action to run when cube goes from side 1 to side 2 | |
default: [] | |
selector: | |
action: {} | |
one_to_three: | |
name: From side 1 to side 3 | |
description: Action to run when cube goes from side 1 to side 3 | |
default: [] | |
selector: | |
action: {} | |
one_to_four: | |
name: From side 1 to side 4 | |
description: Action to run when cube goes from side 1 to side 4 | |
default: [] | |
selector: | |
action: {} | |
one_to_five: | |
name: From side 1 to side 5 | |
description: Action to run when cube goes from side 1 to side 5 | |
default: [] | |
selector: | |
action: {} | |
one_to_six: | |
name: From side 1 to side 6 | |
description: Action to run when cube goes from side 1 to side 6 | |
default: [] | |
selector: | |
action: {} | |
two_to_one: | |
name: From side 2 to side 1 | |
description: Action to run when cube goes from side 2 to side 1 | |
default: [] | |
selector: | |
action: {} | |
two_to_three: | |
name: From side 2 to side 3 | |
description: Action to run when cube goes from side 2 to side 3 | |
default: [] | |
selector: | |
action: {} | |
two_to_four: | |
name: From side 2 to side 4 | |
description: Action to run when cube goes from side 2 to side 4 | |
default: [] | |
selector: | |
action: {} | |
two_to_five: | |
name: From side 2 to side 5 | |
description: Action to run when cube goes from side 2 to side 5 | |
default: [] | |
selector: | |
action: {} | |
two_to_six: | |
name: From side 2 to side 6 | |
description: Action to run when cube goes from side 2 to side 6 | |
default: [] | |
selector: | |
action: {} | |
three_to_one: | |
name: From side 3 to side 1 | |
description: Action to run when cube goes from side 3 to side 1 | |
default: [] | |
selector: | |
action: {} | |
three_to_two: | |
name: From side 3 to side 2 | |
description: Action to run when cube goes from side 3 to side 2 | |
default: [] | |
selector: | |
action: {} | |
three_to_four: | |
name: From side 3 to side 4 | |
description: Action to run when cube goes from side 3 to side 4 | |
default: [] | |
selector: | |
action: {} | |
three_to_five: | |
name: From side 3 to side 5 | |
description: Action to run when cube goes from side 3 to side 5 | |
default: [] | |
selector: | |
action: {} | |
three_to_six: | |
name: From side 3 to side 6 | |
description: Action to run when cube goes from side 3 to side 6 | |
default: [] | |
selector: | |
action: {} | |
four_to_one: | |
name: From side 4 to side 1 | |
description: Action to run when cube goes from side 4 to side 1 | |
default: [] | |
selector: | |
action: {} | |
four_to_two: | |
name: From side 4 to side 2 | |
description: Action to run when cube goes from side 4 to side 2 | |
default: [] | |
selector: | |
action: {} | |
four_to_three: | |
name: From side 4 to side 3 | |
description: Action to run when cube goes from side 4 to side 3 | |
default: [] | |
selector: | |
action: {} | |
four_to_five: | |
name: From side 4 to side 5 | |
description: Action to run when cube goes from side 4 to side 5 | |
default: [] | |
selector: | |
action: {} | |
four_to_six: | |
name: From side 4 to side 6 | |
description: Action to run when cube goes from side 4 to side 6 | |
default: [] | |
selector: | |
action: {} | |
five_to_one: | |
name: From side 5 to side 1 | |
description: Action to run when cube goes from side 5 to side 1 | |
default: [] | |
selector: | |
action: {} | |
five_to_two: | |
name: From side 5 to side 2 | |
description: Action to run when cube goes from side 5 to side 2 | |
default: [] | |
selector: | |
action: {} | |
five_to_three: | |
name: From side 5 to side 3 | |
description: Action to run when cube goes from side 5 to side 3 | |
default: [] | |
selector: | |
action: {} | |
five_to_four: | |
name: From side 5 to side 4 | |
description: Action to run when cube goes from side 5 to side 4 | |
default: [] | |
selector: | |
action: {} | |
five_to_six: | |
name: From side 5 to side 6 | |
description: Action to run when cube goes from side 5 to side 6 | |
default: [] | |
selector: | |
action: {} | |
six_to_one: | |
name: From side 6 to side 1 | |
description: Action to run when cube goes from side 6 to side 1 | |
default: [] | |
selector: | |
action: {} | |
six_to_two: | |
name: From side 6 to side 2 | |
description: Action to run when cube goes from side 6 to side 2 | |
default: [] | |
selector: | |
action: {} | |
six_to_three: | |
name: From side 6 to side 3 | |
description: Action to run when cube goes from side 6 to side 3 | |
default: [] | |
selector: | |
action: {} | |
six_to_four: | |
name: From side 6 to side 4 | |
description: Action to run when cube goes from side 6 to side 4 | |
default: [] | |
selector: | |
action: {} | |
six_to_five: | |
name: From side 6 to side 5 | |
description: Action to run when cube goes from side 6 to side 5 | |
default: [] | |
selector: | |
action: {} | |
one_to_one: | |
name: Knock - Side 1 | |
description: Action to run when knocking on side 1 | |
default: [] | |
selector: | |
action: {} | |
two_to_two: | |
name: Knock - Side 2 | |
description: Action to run when knocking on side 2 | |
default: [] | |
selector: | |
action: {} | |
three_to_three: | |
name: Knock - Side 3 | |
description: Action to run when knocking on side 3 | |
default: [] | |
selector: | |
action: {} | |
four_to_four: | |
name: Knock - Side 4 | |
description: Action to run when knocking on side 4 | |
default: [] | |
selector: | |
action: {} | |
five_to_five: | |
name: Knock - Side 5 | |
description: Action to run when knocking on side 5 | |
default: [] | |
selector: | |
action: {} | |
six_to_six: | |
name: Knock - Side 6 | |
description: Action to run when knocking on side 6 | |
default: [] | |
selector: | |
action: {} | |
slide_on_one: | |
name: Slide - Side 1 up | |
description: Action to run when slides with Side 1 up | |
default: [] | |
selector: | |
action: {} | |
slide_on_two: | |
name: Slide - Side 2 up | |
description: Action to run when slides with Side 2 up | |
default: [] | |
selector: | |
action: {} | |
slide_on_three: | |
name: Slide - Side 3 up | |
description: Action to run when slides with Side 3 up | |
default: [] | |
selector: | |
action: {} | |
slide_on_four: | |
name: Slide - Side 4 up | |
description: Action to run when slides with Side 4 up | |
default: [] | |
selector: | |
action: {} | |
slide_on_five: | |
name: Slide - Side 5 up | |
description: Action to run when slides with Side 5 up | |
default: [] | |
selector: | |
action: {} | |
slide_on_six: | |
name: Slide - Side 6 up | |
description: Action to run when slides with Side 6 up | |
default: [] | |
selector: | |
action: {} | |
cube_wake: | |
name: Wake up the cube | |
description: Action to run when cube wakes up | |
default: [] | |
selector: | |
action: {} | |
cube_drop: | |
name: Cube drops | |
description: Action to run when cube drops | |
default: [] | |
selector: | |
action: {} | |
cube_shake: | |
name: Shake cube | |
description: Action to run when you shake the cube | |
default: [] | |
selector: | |
action: {} | |
rotate_any_side: | |
name: Rotate any side | |
description: 'Actions to run when rotating cube regardless of the side. | |
This cancels all side-specific ''rotate'' functions | |
e.g Rotate on side 1 will be the same as rotating side 2' | |
default: false | |
selector: | |
boolean: {} | |
rotate_right: | |
name: Rotate right | |
description: Action to run when cube rotates right on any side. This only works if | |
'Rotate any side' is toggled | |
default: [] | |
selector: | |
action: {} | |
rotate_left: | |
name: Rotate left | |
description: Action to run when cube rotates left on any side. This only works if | |
'Rotate any side' is toggled | |
default: [] | |
selector: | |
action: {} | |
rotate_left_side_1: | |
name: Rotate cube left with side 1 up | |
default: [] | |
selector: | |
action: {} | |
rotate_left_side_2: | |
name: Rotate cube left with side 2 up | |
default: [] | |
selector: | |
action: {} | |
rotate_left_side_3: | |
name: Rotate cube left with side 3 up | |
default: [] | |
selector: | |
action: {} | |
rotate_left_side_4: | |
name: Rotate cube left with side 4 up | |
default: [] | |
selector: | |
action: {} | |
rotate_left_side_5: | |
name: Rotate cube left with side 5 up | |
default: [] | |
selector: | |
action: {} | |
rotate_left_side_6: | |
name: Rotate cube left with side 6 up | |
default: [] | |
selector: | |
action: {} | |
rotate_right_side_1: | |
name: Rotate cube right with side 1 up | |
default: [] | |
selector: | |
action: {} | |
rotate_right_side_2: | |
name: Rotate cube right with side 2 up | |
default: [] | |
selector: | |
action: {} | |
rotate_right_side_3: | |
name: Rotate cube right with side 3 up | |
default: [] | |
selector: | |
action: {} | |
rotate_right_side_4: | |
name: Rotate cube right with side 4 up | |
default: [] | |
selector: | |
action: {} | |
rotate_right_side_5: | |
name: Rotate cube right with side 5 up | |
default: [] | |
selector: | |
action: {} | |
rotate_right_side_6: | |
name: Rotate cube right with side 6 up | |
default: [] | |
selector: | |
action: {} | |
source_url: https://community.home-assistant.io/t/aqara-magic-cube-zha-51-actions/270829/1 | |
mode: restart | |
max_exceeded: silent | |
trigger: | |
- platform: event | |
event_type: zha_event | |
event_data: | |
device_id: !input 'remote' | |
action: | |
- variables: | |
command: '{{ trigger.event.data.command }}' | |
value: '{{ trigger.event.data.args.value | default(0) }}' | |
flip_degrees: '{{ trigger.event.data.args.flip_degrees | default(0) }}' | |
flip_any: !input 'flip_any' | |
flip_90: !input 'flip_90' | |
flip_180: !input 'flip_180' | |
slide_any_side: !input 'slide_any_side' | |
knock_any_side: !input 'knock_any_side' | |
rotate_any_side: !input 'rotate_any_side' | |
flip90: 64 | |
flip180: 128 | |
slide: 256 | |
knock: 512 | |
shake: 0 | |
drop: 3 | |
active_face_entity: !input 'active_face' | |
active_face: "{{ states(active_face_entity) | int }}" | |
activated_face: "\n{% if command == \"slide\" or command == \"knock\" %}\n\n \ | |
\ {% if trigger.event.data.args.activated_face == 1 %} 1\n\n {% elif trigger.event.data.args.activated_face\ | |
\ == 2 %} 5\n\n {% elif trigger.event.data.args.activated_face == 3 %} 6\n\n\ | |
\ {% elif trigger.event.data.args.activated_face == 4 %} 4\n\n {% elif trigger.event.data.args.activated_face\ | |
\ == 5 %} 2\n\n {% elif trigger.event.data.args.activated_face == 6 %} 3\n\n\ | |
\ {% endif %}\n\n{% elif command == 'flip' %}\n\n {{ trigger.event.data.args.activated_face\ | |
\ | int }}\n\n{% endif %}\n" | |
from_face: "\n{% if command == \"flip\" and flip_degrees == 90 %}\n\n {{ ((value\ | |
\ - flip90 - (trigger.event.data.args.activated_face - 1)) / 8) + 1 | int }}\n\ | |
\n{% endif %}\n" | |
relative_degrees: "\n{% if command == \"rotate_right\" or command == \"rotate_left\" %}\n\n \ | |
\ {{ trigger.event.data.args.relative_degrees | float }}\n\ | |
\n{% endif %}\n" | |
- choose: | |
- conditions: | |
- '{{ command == ''checkin'' }}' | |
sequence: !input 'cube_wake' | |
- conditions: | |
- '{{ command == ''flip'' }}' | |
sequence: | |
- service: input_number.set_value | |
target: | |
entity_id: '{{ active_face_entity }}' | |
data: | |
value: '{{ activated_face | int }}' | |
- choose: | |
- conditions: '{{ flip_any }}' | |
sequence: | |
- choose: | |
- conditions: '{{ activated_face == 1 }}' | |
sequence: !input 'cube_flip_1' | |
- conditions: '{{ activated_face == 2 }}' | |
sequence: !input 'cube_flip_2' | |
- conditions: '{{ activated_face == 3 }}' | |
sequence: !input 'cube_flip_3' | |
- conditions: '{{ activated_face == 4 }}' | |
sequence: !input 'cube_flip_4' | |
- conditions: '{{ activated_face == 5 }}' | |
sequence: !input 'cube_flip_5' | |
- conditions: '{{ activated_face == 6 }}' | |
sequence: !input 'cube_flip_6' | |
- conditions: | |
- '{{ flip_degrees == 90 and flip_90 }}' | |
sequence: !input 'cube_flip_90' | |
- conditions: | |
- '{{ flip_degrees == 180 and flip_180 }}' | |
sequence: !input 'cube_flip_180' | |
- conditions: | |
- '{{ flip_degrees == 90 and activated_face == 1 }}' | |
sequence: | |
- choose: | |
- conditions: '{{ from_face == 2 }}' | |
sequence: !input 'two_to_one' | |
- conditions: '{{ from_face == 3 }}' | |
sequence: !input 'three_to_one' | |
- conditions: '{{ from_face == 5 }}' | |
sequence: !input 'five_to_one' | |
- conditions: '{{ from_face == 6 }}' | |
sequence: !input 'six_to_one' | |
- conditions: | |
- '{{ flip_degrees == 90 and activated_face == 2 }}' | |
sequence: | |
- choose: | |
- conditions: '{{ from_face == 1 }}' | |
sequence: !input 'one_to_two' | |
- conditions: '{{ from_face == 3 }}' | |
sequence: !input 'three_to_two' | |
- conditions: '{{ from_face == 4 }}' | |
sequence: !input 'four_to_two' | |
- conditions: '{{ from_face == 6 }}' | |
sequence: !input 'six_to_two' | |
- conditions: | |
- '{{ flip_degrees == 90 and activated_face == 3 }}' | |
sequence: | |
- choose: | |
- conditions: '{{ from_face == 1 }}' | |
sequence: !input 'one_to_three' | |
- conditions: '{{ from_face == 2 }}' | |
sequence: !input 'two_to_three' | |
- conditions: '{{ from_face == 4 }}' | |
sequence: !input 'four_to_three' | |
- conditions: '{{ from_face == 5 }}' | |
sequence: !input 'five_to_three' | |
- conditions: | |
- '{{ flip_degrees == 90 and activated_face == 4 }}' | |
sequence: | |
- choose: | |
- conditions: '{{ from_face == 2 }}' | |
sequence: !input 'two_to_four' | |
- conditions: '{{ from_face == 3 }}' | |
sequence: !input 'three_to_four' | |
- conditions: '{{ from_face == 5 }}' | |
sequence: !input 'five_to_four' | |
- conditions: '{{ from_face == 6 }}' | |
sequence: !input 'six_to_four' | |
- conditions: | |
- '{{ flip_degrees == 90 and activated_face == 5 }}' | |
sequence: | |
- choose: | |
- conditions: '{{ from_face == 1 }}' | |
sequence: !input 'one_to_five' | |
- conditions: '{{ from_face == 3 }}' | |
sequence: !input 'three_to_five' | |
- conditions: '{{ from_face == 4 }}' | |
sequence: !input 'four_to_five' | |
- conditions: '{{ from_face == 6 }}' | |
sequence: !input 'six_to_five' | |
- conditions: | |
- '{{ flip_degrees == 90 and activated_face == 6 }}' | |
sequence: | |
- choose: | |
- conditions: '{{ from_face == 1 }}' | |
sequence: !input 'one_to_six' | |
- conditions: '{{ from_face == 2 }}' | |
sequence: !input 'two_to_six' | |
- conditions: '{{ from_face == 4 }}' | |
sequence: !input 'four_to_six' | |
- conditions: '{{ from_face == 5 }}' | |
sequence: !input 'five_to_six' | |
- conditions: | |
- '{{ value == flip180 + activated_face - 1 }}' | |
sequence: | |
- choose: | |
- conditions: '{{ activated_face == 1 }}' | |
sequence: !input 'four_to_one' | |
- conditions: '{{ activated_face == 2 }}' | |
sequence: !input 'five_to_two' | |
- conditions: '{{ activated_face == 3 }}' | |
sequence: !input 'six_to_three' | |
- conditions: '{{ activated_face == 4 }}' | |
sequence: !input 'one_to_four' | |
- conditions: '{{ activated_face == 5 }}' | |
sequence: !input 'two_to_five' | |
- conditions: '{{ activated_face == 6 }}' | |
sequence: !input 'three_to_six' | |
- conditions: | |
- '{{ command == ''knock'' }}' | |
sequence: | |
- service: input_number.set_value | |
target: | |
entity_id: '{{ active_face_entity }}' | |
data: | |
value: '{{ activated_face | int }}' | |
- choose: | |
- conditions: '{{ knock_any_side }}' | |
sequence: !input 'cube_knock_any' | |
- conditions: '{{ activated_face == 1 }}' | |
sequence: !input 'one_to_one' | |
- conditions: '{{ activated_face == 2 }}' | |
sequence: !input 'two_to_two' | |
- conditions: '{{ activated_face == 3 }}' | |
sequence: !input 'three_to_three' | |
- conditions: '{{ activated_face == 4 }}' | |
sequence: !input 'four_to_four' | |
- conditions: '{{ activated_face == 5 }}' | |
sequence: !input 'five_to_five' | |
- conditions: '{{ activated_face == 6 }}' | |
sequence: !input 'six_to_six' | |
- conditions: | |
- '{{ command == ''slide'' }}' | |
sequence: | |
- service: input_number.set_value | |
target: | |
entity_id: '{{ active_face_entity }}' | |
data: | |
value: '{{ activated_face | int }}' | |
- choose: | |
- conditions: '{{ slide_any_side }}' | |
sequence: !input 'cube_slide_any' | |
- conditions: | |
- '{{ value == slide + activated_face - 1 }}' | |
sequence: | |
- choose: | |
- conditions: '{{ activated_face == 1 }}' | |
sequence: !input 'slide_on_one' | |
- conditions: '{{ activated_face == 2 }}' | |
sequence: !input 'slide_on_two' | |
- conditions: '{{ activated_face == 3 }}' | |
sequence: !input 'slide_on_three' | |
- conditions: '{{ activated_face == 4 }}' | |
sequence: !input 'slide_on_four' | |
- conditions: '{{ activated_face == 5 }}' | |
sequence: !input 'slide_on_five' | |
- conditions: '{{ activated_face == 6 }}' | |
sequence: !input 'slide_on_six' | |
- conditions: | |
- '{{ command == ''rotate_left'' and rotate_any_side }}' | |
sequence: !input 'rotate_left' | |
- conditions: | |
- '{{ command == ''rotate_left'' and active_face == 1 }}' | |
sequence: !input 'rotate_left_side_1' | |
- conditions: | |
- '{{ command == ''rotate_left'' and active_face == 2 }}' | |
sequence: !input 'rotate_left_side_2' | |
- conditions: | |
- '{{ command == ''rotate_left'' and active_face == 3 }}' | |
sequence: !input 'rotate_left_side_3' | |
- conditions: | |
- '{{ command == ''rotate_left'' and active_face == 4 }}' | |
sequence: !input 'rotate_left_side_4' | |
- conditions: | |
- '{{ command == ''rotate_left'' and active_face == 5 }}' | |
sequence: !input 'rotate_left_side_5' | |
- conditions: | |
- '{{ command == ''rotate_left'' and active_face == 6 }}' | |
sequence: !input 'rotate_left_side_6' | |
- conditions: | |
- '{{ command == ''rotate_right'' and rotate_any_side }}' | |
sequence: !input 'rotate_right' | |
- conditions: | |
- '{{ command == ''rotate_right'' and active_face == 1 }}' | |
sequence: !input 'rotate_right_side_1' | |
- conditions: | |
- '{{ command == ''rotate_right'' and active_face == 2 }}' | |
sequence: !input 'rotate_right_side_2' | |
- conditions: | |
- '{{ command == ''rotate_right'' and active_face == 3 }}' | |
sequence: !input 'rotate_right_side_3' | |
- conditions: | |
- '{{ command == ''rotate_right'' and active_face == 4 }}' | |
sequence: !input 'rotate_right_side_4' | |
- conditions: | |
- '{{ command == ''rotate_right'' and active_face == 5 }}' | |
sequence: !input 'rotate_right_side_5' | |
- conditions: | |
- '{{ command == ''rotate_right'' and active_face == 6 }}' | |
sequence: !input 'rotate_right_side_6' | |
- conditions: | |
- '{{ command == ''shake'' or value == shake }}' | |
sequence: !input 'cube_shake' | |
- conditions: | |
- '{{ command == ''drop'' or value == drop }}' | |
sequence: !input 'cube_drop' |
I just noticed this block of code that seems to be the reason for the issues that I am seeing (i.e. wrong activate_face on knock event):
activated_face: > {% if command == "slide" or command == "knock" %} {% if trigger.event.data.args.activated_face == 1 %} 1 {% elif trigger.event.data.args.activated_face == 2 %} 5 {% elif trigger.event.data.args.activated_face == 3 %} 6 {% elif trigger.event.data.args.activated_face == 4 %} 4 {% elif trigger.event.data.args.activated_face == 5 %} 2 {% elif trigger.event.data.args.activated_face == 6 %} 3 {% endif %}
It seems on a knock or slide, this is overriding the active_face to be a different face than is indicated in the event arg.
That was what was causing the issue for me, I forked the code and fixed it
https://gist.github.com/NoBadDays/cba116e1b6115956a443fcd486b25208
I just noticed this block of code that seems to be the reason for the issues that I am seeing (i.e. wrong activate_face on knock event):
activated_face: >
{% if command == "slide" or command == "knock" %}
{% if trigger.event.data.args.activated_face == 1 %} 1
{% elif trigger.event.data.args.activated_face == 2 %} 5
{% elif trigger.event.data.args.activated_face == 3 %} 6
{% elif trigger.event.data.args.activated_face == 4 %} 4
{% elif trigger.event.data.args.activated_face == 5 %} 2
{% elif trigger.event.data.args.activated_face == 6 %} 3
{% endif %}
It seems on a knock or slide, this is overriding the active_face to be a different face than is indicated in the event arg.