Че то плагин не робит либо я тупой

ErrorException: "Undefined array key "portals" " (EXCEPTION) in "plugins/PortalTransfer/src/Melvi/Main" at line 147


image

var_dump($data);

И покажи

@patt228

array(1) {
  ["portals"]=>
  array(0) {
  }
}

Хз тогда че он ругается

Теперь ему это не нравится

[Server thread/CRITICAL]: TypeError: "pocketmine\utils\TextFormat::clean(): Argument #1 ($string) must be of type string, null given, called in phar://D:/PocketMine-MP-SERVER/PocketMine-MP.phar/src/utils/MainLogger.php on line 194" (EXCEPTION) in "pmsrc/src/utils/TextFormat" at line 143

Заполни portals данными

А кстати, зачем там цикл

Чтобы каждый раз проверять зашел ли игрок в портал (AABB)

Используй таск

Мув евент будет раз 20 в секунду выполняться

А как игрока из таска получить?

Передать игрока в класс таска

таск будет больше нагружать


Почему команда не хочет выполнятся, она должна вызывать форму, но ничего не вызывает

Вообще можно создать кастомный класс игрока, наследовать плеера и проверять в onUpdate

1 лайк

не знаю, что это вообще значит, т.к. в апи не разбираюсь, практики маловато. есть примеры?

final public function onCreation(PlayerCreationEvent $event){
$event->setPlayerClass(CustomPlayer::class);
}
class CustomPlayer extends Player{

public function __construct(){
parent::__construct();
}

public function onUpdate($tick){
//Тут код
parent::onUpdate($tick); //чтобы весь процесс обновления игрока не пошел по пизде
}
}
1 лайк

а в каких целях можно применить?и есть ли это в pm4?

Ну чтобы модифицировать класс плеера, не влезая в ядро. Да и впринципе удобно