diff --git a/src/Ad5001/FloatingTexts/Main.php b/src/Ad5001/FloatingTexts/Main.php index 83c3f9f..5e777c8 100644 --- a/src/Ad5001/FloatingTexts/Main.php +++ b/src/Ad5001/FloatingTexts/Main.php @@ -19,14 +19,7 @@ class Main extends PluginBase implements \pocketmine\event\Listener { public function onEnable() { $this->getServer()->getPluginManager()->registerEvents($this, $this); $this->sessions = []; - foreach ($this->getServer()->getDefaultLevel()->getEntities() as $et) { - if(isset($et->namedtag->isUsedToFloat)) { - $et->addEffect(\pocketmine\entity\Effect::getEffectByName("invisibility")->setDuration(99999)->setVisible(false)); - $et->setNameTagAlwaysVisible(true); - $et->setNameTagVisible(true); - $et->setImmobile(true); - } - } + $this->getServer()->getScheduler()->scheduleRepeatingTask(new SetNameTagVisibleTask($this),10); } /* @@ -61,7 +54,7 @@ class Main extends PluginBase implements \pocketmine\event\Listener { if($event instanceof \pocketmine\event\entity\EntityDamageByEntityEvent) { if($event->getDamager() instanceof Player && isset($this->sessions[$event->getDamager()->getName()])) { - $event->getEntity()->addEffect(\pocketmine\entity\Effect::getEffectByName("invisibility")->setDuration(99999)->setVisible(false)); + $event->getEntity()->addEffect(\pocketmine\entity\Effect::getEffectByName("invisibility")->setAmbiant(true)->setVisible(false)); $event->getEntity()->setNameTag($this->sessions[$event->getDamager()->getName()]); $event->getEntity()->setNameTagAlwaysVisible(true); $event->getEntity()->setNameTagVisible(true); diff --git a/src/Ad5001/FloatingTexts/SetNameTagVisibleTask.php b/src/Ad5001/FloatingTexts/SetNameTagVisibleTask.php new file mode 100644 index 0000000..cf88958 --- /dev/null +++ b/src/Ad5001/FloatingTexts/SetNameTagVisibleTask.php @@ -0,0 +1,29 @@ +getOwner()->getServer()->getLevels() as $level) { + foreach ($level->getEntities() as $et) { + if(isset($et->namedtag->isUsedToFloat)) { + $et->setNameTagAlwaysVisible(true); + $et->setNameTagVisible(true); + $et->setImmobile(true); + } + } + } + } +} \ No newline at end of file