mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-05-13 17:29:44 +00:00
Updated FloatingTextParticle to use less heavy method
This commit is contained in:
parent
7753b1d8be
commit
32722856ea
@ -180,11 +180,12 @@ class Human extends Creature implements ProjectileSource, InventoryHolder{
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$this->namedtag->Skin = new Compound("Skin", [
|
||||
"Data" => new String("Data", $this->getSkinData()),
|
||||
"Slim" => new Byte("Slim", $this->isSkinSlim() ? 1 : 0)
|
||||
]);
|
||||
if(strlen($this->getSkinData()) > 0){
|
||||
$this->namedtag->Skin = new Compound("Skin", [
|
||||
"Data" => new String("Data", $this->getSkinData()),
|
||||
"Slim" => new Byte("Slim", $this->isSkinSlim() ? 1 : 0)
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
public function spawnTo(Player $player){
|
||||
|
@ -22,8 +22,11 @@
|
||||
namespace pocketmine\level\particle;
|
||||
|
||||
use pocketmine\entity\Entity;
|
||||
use pocketmine\entity\Item as ItemEntity;
|
||||
use pocketmine\math\Vector3;
|
||||
use pocketmine\network\protocol\AddEntityPacket;
|
||||
use pocketmine\network\protocol\AddPlayerPacket;
|
||||
use pocketmine\network\protocol\RemoveEntityPacket;
|
||||
use pocketmine\network\protocol\RemovePlayerPacket;
|
||||
|
||||
class FloatingTextParticle extends Particle{
|
||||
@ -62,21 +65,19 @@ class FloatingTextParticle extends Particle{
|
||||
if($this->entityId === null){
|
||||
$this->entityId = bcadd("1095216660480", mt_rand(0, 0x7fffffff)); //No conflict with other things
|
||||
}else{
|
||||
$pk0 = new RemovePlayerPacket();
|
||||
$pk0 = new RemoveEntityPacket();
|
||||
$pk0->eid = $this->entityId;
|
||||
$pk0->clientID = $this->entityId;
|
||||
|
||||
$p[] = $pk0;
|
||||
}
|
||||
|
||||
if(!$this->invisible){
|
||||
|
||||
$pk = new AddPlayerPacket();
|
||||
$pk = new AddEntityPacket();
|
||||
$pk->eid = $this->entityId;
|
||||
$pk->username = $this->title . ($this->text !== "" ? "\n" . $this->text : "");
|
||||
$pk->clientID = $this->entityId;
|
||||
$pk->type = ItemEntity::NETWORK_ID;
|
||||
$pk->x = $this->x;
|
||||
$pk->y = $this->y - 2.5;
|
||||
$pk->y = $this->y - 0.75;
|
||||
$pk->z = $this->z;
|
||||
$pk->speedX = 0;
|
||||
$pk->speedY = 0;
|
||||
@ -85,11 +86,9 @@ class FloatingTextParticle extends Particle{
|
||||
$pk->pitch = 0;
|
||||
$pk->item = 0;
|
||||
$pk->meta = 0;
|
||||
$pk->slim = false;
|
||||
$pk->skin = str_repeat("\x00", 64 * 32 * 4);
|
||||
$pk->metadata = [
|
||||
Entity::DATA_FLAGS => [Entity::DATA_TYPE_BYTE, 1 << Entity::DATA_FLAG_INVISIBLE],
|
||||
Entity::DATA_AIR => [Entity::DATA_TYPE_SHORT, 300],
|
||||
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]
|
||||
];
|
||||
|
Loading…
x
Reference in New Issue
Block a user