diff --git a/worlds/oot/__init__.py b/worlds/oot/__init__.py index 1a5f1be4..775718e9 100644 --- a/worlds/oot/__init__.py +++ b/worlds/oot/__init__.py @@ -650,8 +650,8 @@ class OOTWorld(World): itempools['overworld'].sort(key=lambda item: {'GanonBossKey': 4, 'BossKey': 3, 'SmallKey': 2, 'FortressSmallKey': 1}.get(item.type, 0)) non_dungeon_locations = [loc for loc in self.get_locations() if - not loc.item and loc not in any_dungeon_locations - and loc.type != 'Shop' and + not loc.item and loc not in any_dungeon_locations and + (loc.type != 'Shop' or loc.name in self.shop_prices) and (loc.type != 'Song' or self.shuffle_song_items != 'song') and (loc.name not in dungeon_song_locations or self.shuffle_song_items != 'dungeon')] self.world.random.shuffle(non_dungeon_locations)