PocketMine-MP
5.31.1 git-a1d74b57109a7c91ffab73718182f3b1e530fae3
Loading...
Searching...
No Matches
CompoundTagMetadataProperty.php
1
<?php
2
3
/*
4
* This file is part of BedrockProtocol.
5
* Copyright (C) 2014-2022 PocketMine Team <https://github.com/pmmp/BedrockProtocol>
6
*
7
* BedrockProtocol is free software: you can redistribute it and/or modify
8
* it under the terms of the GNU Lesser General Public License as published by
9
* the Free Software Foundation, either version 3 of the License, or
10
* (at your option) any later version.
11
*/
12
13
declare(strict_types=1);
14
15
namespace
pocketmine\network\mcpe\protocol\types\entity;
16
17
use
pocketmine\network\mcpe\protocol\PacketDecodeException
;
18
use
pocketmine\network\mcpe\protocol\serializer\PacketSerializer
;
19
use
pocketmine\network\mcpe\protocol\types\CacheableNbt
;
20
use pocketmine\network\mcpe\protocol\types\GetTypeIdFromConstTrait;
21
22
final
class
CompoundTagMetadataProperty
implements
MetadataProperty
{
23
use GetTypeIdFromConstTrait;
24
25
public
const
ID = EntityMetadataTypes::COMPOUND_TAG;
26
28
private
CacheableNbt
$value;
29
33
public
function
__construct
(
CacheableNbt
$value){
34
$this->value = clone $value;
35
}
36
40
public
function
getValue
() :
CacheableNbt
{
41
return clone $this->value;
42
}
43
44
public
function
equals(
MetadataProperty
$other) : bool{
45
return $other instanceof self and $other->value->getRoot()->equals($this->value->getRoot());
46
}
47
51
public
static
function
read
(
PacketSerializer
$in) : self{
52
return new self(new
CacheableNbt
($in->getNbtCompoundRoot()));
53
}
54
55
public
function
write(
PacketSerializer
$out) : void{
56
$out->put($this->value->getEncodedNbt());
57
}
58
}
pocketmine\network\mcpe\protocol\PacketDecodeException
Definition
PacketDecodeException.php:17
pocketmine\network\mcpe\protocol\serializer\PacketSerializer
Definition
bedrock-protocol/src/serializer/PacketSerializer.php:66
pocketmine\network\mcpe\protocol\types\CacheableNbt
Definition
CacheableNbt.php:24
pocketmine\network\mcpe\protocol\types\entity\CompoundTagMetadataProperty
Definition
CompoundTagMetadataProperty.php:22
pocketmine\network\mcpe\protocol\types\entity\CompoundTagMetadataProperty\getValue
getValue()
Definition
CompoundTagMetadataProperty.php:40
pocketmine\network\mcpe\protocol\types\entity\CompoundTagMetadataProperty\__construct
__construct(CacheableNbt $value)
Definition
CompoundTagMetadataProperty.php:33
pocketmine\network\mcpe\protocol\types\entity\CompoundTagMetadataProperty\read
static read(PacketSerializer $in)
Definition
CompoundTagMetadataProperty.php:51
pocketmine\network\mcpe\protocol\types\entity\MetadataProperty
Definition
MetadataProperty.php:19
vendor
pocketmine
bedrock-protocol
src
types
entity
CompoundTagMetadataProperty.php
Generated by
1.12.0