More tile juggling.
[naja.git] / data / location_decks / test.yaml
index 75f8690a88df0f0ff109eb5be162ab73a40bdd7d..3c650320faf3563956cd98f6d971995840f2b378 100644 (file)
@@ -1,10 +1,62 @@
-- actions: []
-- actions:
-  - action_class: 'DoNothing'
-    required_bits: [CYAN]
-- actions:
-  - action_class: 'DoNothing'
-    required_bits: [YELLOW]
-- actions:
-  - action_class: 'DoNothing'
-    required_bits: [YELLOW, MAGENTA]
+description: "Test location deck."
+
+# This field is ignored, but it's a useful place to put some action definitions
+# we can reference later.
+_standard_actions:
+  set_bits_default: &SET-BITS-DEFAULT
+    action_class: 'LoseHealthOrMSBAndSetBits'
+    required_bits: []
+  gain_health_default: &GAIN-HEALTH-DEFAULT
+    action_class: 'GainHealthAndClearBitsOrMSB'
+    required_bits: []
+  bad_default: &BAD-DEFAULT
+    action_class: 'LoseHealthOrMSB'
+    required_bits: []
+  toggle_bits_c: &TOGGLE-BITS-C
+    action_class: 'ToggleBits'
+    required_bits: [BLUE]
+  set_bits_ym: &SET-BITS-YM
+    action_class: 'SetBits'
+    required_bits: [RED, GREEN]
+  acquire_win_token: &ACQUIRE-WIN-TOKEN
+    action_class: 'AcquireWinToken'
+    required_bits: [RED, GREEN, BLUE]
+
+cards:
+  - actions:
+    - *SET-BITS-DEFAULT
+  - actions:
+    - *BAD-DEFAULT
+    - *TOGGLE-BITS-C
+    - *SET-BITS-YM
+  - actions:
+    - action_class: 'ToggleBits'
+      required_bits: [RED]
+  - actions:
+    - *SET-BITS-YM
+  - actions:
+    - *BAD-DEFAULT
+    - *ACQUIRE-WIN-TOKEN
+  - actions:
+    - *GAIN-HEALTH-DEFAULT
+    - *TOGGLE-BITS-C
+  - actions:
+    - action_class: 'ShiftLocations'
+      required_bits: [GREEN, BLUE]
+      data: {'direction': NORTH}
+  - bits: [RED, GREEN]  # colour-blind robot!
+    actions:
+    - action_class: 'ToggleBits'
+      required_bits: [GREEN]
+  - actions:
+    - action_class: 'AllowChessMove'
+      required_bits: [RED, BLUE]
+      data: {'chesspiece': KNIGHT}
+  - actions:
+    - action_class: 'AllowChessMove'
+      required_bits: [RED, BLUE]
+      data: {'chesspiece': BISHOP}
+  - actions:
+    - action_class: 'AllowChessMove'
+      required_bits: [RED, BLUE]
+      data: {'chesspiece': CASTLE}