rotation action
[naja.git] / data / location_decks / standard.yaml
1 description: "Standard location deck."
2
3 # This field is ignored, but it's a useful place to put some action definitions
4 # we can reference later.
5 _action_definitions:
6   # No-colour actions.
7   - &SET-BITS-DEFAULT
8     action_class: 'LoseHealthOrMSBAndSetBits'
9     required_bits: []
10   - &GAIN-HEALTH-DEFAULT
11     action_class: 'GainHealthAndClearBitsOrMSB'
12     required_bits: []
13   - &TOGGLE-BITS-DEFAULT
14     action_class: 'ToggleBits'
15     required_bits: []
16   - &BAD-DEFAULT
17     action_class: 'LoseHealthOrMSB'
18     required_bits: []
19
20   # One-colour actions.
21   - &SET-BITS-R
22     action_class: 'SetBits'
23     required_bits: [RED]
24   - &SET-BITS-G
25     action_class: 'SetBits'
26     required_bits: [GREEN]
27   - &SET-BITS-B
28     action_class: 'SetBits'
29     required_bits: [BLUE]
30
31   - &SHIFT-N
32     action_class: 'ShiftLocations'
33     required_bits: [BLUE]
34     data: {'direction': NORTH}
35   - &SHIFT-S
36     action_class: 'ShiftLocations'
37     required_bits: [BLUE]
38     data: {'direction': SOUTH}
39   - &SHIFT-E
40     action_class: 'ShiftLocations'
41     required_bits: [GREEN]
42     data: {'direction': EAST}
43   - &SHIFT-W
44     action_class: 'ShiftLocations'
45     required_bits: [GREEN]
46     data: {'direction': WEST}
47
48   - &ROT-CW
49     action_class: 'RotateLocations'
50     required_bits: [RED]
51     data: {'rot_direction': CLOCKWISE}
52   - &ROT-CCW
53     action_class: 'RotateLocations'
54     required_bits: [RED]
55     data: {'rot_direction': ANTICLOCKWISE}
56
57   # Two-colour actions.
58   - &KNIGHT-MOVE
59     action_class: 'AllowChessMove'
60     required_bits: [RED, GREEN]
61     data: {'chesspiece': KNIGHT}
62   - &CASTLE-MOVE
63     action_class: 'AllowChessMove'
64     required_bits: [RED, BLUE]
65     data: {'chesspiece': CASTLE}
66   - &BISHOP-MOVE
67     action_class: 'AllowChessMove'
68     required_bits: [GREEN, BLUE]
69     data: {'chesspiece': BISHOP}
70
71   - &HEAL-RG
72     action_class: 'GainHealth'
73     required_bits: [RED, GREEN]
74   - &HEAL-RB
75     action_class: 'GainHealth'
76     required_bits: [RED, BLUE]
77
78   # Three-colour actions.
79   - &ACQUIRE-WIN-TOKEN
80     action_class: 'AcquireWinToken'
81     required_bits: [RED, GREEN, BLUE]
82
83 # This field is ignored, but it's a useful place to put some card definitions
84 # we can reference later.
85 _card_definitions:
86   - &WIN-CARD-1
87     actions:
88       - *ACQUIRE-WIN-TOKEN
89   - &WIN-CARD-2
90     actions:
91       - *BAD-DEFAULT
92       - *ACQUIRE-WIN-TOKEN
93   - &WIN-CARD-3
94     actions:
95       - *SET-BITS-DEFAULT
96       - *ACQUIRE-WIN-TOKEN
97
98   - &KNIGHT-AND-SET
99     actions:
100       - *BAD-DEFAULT
101       - *SET-BITS-B
102       - *KNIGHT-MOVE
103   - &CASTLE-AND-SET
104     actions:
105       - *BAD-DEFAULT
106       - *SET-BITS-G
107       - *CASTLE-MOVE
108   - &BISHOP-AND-SET
109     actions:
110       - *BAD-DEFAULT
111       - *SET-BITS-R
112       - *BISHOP-MOVE
113
114   - &TOGGLE-RG-R
115     bits: [RED, GREEN]  # Colour-blind robot!
116     actions:
117       - *GAIN-HEALTH-DEFAULT
118       - action_class: 'ToggleBits'
119         required_bits: [RED]
120       - action_class: 'SetBits'
121         required_bits: [GREEN, BLUE]
122   - &TOGGLE-RG-G
123     bits: [RED, GREEN]  # Colour-blind robot!
124     actions:
125       - *GAIN-HEALTH-DEFAULT
126       - action_class: 'ToggleBits'
127         required_bits: [GREEN]
128       - action_class: 'SetBits'
129         required_bits: [RED, BLUE]
130
131   - &SHIFT-N-AND-HEAL
132     actions:
133       - *TOGGLE-BITS-DEFAULT
134       - *SHIFT-N
135       - *HEAL-RG
136   - &SHIFT-S-AND-HEAL
137     actions:
138       - *TOGGLE-BITS-DEFAULT
139       - *SHIFT-S
140       - *HEAL-RG
141   - &SHIFT-E-AND-HEAL
142     actions:
143       - *TOGGLE-BITS-DEFAULT
144       - *SHIFT-E
145       - *HEAL-RB
146   - &SHIFT-W-AND-HEAL
147     actions:
148       - *TOGGLE-BITS-DEFAULT
149       - *SHIFT-W
150       - *HEAL-RB
151
152   - &ROT-CW-AND-SET
153     actions:
154       - *TOGGLE-BITS-DEFAULT
155       - *ROT-CW
156       - *SET-BITS-B
157
158   - &ROT-CCW-AND-SET
159     actions:
160       - *TOGGLE-BITS-DEFAULT
161       - *ROT-CCW
162       - *SET-BITS-G
163
164 cards:
165   - *WIN-CARD-1
166   - *WIN-CARD-2
167   - *WIN-CARD-3
168   - *KNIGHT-AND-SET
169   - *CASTLE-AND-SET
170   - *BISHOP-AND-SET
171   - *TOGGLE-RG-R
172   - *TOGGLE-RG-G
173   - *SHIFT-N-AND-HEAL
174   - *SHIFT-S-AND-HEAL
175   - *SHIFT-E-AND-HEAL
176   - *SHIFT-W-AND-HEAL
177   - *ROT-CW-AND-SET
178   - *ROT-CCW-AND-SET