# This field is ignored, but it's a useful place to put some action definitions
# we can reference later.
-_standard_actions:
+_action_definitions:
# No-colour actions.
- &SET-BITS-DEFAULT
action_class: 'LoseHealthOrMSBAndSetBits'
required_bits: [GREEN]
data: {'direction': WEST}
+ - &ROT-CW
+ action_class: 'RotateLocations'
+ required_bits: [RED]
+ data: {'rot_direction': CLOCKWISE}
+ - &ROT-CCW
+ action_class: 'RotateLocations'
+ required_bits: [RED]
+ data: {'rot_direction': ANTICLOCKWISE}
+
# Two-colour actions.
- &KNIGHT-MOVE
action_class: 'AllowChessMove'
action_class: 'AcquireWinToken'
required_bits: [RED, GREEN, BLUE]
-# This field is ignored, but it's a useful place to put some action definitions
+# This field is ignored, but it's a useful place to put some card definitions
# we can reference later.
-_standard_cards:
- - &WIN-CARD
+_card_definitions:
+ - &WIN-CARD-1
+ actions:
+ - *ACQUIRE-WIN-TOKEN
+ - &WIN-CARD-2
+ actions:
+ - *BAD-DEFAULT
+ - *ACQUIRE-WIN-TOKEN
+ - &WIN-CARD-3
actions:
+ - *SET-BITS-DEFAULT
- *ACQUIRE-WIN-TOKEN
- &KNIGHT-AND-SET
- &TOGGLE-RG-R
bits: [RED, GREEN] # Colour-blind robot!
actions:
+ - *GAIN-HEALTH-DEFAULT
- action_class: 'ToggleBits'
required_bits: [RED]
- action_class: 'SetBits'
- &TOGGLE-RG-G
bits: [RED, GREEN] # Colour-blind robot!
actions:
+ - *GAIN-HEALTH-DEFAULT
- action_class: 'ToggleBits'
required_bits: [GREEN]
- action_class: 'SetBits'
- *SHIFT-W
- *HEAL-RB
+ - &ROT-CW-AND-SET
+ actions:
+ - *TOGGLE-BITS-DEFAULT
+ - *ROT-CW
+ - *SET-BITS-B
+
+ - &ROT-CCW-AND-SET
+ actions:
+ - *TOGGLE-BITS-DEFAULT
+ - *ROT-CCW
+ - *SET-BITS-G
+
cards:
- - *WIN-CARD
+ - *WIN-CARD-1
+ - *WIN-CARD-2
+ - *WIN-CARD-3
- *KNIGHT-AND-SET
- *CASTLE-AND-SET
- *BISHOP-AND-SET
- *SHIFT-S-AND-HEAL
- *SHIFT-E-AND-HEAL
- *SHIFT-W-AND-HEAL
+ - *ROT-CW-AND-SET
+ - *ROT-CCW-AND-SET