PHYRRIC Victory\!
[naja.git] / data / location_decks / puzzles / chess.yaml
index 364de026389bdc849d63684592eef466674d20fb..42345731715aba6086110591ea702b51ce2872fe 100644 (file)
@@ -1,33 +1,70 @@
 description: "Kasparov to F3"
 puzzle: true
 
+# This field is ignored, but it's a useful place to put some action definitions
+# we can reference later.
+_action_defitions:
+  - &PHYRRIC-VICTORY
+    action_class: GenericBits
+    required_bits: [RED, GREEN, BLUE]
+    data:
+      clear: [NORTH, SOUTH, EAST, WEST, RED, GREEN, BLUE, MSB]
+      acquire_win: true
+      lose_health: true
+      once: true
+
 # This field is ignored, but it's a useful place to put some card definitions
 # we can reference later.
 _card_definitions:
-  - &TEST-WIN-CARD
-    card_name: 'test-win'
+  - &CHESS-WIN-CARD-BISHOP
+    card_name: 'chess-win-bishop'
+    actions:
+      - action_class: AllowChessMove
+        required_bits: []
+        data:
+          chesspiece: BISHOP
+      - *PHYRRIC-VICTORY
+  - &CHESS-WIN-CARD-CASTLE
+    card_name: 'chess-win-rook'
     actions:
-      - action_class: 'AcquireWinToken'
-        required_bits: [RED, GREEN, BLUE]
+      - action_class: AllowChessMove
+        required_bits: []
+        data:
+          chesspiece: CASTLE
+      - *PHYRRIC-VICTORY
+  - &CHESS-WIN-CARD-KNIGHT
+    card_name: 'chess-win-knight'
+    actions:
+      - action_class: AllowChessMove
+        required_bits: []
+        data:
+          chesspiece: KNIGHT
+      - *PHYRRIC-VICTORY
+  - &CHESS-WIN-CARD-SEPPUKU
+    card_name: 'chess-win-seppuku'
+    actions:
+      - action_class: LoseHealthOrMSB
+        required_bits: []
+      - *PHYRRIC-VICTORY
   - &TEST-BORING
     card_name: 'test-boring'
     actions:
-      - action_class: 'DoNothing'
+      - action_class: DoNothing
         required_bits: []
   - &CHESS-CENTRE
     card_name: 'chess-centre'
     bits: [NORTH, SOUTH, EAST, WEST]
     actions:
-      - action_class: 'SetBits'
+      - action_class: SetBits
         required_bits: []
-      - action_class: 'AllowChessMove'
+      - action_class: AllowChessMove
         data: {'chesspiece': BISHOP}
         required_bits: [RED, GREEN, BLUE, MSB]
   - &CHESS-NORTH
     card_name: 'chess-north'
     bits: [NORTH, EAST, WEST, RED]
     actions:
-      - action_class: 'GenericBits'
+      - action_class: GenericBits
         required_bits: []
         data:
           toggle: [RED]
@@ -36,27 +73,37 @@ _card_definitions:
     card_name: 'chess-south'
     bits: [SOUTH, EAST, WEST, RED, GREEN]
     actions:
-      - action_class: 'ToggleBits'
-        required_bits: [SOUTH]
+      - action_class: GenericBits
+        required_bits: []
+        data:
+          toggle: [RED, GREEN]
+          clear: [SOUTH, EAST, WEST]
   - &CHESS-EAST
     card_name: 'chess-east'
     bits: [NORTH, SOUTH, EAST, RED, BLUE]
     actions:
-      - action_class: 'ToggleBits'
-        required_bits: [EAST]
+      - action_class: GenericBits
+        required_bits: []
+        data:
+          toggle: [RED, BLUE]
+          clear: [NORTH, SOUTH, EAST]
+
   - &CHESS-WEST
     card_name: 'chess-west'
     bits: [NORTH, SOUTH, WEST, BLUE, MSB]
     actions:
-      - action_class: 'ToggleBits'
-        required_bits: [WEST]
+      - action_class: GenericBits
+        required_bits: []
+        data:
+          toggle: [BLUE, MSB]
+          clear: [NORTH, SOUTH, WEST]
 
 cards:
-  - *TEST-WIN-CARD
+  - *CHESS-WIN-CARD-BISHOP
   - *TEST-BORING
   - *TEST-BORING
   - *TEST-BORING
-  - *TEST-WIN-CARD
+  - *CHESS-WIN-CARD-KNIGHT
 
   - *TEST-BORING
   - *TEST-BORING
@@ -76,8 +123,8 @@ cards:
   - *TEST-BORING
   - *TEST-BORING
 
-  - *TEST-WIN-CARD
+  - *CHESS-WIN-CARD-CASTLE
   - *TEST-BORING
   - *TEST-BORING
   - *TEST-BORING
-  - *TEST-WIN-CARD
+  - *CHESS-WIN-CARD-SEPPUKU