diff --git a/BaseClasses.py b/BaseClasses.py index d91be28c..143b1f51 100644 --- a/BaseClasses.py +++ b/BaseClasses.py @@ -691,7 +691,7 @@ class CollectionState(): locations = self.world.get_filled_locations() reachable_events = True # since the loop has a good chance to run more than once, only filter the events once - locations = {location for location in locations if location.event and + locations = {location for location in locations if location.event and location not in self.events and not key_only or getattr(location.item, "locked_dungeon_item", False)} while reachable_events: reachable_events = {location for location in locations if location.can_reach(self)}