diff --git a/src/pocketmine/entity/Effect.php b/src/pocketmine/entity/Effect.php index c6f2e17d3..1f4bbc8fa 100644 --- a/src/pocketmine/entity/Effect.php +++ b/src/pocketmine/entity/Effect.php @@ -269,7 +269,7 @@ class Effect{ if($this->id === Effect::INVISIBILITY){ $entity->setDataFlag(Entity::DATA_FLAGS, Entity::DATA_FLAG_INVISIBLE, true); - $entity->setDataProperty(Entity::DATA_SHOW_NAMETAG, Entity::DATA_TYPE_BYTE, 0); + $entity->setNameTagVisible(false); }elseif($this->id === Effect::SPEED){ $attr = $entity->getAttributeMap()->getAttribute(Attribute::MOVEMENT_SPEED); if($modify and $oldEffect !== null){ @@ -303,7 +303,7 @@ class Effect{ if($this->id === Effect::INVISIBILITY){ $entity->setDataFlag(Entity::DATA_FLAGS, Entity::DATA_FLAG_INVISIBLE, false); - $entity->setDataProperty(Entity::DATA_SHOW_NAMETAG, Entity::DATA_TYPE_BYTE, 1); + $entity->setNameTagVisible(true); }elseif($this->id === Effect::SPEED){ $attr = $entity->getAttributeMap()->getAttribute(Attribute::MOVEMENT_SPEED); $attr->setValue($attr->getValue() / (1 + 0.2 * $this->amplifier)); diff --git a/src/pocketmine/entity/Entity.php b/src/pocketmine/entity/Entity.php index 59a1a1d90..63286147b 100644 --- a/src/pocketmine/entity/Entity.php +++ b/src/pocketmine/entity/Entity.php @@ -110,11 +110,9 @@ abstract class Entity extends Location implements Metadatable{ * 59 (float) */ /* - const DATA_SHOW_NAMETAG = 3; const DATA_SILENT = 4; const DATA_POTION_COLOR = 7; const DATA_POTION_AMBIENT = 8; - const DATA_LINKED_EID = 23; */ @@ -465,11 +463,11 @@ abstract class Entity extends Location implements Metadatable{ $g = ($color[1] / $count) & 0xff; $b = ($color[2] / $count) & 0xff; - $this->setDataProperty(Entity::DATA_POTION_COLOR, Entity::DATA_TYPE_INT, ($r << 16) + ($g << 8) + $b); - $this->setDataProperty(Entity::DATA_POTION_AMBIENT, Entity::DATA_TYPE_BYTE, $ambient ? 1 : 0); + //$this->setDataProperty(Entity::DATA_POTION_COLOR, Entity::DATA_TYPE_INT, ($r << 16) + ($g << 8) + $b); + //$this->setDataProperty(Entity::DATA_POTION_AMBIENT, Entity::DATA_TYPE_BYTE, $ambient ? 1 : 0); }else{ - $this->setDataProperty(Entity::DATA_POTION_COLOR, Entity::DATA_TYPE_INT, 0); - $this->setDataProperty(Entity::DATA_POTION_AMBIENT, Entity::DATA_TYPE_BYTE, 0); + //$this->setDataProperty(Entity::DATA_POTION_COLOR, Entity::DATA_TYPE_INT, 0); + //$this->setDataProperty(Entity::DATA_POTION_AMBIENT, Entity::DATA_TYPE_BYTE, 0); } } diff --git a/src/pocketmine/level/particle/FloatingTextParticle.php b/src/pocketmine/level/particle/FloatingTextParticle.php index 680a3204e..8799e91dc 100644 --- a/src/pocketmine/level/particle/FloatingTextParticle.php +++ b/src/pocketmine/level/particle/FloatingTextParticle.php @@ -89,11 +89,13 @@ class FloatingTextParticle extends Particle{ $pk->pitch = 0; $pk->item = 0; $pk->meta = 0; + $flags |= 1 << Entity::DATA_FLAG_INVISIBLE; + $flags |= 1 << Entity::DATA_FLAG_CAN_SHOW_NAMETAG; + $flags |= 1 << Entity::DATA_FLAG_ALWAYS_SHOW_NAMETAG; + $flags |= 1 << Entity::DATA_FLAG_IMMOBILE; $pk->metadata = [ - Entity::DATA_FLAGS => [Entity::DATA_TYPE_BYTE, 1 << Entity::DATA_FLAG_INVISIBLE], + Entity::DATA_FLAGS => [Entity::DATA_TYPE_LONG, $flags], Entity::DATA_NAMETAG => [Entity::DATA_TYPE_STRING, $this->title . ($this->text !== "" ? "\n" . $this->text : "")], - Entity::DATA_SHOW_NAMETAG => [Entity::DATA_TYPE_BYTE, 1], - Entity::DATA_NO_AI => [Entity::DATA_TYPE_BYTE, 1] ]; $p[] = $pk;