public function remove(Entity $entity) { if ($entity instanceof Player) { $pk = new MobEffectPacket(); $pk->eid = 0; $pk->eventId = MobEffectPacket::EVENT_REMOVE; $pk->effectId = $this->getId(); $entity->dataPacket($pk); } if ($this->id === Effect::INVISIBILITY) { $entity->setDataFlag(Entity::DATA_FLAGS, Entity::DATA_FLAG_INVISIBLE, false); $entity->setNameTagVisible(true); } elseif ($this->id === Effect::SPEED) { $attr = $entity->getAttributeMap()->getAttribute(Attribute::MOVEMENT_SPEED); $attr->setValue($attr->getValue() / (1 + 0.2 * $this->amplifier)); } elseif ($this->id === Effect::SLOWNESS) { $attr = $entity->getAttributeMap()->getAttribute(Attribute::MOVEMENT_SPEED); $attr->setValue($attr->getValue() / (1 - 0.15 * $this->amplifier)); } }