Pokemon Emerald: Prevent evolution fanfare from being replaced with flute (#4113)
* Pokemon Emerald: Prevent evolution fanfare from being replaced with flute * Pokemon Emerald: Update Changelog
This commit is contained in:
		
							parent
							
								
									96abc32f7d
								
							
						
					
					
						commit
						504eceaf4f
					
				| 
						 | 
				
			
			@ -20,6 +20,8 @@ the player randomized NPC gifts.
 | 
			
		|||
with another NPC was moved to an unoccupied space.
 | 
			
		||||
- Fixed a problem where the client would crash on certain operating systems while using certain python versions if the
 | 
			
		||||
player tried to wonder trade.
 | 
			
		||||
- Prevent the poke flute sound from replacing the evolution fanfare, which would cause the game to wait in silence for
 | 
			
		||||
a long time during the evolution scene.
 | 
			
		||||
 | 
			
		||||
# 2.2.0
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -73,6 +73,7 @@ _FANFARES: Dict[str, int] = {
 | 
			
		|||
    "MUS_OBTAIN_SYMBOL":       318,
 | 
			
		||||
    "MUS_REGISTER_MATCH_CALL": 135,
 | 
			
		||||
}
 | 
			
		||||
_EVOLUTION_FANFARE_INDEX = list(_FANFARES.keys()).index("MUS_EVOLVED")
 | 
			
		||||
 | 
			
		||||
CAVE_EVENT_NAME_TO_ID = {
 | 
			
		||||
    "TERRA_CAVE_ROUTE_114_1": 1,
 | 
			
		||||
| 
						 | 
				
			
			@ -661,6 +662,15 @@ def write_tokens(world: "PokemonEmeraldWorld", patch: PokemonEmeraldProcedurePat
 | 
			
		|||
        # Shuffle the lists, pair new tracks with original tracks, set the new track ids, and set new fanfare durations
 | 
			
		||||
        randomized_fanfares = [fanfare_name for fanfare_name in _FANFARES]
 | 
			
		||||
        world.random.shuffle(randomized_fanfares)
 | 
			
		||||
 | 
			
		||||
        # Prevent the evolution fanfare from receiving the poke flute by swapping it with something else.
 | 
			
		||||
        # The poke flute sound causes the evolution scene to get stuck for like 40 seconds
 | 
			
		||||
        if randomized_fanfares[_EVOLUTION_FANFARE_INDEX] == "MUS_RG_POKE_FLUTE":
 | 
			
		||||
            swap_index = (_EVOLUTION_FANFARE_INDEX + 1) % len(_FANFARES)
 | 
			
		||||
            temp = randomized_fanfares[_EVOLUTION_FANFARE_INDEX]
 | 
			
		||||
            randomized_fanfares[_EVOLUTION_FANFARE_INDEX] = randomized_fanfares[swap_index]
 | 
			
		||||
            randomized_fanfares[swap_index] = temp
 | 
			
		||||
 | 
			
		||||
        for i, fanfare_pair in enumerate(zip(_FANFARES.keys(), randomized_fanfares)):
 | 
			
		||||
            patch.write_token(
 | 
			
		||||
                APTokenTypes.WRITE,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue