Example #1
0
 /**
  * {@inheritdoc}
  */
 public static function fromArray(array $values)
 {
     $message = new self();
     $values = array_merge(['level' => null, 'experience' => null, 'prev_level_xp' => null, 'next_level_xp' => null, 'km_walked' => null, 'pokemons_encountered' => null, 'unique_pokedex_entries' => null, 'pokemons_captured' => null, 'evolutions' => null, 'poke_stop_visits' => null, 'pokeballs_thrown' => null, 'eggs_hatched' => null, 'big_magikarp_caught' => null, 'battle_attack_won' => null, 'battle_attack_total' => null, 'battle_defended_won' => null, 'battle_training_won' => null, 'battle_training_total' => null, 'prestige_raised_total' => null, 'prestige_dropped_total' => null, 'pokemon_deployed' => null, 'pokemon_caught_by_type' => [], 'small_rattata_caught' => null], $values);
     $message->setLevel($values['level']);
     $message->setExperience($values['experience']);
     $message->setPrevLevelXp($values['prev_level_xp']);
     $message->setNextLevelXp($values['next_level_xp']);
     $message->setKmWalked($values['km_walked']);
     $message->setPokemonsEncountered($values['pokemons_encountered']);
     $message->setUniquePokedexEntries($values['unique_pokedex_entries']);
     $message->setPokemonsCaptured($values['pokemons_captured']);
     $message->setEvolutions($values['evolutions']);
     $message->setPokeStopVisits($values['poke_stop_visits']);
     $message->setPokeballsThrown($values['pokeballs_thrown']);
     $message->setEggsHatched($values['eggs_hatched']);
     $message->setBigMagikarpCaught($values['big_magikarp_caught']);
     $message->setBattleAttackWon($values['battle_attack_won']);
     $message->setBattleAttackTotal($values['battle_attack_total']);
     $message->setBattleDefendedWon($values['battle_defended_won']);
     $message->setBattleTrainingWon($values['battle_training_won']);
     $message->setBattleTrainingTotal($values['battle_training_total']);
     $message->setPrestigeRaisedTotal($values['prestige_raised_total']);
     $message->setPrestigeDroppedTotal($values['prestige_dropped_total']);
     $message->setPokemonDeployed($values['pokemon_deployed']);
     $message->setSmallRattataCaught($values['small_rattata_caught']);
     foreach ($values['pokemon_caught_by_type'] as $item) {
         $message->addPokemonCaughtByType($item);
     }
     return $message;
 }