use pocketmine\item\Item; use pocketmine\network\mcpe\NetworkSession; class MobArmorEquipmentPacket extends DataPacket{ public const NETWORK_ID = ProtocolInfo::MOB_ARMOR_EQUIPMENT_PACKET; /** @var int */ public $entityRuntimeId; //this intentionally doesn't use an array because we don't want any implicit dependencies on internal order /** @var Item */ public $head; /** @var Item */ public $chest; /** @var Item */ public $legs; /** @var Item */ public $feet; protected function decodePayload(){ $this->entityRuntimeId = $this->getEntityRuntimeId(); $this->head = $this->getSlot(); $this->chest = $this->getSlot(); $this->legs = $this->getSlot(); $this->feet = $this->getSlot(); } protected function encodePayload(){ $this->putEntityRuntimeId($this->entityRuntimeId); $this->putSlot($this->head); $this->putSlot($this->chest); $this->putSlot($this->legs); $this->putSlot($this->feet); } public function handle(NetworkSession $session) : bool{ return $session->handleMobArmorEquipment($this); } }