/** * {@inheritdoc} */ public static function fromArray(array $values) { $message = new self(); $values = array_merge(['required_experience' => [], 'leader_slots' => [], 'trainer_slots' => [], 'search_roll_bonus' => []], $values); foreach ($values['required_experience'] as $item) { $message->addRequiredExperience($item); } foreach ($values['leader_slots'] as $item) { $message->addLeaderSlots($item); } foreach ($values['trainer_slots'] as $item) { $message->addTrainerSlots($item); } foreach ($values['search_roll_bonus'] as $item) { $message->addSearchRollBonus($item); } return $message; }