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)) |
