def fromBytes(bytes): trainer_name = trainer_name_decode(bytes[0:11]) meta = pokemon_type_block_decode(bytes[11:19]) pokemon = [] byte_idx = 19 for i in range(meta[0]): pokemon.append(Pokemon.fromBytes(bytes[byte_idx:byte_idx+44])) byte_idx += 44 byte_idx = 283 for i in range(meta[0]): pokemon[i].originalTrainerName = trainer_name_decode(bytes[byte_idx:byte_idx+11]) byte_idx += 11 byte_idx = 349 for i in range(meta[0]): pokemon[i].setNickname(bytes[byte_idx:byte_idx+11]) byte_idx += 11 return PokemonTeam(trainer_name, pokemon)
def trade_pokemon(self, idx, pokemon): self.pokemon[idx] = Pokemon.fromBytes(pokemon.toBytes())