diff options
Diffstat (limited to 'apworld/player_logic.py')
-rw-r--r-- | apworld/player_logic.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/apworld/player_logic.py b/apworld/player_logic.py index ae22818..36156e4 100644 --- a/apworld/player_logic.py +++ b/apworld/player_logic.py | |||
@@ -205,7 +205,7 @@ class Lingo2PlayerLogic: | |||
205 | door = self.world.static_logic.objects.doors[door_id] | 205 | door = self.world.static_logic.objects.doors[door_id] |
206 | reqs = AccessRequirements() | 206 | reqs = AccessRequirements() |
207 | 207 | ||
208 | # TODO: control_center_color, switches | 208 | # TODO: lavender_cubes, endings |
209 | if not door.HasField("complete_at") or door.complete_at == 0: | 209 | if not door.HasField("complete_at") or door.complete_at == 0: |
210 | for proxy in door.panels: | 210 | for proxy in door.panels: |
211 | panel_reqs = self.get_panel_reqs(proxy.panel, proxy.answer if proxy.HasField("answer") else None) | 211 | panel_reqs = self.get_panel_reqs(proxy.panel, proxy.answer if proxy.HasField("answer") else None) |
@@ -219,9 +219,14 @@ class Lingo2PlayerLogic: | |||
219 | pass | 219 | pass |
220 | 220 | ||
221 | if door.HasField("control_center_color"): | 221 | if door.HasField("control_center_color"): |
222 | # TODO: Logic for ensuring two CC states aren't needed at once. | ||
222 | reqs.rooms.add("Control Center - Main Area") | 223 | reqs.rooms.add("Control Center - Main Area") |
223 | reqs.add_solution(door.control_center_color) | 224 | reqs.add_solution(door.control_center_color) |
224 | 225 | ||
226 | if door.double_letters: | ||
227 | # TODO: When letter shuffle is on, change this to require any double letter instead. | ||
228 | reqs.rooms.add("The Repetitive - Main Room") | ||
229 | |||
225 | for keyholder_uses in door.keyholders: | 230 | for keyholder_uses in door.keyholders: |
226 | key_name = keyholder_uses.key.upper() | 231 | key_name = keyholder_uses.key.upper() |
227 | if key_name not in reqs.letters: | 232 | if key_name not in reqs.letters: |