/** * {@inheritdoc} */ public static function fromArray(array $values) { $message = new self(); $values = array_merge(['state' => null, 'battle_type' => null, 'server_ms' => null, 'battle_actions' => [], 'battle_start_timestamp_ms' => null, 'battle_end_timestamp_ms' => null], $values); $message->setState($values['state']); $message->setBattleType($values['battle_type']); $message->setServerMs($values['server_ms']); $message->setBattleStartTimestampMs($values['battle_start_timestamp_ms']); $message->setBattleEndTimestampMs($values['battle_end_timestamp_ms']); foreach ($values['battle_actions'] as $item) { $message->addBattleActions($item); } return $message; }