summary refs log tree commit diff stats
path: root/apworld/player_logic.py
diff options
context:
space:
mode:
Diffstat (limited to 'apworld/player_logic.py')
-rw-r--r--apworld/player_logic.py7
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: