/** * @param Player $player * @param PvpSessionData|null $data */ public function spawnTo(Player $player, $data = null) { if ($data === null) { $data = $this->game->getPlayerData($player, true); // most likely newly joined if (!$data instanceof PvpSessionData) { return; // don't spawn to players who aren't programmatically in KitPvP } } $kit = $data->getKitById($this->kid, true, $isNew); $this->getInventory()->sendContents($player); $this->setNameTag($kit->name === "" ? "Kit {$this->kid}" : $kit->name); if ($data->getKitIdInUse() === $this->kid) { $this->nameTag = self::IN_USE_TAG . $this->nameTag; } parent::spawnTo($player); $kit->equip($this->getInventory(), $data, false); // TODO hardcode $this->getInventory()->sendArmorContents([$player]); $this->getInventory()->sendHeldItem($player); if ($data->getEditingKitId() === $this->kid) { $this->fireTo($player); } }