handle progressive bows like other progressive items
This commit is contained in:
		
							parent
							
								
									d7c839ef7d
								
							
						
					
					
						commit
						5cc0c2355e
					
				
							
								
								
									
										128
									
								
								ItemList.py
								
								
								
								
							
							
						
						
									
										128
									
								
								ItemList.py
								
								
								
								
							| 
						 | 
				
			
			@ -32,7 +32,7 @@ normalfinal25extra = ['Rupees (20)'] * 23 + ['Rupees (5)'] * 2
 | 
			
		|||
Difficulty = namedtuple('Difficulty',
 | 
			
		||||
                        ['baseitems', 'bottles', 'bottle_count', 'same_bottle', 'progressiveshield',
 | 
			
		||||
                         'basicshield', 'progressivearmor', 'basicarmor', 'swordless',
 | 
			
		||||
                         'progressivesword', 'basicsword', 'basicbow', 'timedohko', 'timedother',
 | 
			
		||||
                         'progressivesword', 'basicsword', 'progressivebow', 'basicbow', 'timedohko', 'timedother',
 | 
			
		||||
                         'triforcehunt', 'retro',
 | 
			
		||||
                         'extras', 'progressive_sword_limit', 'progressive_shield_limit',
 | 
			
		||||
                         'progressive_armor_limit', 'progressive_bottle_limit',
 | 
			
		||||
| 
						 | 
				
			
			@ -43,78 +43,82 @@ total_items_to_place = 153
 | 
			
		|||
difficulties = {
 | 
			
		||||
    'normal': Difficulty(
 | 
			
		||||
        baseitems = normalbaseitems,
 | 
			
		||||
        bottles = normalbottles,
 | 
			
		||||
        bottle_count = 4,
 | 
			
		||||
        same_bottle = False,
 | 
			
		||||
        progressiveshield = ['Progressive Shield'] * 3,
 | 
			
		||||
        basicshield = ['Blue Shield', 'Red Shield', 'Mirror Shield'],
 | 
			
		||||
        progressivearmor = ['Progressive Armor'] * 2,
 | 
			
		||||
        basicarmor = ['Blue Mail', 'Red Mail'],
 | 
			
		||||
        swordless = ['Rupees (20)'] * 4,
 | 
			
		||||
        progressivesword = ['Progressive Sword'] * 4,
 | 
			
		||||
        basicsword = ['Fighter Sword', 'Master Sword', 'Tempered Sword', 'Golden Sword'],
 | 
			
		||||
        basicbow = ['Bow', 'Silver Bow'],
 | 
			
		||||
        timedohko = ['Green Clock'] * 25,
 | 
			
		||||
        timedother = ['Green Clock'] * 20 + ['Blue Clock'] * 10 + ['Red Clock'] * 10,
 | 
			
		||||
        triforcehunt = ['Triforce Piece'] * 30,
 | 
			
		||||
        retro = ['Small Key (Universal)'] * 18 + ['Rupees (20)'] * 10,
 | 
			
		||||
        extras = [normalfirst15extra, normalsecond15extra, normalthird10extra, normalfourth5extra, normalfinal25extra],
 | 
			
		||||
        progressive_sword_limit = 4,
 | 
			
		||||
        progressive_shield_limit = 3,
 | 
			
		||||
        progressive_armor_limit = 2,
 | 
			
		||||
        progressive_bow_limit = 2,
 | 
			
		||||
        bottles=normalbottles,
 | 
			
		||||
        bottle_count=4,
 | 
			
		||||
        same_bottle=False,
 | 
			
		||||
        progressiveshield=['Progressive Shield'] * 3,
 | 
			
		||||
        basicshield=['Blue Shield', 'Red Shield', 'Mirror Shield'],
 | 
			
		||||
        progressivearmor=['Progressive Armor'] * 2,
 | 
			
		||||
        basicarmor=['Blue Mail', 'Red Mail'],
 | 
			
		||||
        swordless=['Rupees (20)'] * 4,
 | 
			
		||||
        progressivesword=['Progressive Sword'] * 4,
 | 
			
		||||
        basicsword=['Fighter Sword', 'Master Sword', 'Tempered Sword', 'Golden Sword'],
 | 
			
		||||
        progressivebow=["Progressive Bow"] * 2,
 | 
			
		||||
        basicbow=['Bow', 'Silver Bow'],
 | 
			
		||||
        timedohko=['Green Clock'] * 25,
 | 
			
		||||
        timedother=['Green Clock'] * 20 + ['Blue Clock'] * 10 + ['Red Clock'] * 10,
 | 
			
		||||
        triforcehunt=['Triforce Piece'] * 30,
 | 
			
		||||
        retro=['Small Key (Universal)'] * 18 + ['Rupees (20)'] * 10,
 | 
			
		||||
        extras=[normalfirst15extra, normalsecond15extra, normalthird10extra, normalfourth5extra, normalfinal25extra],
 | 
			
		||||
        progressive_sword_limit=4,
 | 
			
		||||
        progressive_shield_limit=3,
 | 
			
		||||
        progressive_armor_limit=2,
 | 
			
		||||
        progressive_bow_limit=2,
 | 
			
		||||
        progressive_bottle_limit = 4,
 | 
			
		||||
        boss_heart_container_limit = 10,
 | 
			
		||||
        heart_piece_limit = 24,
 | 
			
		||||
    ),
 | 
			
		||||
    'hard': Difficulty(
 | 
			
		||||
        baseitems = normalbaseitems,
 | 
			
		||||
        bottles = hardbottles,
 | 
			
		||||
        bottle_count = 4,
 | 
			
		||||
        same_bottle = False,
 | 
			
		||||
        progressiveshield = ['Progressive Shield'] * 3,
 | 
			
		||||
        basicshield = ['Blue Shield', 'Red Shield', 'Red Shield'],
 | 
			
		||||
        progressivearmor = ['Progressive Armor'] * 2,
 | 
			
		||||
        basicarmor = ['Progressive Armor'] * 2, # neither will count
 | 
			
		||||
        swordless =  ['Rupees (20)'] * 4,
 | 
			
		||||
        progressivesword =  ['Progressive Sword'] * 4,
 | 
			
		||||
        basicsword = ['Fighter Sword', 'Master Sword', 'Master Sword', 'Tempered Sword'],
 | 
			
		||||
        basicbow = ['Bow'] * 2,
 | 
			
		||||
        timedohko = ['Green Clock'] * 25,
 | 
			
		||||
        timedother = ['Green Clock'] * 20 + ['Blue Clock'] * 10 + ['Red Clock'] * 10,
 | 
			
		||||
        triforcehunt = ['Triforce Piece'] * 30,
 | 
			
		||||
        retro = ['Small Key (Universal)'] * 12 + ['Rupees (5)'] * 16,
 | 
			
		||||
        extras = [normalfirst15extra, normalsecond15extra, normalthird10extra, normalfourth5extra, normalfinal25extra],
 | 
			
		||||
        progressive_sword_limit = 3,
 | 
			
		||||
        progressive_shield_limit = 2,
 | 
			
		||||
        progressive_armor_limit = 0,
 | 
			
		||||
        progressive_bow_limit = 1,
 | 
			
		||||
        bottles=hardbottles,
 | 
			
		||||
        bottle_count=4,
 | 
			
		||||
        same_bottle=False,
 | 
			
		||||
        progressiveshield=['Progressive Shield'] * 3,
 | 
			
		||||
        basicshield=['Blue Shield', 'Red Shield', 'Red Shield'],
 | 
			
		||||
        progressivearmor=['Progressive Armor'] * 2,
 | 
			
		||||
        basicarmor=['Progressive Armor'] * 2,  # neither will count
 | 
			
		||||
        swordless=['Rupees (20)'] * 4,
 | 
			
		||||
        progressivesword=['Progressive Sword'] * 4,
 | 
			
		||||
        basicsword=['Fighter Sword', 'Master Sword', 'Master Sword', 'Tempered Sword'],
 | 
			
		||||
        progressivebow=["Progressive Bow"] * 2,
 | 
			
		||||
        basicbow=['Bow'] * 2,
 | 
			
		||||
        timedohko=['Green Clock'] * 25,
 | 
			
		||||
        timedother=['Green Clock'] * 20 + ['Blue Clock'] * 10 + ['Red Clock'] * 10,
 | 
			
		||||
        triforcehunt=['Triforce Piece'] * 30,
 | 
			
		||||
        retro=['Small Key (Universal)'] * 12 + ['Rupees (5)'] * 16,
 | 
			
		||||
        extras=[normalfirst15extra, normalsecond15extra, normalthird10extra, normalfourth5extra, normalfinal25extra],
 | 
			
		||||
        progressive_sword_limit=3,
 | 
			
		||||
        progressive_shield_limit=2,
 | 
			
		||||
        progressive_armor_limit=0,
 | 
			
		||||
        progressive_bow_limit=1,
 | 
			
		||||
        progressive_bottle_limit = 4,
 | 
			
		||||
        boss_heart_container_limit = 6,
 | 
			
		||||
        heart_piece_limit = 16,
 | 
			
		||||
    ),
 | 
			
		||||
    'expert': Difficulty(
 | 
			
		||||
        baseitems = normalbaseitems,
 | 
			
		||||
        bottles = hardbottles,
 | 
			
		||||
        bottle_count = 4,
 | 
			
		||||
        same_bottle = False,
 | 
			
		||||
        progressiveshield = ['Progressive Shield'] * 3,
 | 
			
		||||
        basicshield = ['Progressive Shield'] * 3,  #only the first one will upgrade, making this equivalent to two blue shields
 | 
			
		||||
        progressivearmor = ['Progressive Armor'] * 2, # neither will count
 | 
			
		||||
        basicarmor = ['Progressive Armor'] * 2, # neither will count
 | 
			
		||||
        swordless = ['Rupees (20)'] * 4,
 | 
			
		||||
        progressivesword = ['Progressive Sword'] * 4,
 | 
			
		||||
        basicsword = ['Fighter Sword', 'Fighter Sword', 'Master Sword', 'Master Sword'],
 | 
			
		||||
        basicbow = ['Bow'] * 2,
 | 
			
		||||
        timedohko = ['Green Clock'] * 20 + ['Red Clock'] * 5,
 | 
			
		||||
        timedother = ['Green Clock'] * 20 + ['Blue Clock'] * 10 + ['Red Clock'] * 10,
 | 
			
		||||
        triforcehunt = ['Triforce Piece'] * 30,
 | 
			
		||||
        retro = ['Small Key (Universal)'] * 12 + ['Rupees (5)'] * 16,
 | 
			
		||||
        extras = [normalfirst15extra, normalsecond15extra, normalthird10extra, normalfourth5extra, normalfinal25extra],
 | 
			
		||||
        progressive_sword_limit = 2,
 | 
			
		||||
        progressive_shield_limit = 1,
 | 
			
		||||
        progressive_armor_limit = 0,
 | 
			
		||||
        progressive_bow_limit = 1,
 | 
			
		||||
        bottles=hardbottles,
 | 
			
		||||
        bottle_count=4,
 | 
			
		||||
        same_bottle=False,
 | 
			
		||||
        progressiveshield=['Progressive Shield'] * 3,
 | 
			
		||||
        basicshield=['Progressive Shield'] * 3,
 | 
			
		||||
        # only the first one will upgrade, making this equivalent to two blue shields
 | 
			
		||||
        progressivearmor=['Progressive Armor'] * 2,  # neither will count
 | 
			
		||||
        basicarmor=['Progressive Armor'] * 2,  # neither will count
 | 
			
		||||
        swordless=['Rupees (20)'] * 4,
 | 
			
		||||
        progressivesword=['Progressive Sword'] * 4,
 | 
			
		||||
        basicsword=['Fighter Sword', 'Fighter Sword', 'Master Sword', 'Master Sword'],
 | 
			
		||||
        progressivebow=["Progressive Bow"] * 2,
 | 
			
		||||
        basicbow=['Bow'] * 2,
 | 
			
		||||
        timedohko=['Green Clock'] * 20 + ['Red Clock'] * 5,
 | 
			
		||||
        timedother=['Green Clock'] * 20 + ['Blue Clock'] * 10 + ['Red Clock'] * 10,
 | 
			
		||||
        triforcehunt=['Triforce Piece'] * 30,
 | 
			
		||||
        retro=['Small Key (Universal)'] * 12 + ['Rupees (5)'] * 16,
 | 
			
		||||
        extras=[normalfirst15extra, normalsecond15extra, normalthird10extra, normalfourth5extra, normalfinal25extra],
 | 
			
		||||
        progressive_sword_limit=2,
 | 
			
		||||
        progressive_shield_limit=1,
 | 
			
		||||
        progressive_armor_limit=0,
 | 
			
		||||
        progressive_bow_limit=1,
 | 
			
		||||
        progressive_bottle_limit = 4,
 | 
			
		||||
        boss_heart_container_limit = 2,
 | 
			
		||||
        heart_piece_limit = 8,
 | 
			
		||||
| 
						 | 
				
			
			@ -468,7 +472,7 @@ def get_pool_core(world, player: int):
 | 
			
		|||
        pool.extend(diff.basicarmor)
 | 
			
		||||
 | 
			
		||||
    if want_progressives():
 | 
			
		||||
        pool.extend(['Progressive Bow'] * 2)
 | 
			
		||||
        pool.extend(diff.progressivebow)
 | 
			
		||||
    elif swords != 'swordless':
 | 
			
		||||
        pool.extend(diff.basicbow)
 | 
			
		||||
    else:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue