parent
							
								
									d0a005d34d
								
							
						
					
					
						commit
						bbd9c9a4f3
					
				
							
								
								
									
										12
									
								
								ItemPool.py
								
								
								
								
							
							
						
						
									
										12
									
								
								ItemPool.py
								
								
								
								
							| 
						 | 
				
			
			@ -368,13 +368,17 @@ def shuffle_shops(world, items, player: int):
 | 
			
		|||
        shops = []
 | 
			
		||||
        upgrade_shops = []
 | 
			
		||||
        total_inventory = []
 | 
			
		||||
        potion_option = world.potion_shop_shuffle[player]
 | 
			
		||||
        for shop in world.shops:
 | 
			
		||||
            if shop.region.player == player:
 | 
			
		||||
                if shop.type == ShopType.UpgradeShop:
 | 
			
		||||
                    upgrade_shops.append(shop)
 | 
			
		||||
                elif shop.type == ShopType.Shop and shop.region.name != 'Potion Shop':
 | 
			
		||||
                    shops.append(shop)
 | 
			
		||||
                    total_inventory.extend(shop.inventory)
 | 
			
		||||
                elif shop.type == ShopType.Shop:
 | 
			
		||||
                    if shop.region.name == 'Potion Shop' and potion_option in [None, '', 'none']:
 | 
			
		||||
                        upgrade_shops.append(shop) # just put it with the upgrade shops/caves so we don't shuffle the items, just prices
 | 
			
		||||
                    else:
 | 
			
		||||
                        shops.append(shop)
 | 
			
		||||
                        total_inventory.extend(shop.inventory)
 | 
			
		||||
 | 
			
		||||
        if 'p' in option:
 | 
			
		||||
            def price_adjust(price: int) -> int:
 | 
			
		||||
| 
						 | 
				
			
			@ -470,7 +474,7 @@ def create_dynamic_shop_locations(world, player):
 | 
			
		|||
 | 
			
		||||
                    world.clear_location_cache()
 | 
			
		||||
 | 
			
		||||
                    world.push_item(loc, ItemFactory(item['item'], player), False)
 | 
			
		||||
                    world.push_item(loc, ItemFactory(item['item'], player), False) 
 | 
			
		||||
                    loc.event = True
 | 
			
		||||
                    loc.locked = True
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -368,6 +368,10 @@ def roll_settings(weights):
 | 
			
		|||
    if not ret.shop_shuffle:
 | 
			
		||||
        ret.shop_shuffle = ''
 | 
			
		||||
 | 
			
		||||
    ret.potion_shop_shuffle = get_choice('potion_shop_shuffle', weights, '')
 | 
			
		||||
    if not ret.potion_shop_shuffle:
 | 
			
		||||
        ret.potion_shop_shuffle = ''
 | 
			
		||||
 | 
			
		||||
    ret.mode = get_choice('world_state', weights, None)  # legacy support
 | 
			
		||||
    if ret.mode == 'retro':
 | 
			
		||||
        ret.mode = 'open'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										2
									
								
								Rules.py
								
								
								
								
							
							
						
						
									
										2
									
								
								Rules.py
								
								
								
								
							| 
						 | 
				
			
			@ -85,7 +85,7 @@ def set_rules(world, player):
 | 
			
		|||
        add_rule(world.get_entrance('Ganons Tower', player), lambda state: state.world.get_entrance('Ganons Tower Ascent', player).can_reach(state), 'or')
 | 
			
		||||
 | 
			
		||||
    set_bunny_rules(world, player, world.mode[player] == 'inverted')
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
def mirrorless_path_to_castle_courtyard(world, player):
 | 
			
		||||
    # If Agahnim is defeated then the courtyard needs to be accessible without using the mirror for the mirror offset glitch.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue