Как изменить таимер типа босс поевляется 5каждыи 5мин мне надо чтобы он появлялся по 40мин
<?php namespace Boss; use pocketmine\{Player, Server}; use pocketmine\event\Listener; use pocketmine\plugin\PluginBase; use pocketmine\math\Vector3; use pocketmine\level\Explosion; use pocketmine\item\Item; use pocketmine\scheduler\CallbackTask; use pocketmine\entity\{Entity, Skeleton, Zombie, WitherSkeleton}; use pocketmine\item\enchantment\Enchantment; use pocketmine\item\ItemIds; use pocketmine\nbt\NBT; use pocketmine\utils\Config; use pocketmine\event\entity\{EntityDeathEvent, EntityDamageByEntityEvent, EntityDamageEvent}; use pocketmine\nbt\tag\{CompoundTag, FloatTag, ListTag, DoubleTag}; use pocketmine\event\player\PlayerJoinEvent; use pocketmine\level\particle\FloatingTextParticle; use pocketmine\network\mcpe\protocol\LevelEventPacket; class EventHandler extends PluginBase implements Listener { private $x_0 = 459, $y_0 = 128, $z_0 = 149; # координаты центра фермы private $tops = []; private $names = ["§l§cВолшебник", "§l§dДуралей", "§l§bБожественник", "§l§cДеревянный", "§l§eКрутой", "§l§aГениальный", "§l§4Анархист"]; # имена, с которыми спавнятся мобы на ферме private $mobs = ["Skeleton", "Zombie"]; # мобы, которые спавнятся на ферме public function onEnable() { $this->getServer()->getPluginManager()->registerEvents($this, $this); $this->getServer()->getScheduler()->scheduleRepeatingTask(new CallbackTask(array($this, "spawn_boss")), 20 * 100); } public function spawn_boss() { $level = $this->getServer()->getDefaultLevel(); foreach ($level->getEntities() as $entity) { if ($entity instanceof Zombie) { $entity->kill(); } } $nbt = new CompoundTag("", ["Pos" => new ListTag("Pos", [new DoubleTag("", $this->x_0 + mt_rand(-2, 8)), new DoubleTag("", $this->y_0 + 1), new DoubleTag("", $this->z_0 + mt_rand(-2, 8))]), "Motion" => new ListTag("Motion", [new DoubleTag("", 0), new DoubleTag("", 0), new DoubleTag("", 0)]), "Rotation" => new ListTag("Rotation", [new FloatTag("", 0), new FloatTag("", 0)]),]); $mob = Entity::createEntity($this->mobs[1], $level, $nbt); $mob->setScale(1.5); $mob->setMaxHealth(200); $mob->setHealth(200); $mob->setNameTag($this->names[6]); $mob->setNameTagAlwaysVisible(true); $mob->spawnToAll(); foreach ($this->getServer()->getOnlinePlayers() as $players) { $players->sendMessage("\n\n§l§4Анархист §r§7возродился на арене§7[§e/arena§7]\n\n"); $level->broadcastLevelEvent($players->add(0, $players->eyeHeight, 0), LevelEventPacket::EVENT_GUARDIAN_CURSE); } } public function EntityDamage(EntityDamageEvent $e) { if ($e instanceof EntityDamageByEntityEvent) { $npc = $e->getEntity(); $attacker = $e->getDamager(); $damage = $e->getDamage(); if ($attacker instanceof Player) { if ($attacker instanceof Player && $npc instanceof Zombie) { if ($attacker->getAllowFlight()) { $e->setCancelled(true); return; } if (!$attacker->isSurvival()) { $e->setCancelled(true); return; } if (isset($this->tops[$attacker->getLowerCaseName()])) $this->tops[$attacker->getLowerCaseName()] += $damage; else $this->tops[$attacker->getLowerCaseName()] = $damage; $e->setKnockBack(0.0); if ($npc->getHealth() > $e->getDamage()) { $attacker->sendTip("§a{$npc->getHealth()} §c♥"); } } } } } public function EntityDeath(EntityDeathEvent $e) { $ent = $e->getEntity(); $ent->setOnFire(0); if($ent->getNameTag() == $this->names[6]){ $fix = $this->tops; $list = ""; $count = 0; foreach($fix as $name => $k){ $count++; if($count == 1){ $list .= "§l§8[§l§c{$name}§8] §r§7нанёс §l§c{$k} §r§7урона\n"; $pl1 = $this->getServer()->getPlayer($name); $item = Item::get(218, rand(0, 15)); if (!$pl1->getInventory()->canAddItem($item)) { $pl1->sendMessage("У вас нет свободных слотов!"); return; } $item->setNamedTag($this->getItemTag(1)); $pl1->getInventory()->addItem($item); } if($count == 2){ $list .= "§l§8[§l§a{$name}§8] §r§7нанёс §l§a{$k} §r§7урона\n"; $pl1 = $this->getServer()->getPlayer($name); $item = Item::get(218, rand(0, 15)); if (!$pl1->getInventory()->canAddItem($item)) { $pl1->sendMessage("У вас нет свободных слотов!"); return; } $item->setNamedTag($this->getItemTag(2)); $pl1->getInventory()->addItem($item); } if($count == 3){ $list .= "§l§8[§l§e{$name}§8] §r§7нанёс §l§e{$k} §r§7урона\n"; $pl1 = $this->getServer()->getPlayer($name); $item = Item::get(218, rand(0, 15)); if (!$pl1->getInventory()->canAddItem($item)) { $pl1->sendMessage("У вас нет свободных слотов!"); return; } $item->setNamedTag($this->getItemTag(3)); $pl1->getInventory()->addItem($item); }//$count }//Foreach unset($this->tops); $this->getServer()->broadcastMessage("\n\n§fТоп дамагеров по §eбоссу\n{$list}"); } } private function getItemTag(): CompoundTag { $tag = new ListTag("Items", []); $tag->setTagType(NBT::TAG_Compound); $nbt = new CompoundTag("", []); $nbt->Items = $tag; $filled = 0; do { $slot = mt_rand(0, 26); if (!isset($nbt->Items[$slot])) { $items = $this->getRandomItems(); $item = $items[array_rand($items)]; $nbt->Items[$slot] = $item->nbtSerialize($slot); $filled++; } } while ($filled < 16); return $nbt; } private function getRandomItems(): array { /** @var Item[] $items */ $items = [ Item::get(ItemIds::DIAMOND, 0, mt_rand(16, 64)), Item::get(ItemIds::IRON_INGOT, 0, mt_rand(16, 64)), Item::get(ItemIds::GOLD_INGOT, 0, mt_rand(16, 64)), Item::get(ItemIds::ENDER_PEARL, 0, mt_rand(2, 16)), Item::get(ItemIds::GOLDEN_APPLE, 0, mt_rand(1, 3)), Item::get(ItemIds::ENCHANTED_GOLDEN_APPLE) ]; /** @var Item[] $enchantedTools */ $enchantedTools = [ Item::get(ItemIds::DIAMOND_HELMET), Item::get(ItemIds::DIAMOND_CHESTPLATE), Item::get(ItemIds::DIAMOND_LEGGINGS), Item::get(ItemIds::DIAMOND_BOOTS), Item::get(ItemIds::DIAMOND_SWORD), Item::get(ItemIds::DIAMOND_SHOVEL), Item::get(ItemIds::DIAMOND_AXE), Item::get(ItemIds::DIAMOND_PICKAXE) ]; $efficiency = Enchantment::getEnchantment(Enchantment::TYPE_MINING_EFFICIENCY); $sharpness = Enchantment::getEnchantment(Enchantment::TYPE_WEAPON_SHARPNESS); $protection = Enchantment::getEnchantment(Enchantment::TYPE_ARMOR_PROTECTION); foreach ($enchantedTools as $tool) { if ($tool->isArmor()) { //TODO: выражение match() подошло бы сюда лучше всего, но так как мы находимся на уебанской версии 1.1.5, где все сидят на php7, а не на php8 - то у всех будет ошибка, т.к match() добавили в php8 $protection->setLevel(mt_rand(1, 4)); $tool->addEnchantment($protection); } elseif ($tool->isSword()) { $sharpness->setLevel(mt_rand(1, 5)); $tool->addEnchantment($sharpness); } else { $efficiency->setLevel(mt_rand(1, 5)); $tool->addEnchantment($efficiency); } $items[] = $tool; } return $items; } }Вот 20 * 60 * 40

НАУЧИСЬ ВСТАВЛЯТЬ КОД
3 лайка
$this->getServer()->getScheduler()->scheduleRepeatingTask(new CallbackTask(array($this, “spawn_boss”)), 20 * 60 * 40);
а ой уже ответили, сорянчик
пиздец минус глаза
3 лайка
та пиздец лех
А если вставлять только не код кому то?