diff --git a/worlds/pokemon_emerald/__init__.py b/worlds/pokemon_emerald/__init__.py index 7a7596c096ff..95e549a32ef0 100644 --- a/worlds/pokemon_emerald/__init__.py +++ b/worlds/pokemon_emerald/__init__.py @@ -330,6 +330,7 @@ def convert_unrandomized_items_to_events(tag: str) -> None: for location in locations: if location.tags is not None and tag in location.tags: location.place_locked_item(self.create_event(self.item_id_to_name[location.default_item_code])) + location.progress_type = LocationProgressType.DEFAULT location.address = None if self.options.badges == RandomizeBadges.option_vanilla: @@ -366,6 +367,12 @@ def pre_fill(self) -> None: } badge_items.sort(key=lambda item: badge_priority.get(item.name, 0)) + # Un-exclude badge locations, since we need to put progression items on them + for location in badge_locations: + location.progress_type = LocationProgressType.DEFAULT \ + if location.progress_type == LocationProgressType.EXCLUDED \ + else location.progress_type + collection_state = self.multiworld.get_all_state(False) if self.hm_shuffle_info is not None: for _, item in self.hm_shuffle_info: @@ -410,6 +417,12 @@ def pre_fill(self) -> None: } hm_items.sort(key=lambda item: hm_priority.get(item.name, 0)) + # Un-exclude HM locations, since we need to put progression items on them + for location in hm_locations: + location.progress_type = LocationProgressType.DEFAULT \ + if location.progress_type == LocationProgressType.EXCLUDED \ + else location.progress_type + collection_state = self.multiworld.get_all_state(False) # In specific very constrained conditions, fill_restrictive may run