@@ -238,18 +238,19 @@ def generate_output(self, output_directory: str):
238
238
data [address ] = 0 if "Elevator" in connected_map_name else warp_to_ids [i ]
239
239
data [address + 1 ] = map_ids [connected_map_name ]
240
240
241
- for i , gym_leader in enumerate (("Pewter Gym - Brock TM" , "Cerulean Gym - Misty TM" ,
242
- "Vermilion Gym - Lt. Surge TM" , "Celadon Gym - Erika TM" ,
243
- "Fuchsia Gym - Koga TM" , "Saffron Gym - Sabrina TM" ,
244
- "Cinnabar Gym - Blaine TM" , "Viridian Gym - Giovanni TM" )):
245
- item_name = self .multiworld .get_location (gym_leader , self .player ).item .name
246
- if item_name .startswith ("TM" ):
247
- try :
248
- tm = int (item_name [2 :4 ])
249
- move = poke_data .moves [self .local_tms [tm - 1 ]]["id" ]
250
- data [rom_addresses ["Gym_Leader_Moves" ] + (2 * i )] = move
251
- except KeyError :
252
- pass
241
+ if not self .multiworld .key_items_only [self .player ]:
242
+ for i , gym_leader in enumerate (("Pewter Gym - Brock TM" , "Cerulean Gym - Misty TM" ,
243
+ "Vermilion Gym - Lt. Surge TM" , "Celadon Gym - Erika TM" ,
244
+ "Fuchsia Gym - Koga TM" , "Saffron Gym - Sabrina TM" ,
245
+ "Cinnabar Gym - Blaine TM" , "Viridian Gym - Giovanni TM" )):
246
+ item_name = self .multiworld .get_location (gym_leader , self .player ).item .name
247
+ if item_name .startswith ("TM" ):
248
+ try :
249
+ tm = int (item_name [2 :4 ])
250
+ move = poke_data .moves [self .local_tms [tm - 1 ]]["id" ]
251
+ data [rom_addresses ["Gym_Leader_Moves" ] + (2 * i )] = move
252
+ except KeyError :
253
+ pass
253
254
254
255
def set_trade_mon (address , loc ):
255
256
mon = self .multiworld .get_location (loc , self .player ).item .name
0 commit comments