diff options
author | Star Rauchenberger <fefferburbia@gmail.com> | 2025-08-20 15:43:00 -0400 |
---|---|---|
committer | Star Rauchenberger <fefferburbia@gmail.com> | 2025-08-20 15:43:00 -0400 |
commit | 1c11f117ffc28372362fb9081a71e5d4d50b538f (patch) | |
tree | 3d102d7d249375b1dc9ff3ab5f04706b56f6e501 /apworld | |
parent | bcf503855107404ab3c8e0a7edd750c2720f8024 (diff) | |
download | lingo2-archipelago-1c11f117ffc28372362fb9081a71e5d4d50b538f.tar.gz lingo2-archipelago-1c11f117ffc28372362fb9081a71e5d4d50b538f.tar.bz2 lingo2-archipelago-1c11f117ffc28372362fb9081a71e5d4d50b538f.zip |
Implemented complete_at=1 in the apworld
Diffstat (limited to 'apworld')
-rw-r--r-- | apworld/player_logic.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/apworld/player_logic.py b/apworld/player_logic.py index 455e24f..edf8c4f 100644 --- a/apworld/player_logic.py +++ b/apworld/player_logic.py | |||
@@ -166,9 +166,17 @@ class Lingo2PlayerLogic: | |||
166 | reqs.items.add(self.world.static_logic.get_door_item_name(door.id)) | 166 | reqs.items.add(self.world.static_logic.get_door_item_name(door.id)) |
167 | else: | 167 | else: |
168 | # TODO: complete_at, control_center_color, switches, keyholders | 168 | # TODO: complete_at, control_center_color, switches, keyholders |
169 | for proxy in door.panels: | 169 | if not door.HasField("complete_at") or door.complete_at == 0: |
170 | panel_reqs = self.get_panel_reqs(proxy.panel, proxy.answer if proxy.HasField("answer") else None) | 170 | for proxy in door.panels: |
171 | reqs.merge(panel_reqs) | 171 | panel_reqs = self.get_panel_reqs(proxy.panel, proxy.answer if proxy.HasField("answer") else None) |
172 | reqs.merge(panel_reqs) | ||
173 | elif door.complete_at == 1: | ||
174 | reqs.or_logic.append([self.get_panel_reqs(proxy.panel, | ||
175 | proxy.answer if proxy.HasField("answer") else None) | ||
176 | for proxy in door.panels]) | ||
177 | else: | ||
178 | # TODO: Handle complete_at > 1 | ||
179 | pass | ||
172 | 180 | ||
173 | for room in door.rooms: | 181 | for room in door.rooms: |
174 | reqs.rooms.add(self.world.static_logic.get_room_region_name(room)) | 182 | reqs.rooms.add(self.world.static_logic.get_room_region_name(room)) |