/** * {@inheritdoc} */ public static function fromArray(array $values) { $message = new self(); $values = array_merge(['daily_bonus_coins' => null, 'daily_defender_bonus_per_pokemon' => [], 'daily_defender_bonus_max_defenders' => null, 'daily_defender_bonus_currency' => [], 'min_time_between_claims_ms' => null, 'daily_bonus_enabled' => null, 'daily_defender_bonus_enabled' => null], $values); $message->setDailyBonusCoins($values['daily_bonus_coins']); $message->setDailyDefenderBonusMaxDefenders($values['daily_defender_bonus_max_defenders']); $message->setMinTimeBetweenClaimsMs($values['min_time_between_claims_ms']); $message->setDailyBonusEnabled($values['daily_bonus_enabled']); $message->setDailyDefenderBonusEnabled($values['daily_defender_bonus_enabled']); foreach ($values['daily_defender_bonus_per_pokemon'] as $item) { $message->addDailyDefenderBonusPerPokemon($item); } foreach ($values['daily_defender_bonus_currency'] as $item) { $message->addDailyDefenderBonusCurrency($item); } return $message; }