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.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/apworld/player_logic.py b/apworld/player_logic.py index e08f644..dc1bdf0 100644 --- a/apworld/player_logic.py +++ b/apworld/player_logic.py
@@ -166,6 +166,15 @@ class Lingo2PlayerLogic:
166 166
167 self.event_loc_item_by_room.setdefault(ending.room_id, {})[event_name] = item_name 167 self.event_loc_item_by_room.setdefault(ending.room_id, {})[event_name] = item_name
168 168
169 if self.world.options.keyholder_sanity:
170 for keyholder in world.static_logic.objects.keyholders:
171 if keyholder.HasField("key"):
172 reqs = AccessRequirements()
173 reqs.letters[keyholder.key.upper()] = 1
174
175 self.locations_by_room.setdefault(keyholder.room_id, []).append(PlayerLocation(keyholder.ap_id,
176 reqs))
177
169 def get_panel_reqs(self, panel_id: int, answer: str | None) -> AccessRequirements: 178 def get_panel_reqs(self, panel_id: int, answer: str | None) -> AccessRequirements:
170 if answer is None: 179 if answer is None:
171 if panel_id not in self.panel_reqs: 180 if panel_id not in self.panel_reqs: