Hi, I am using a modified version of the 1vs1 plugin by Minifixio, here is the error I am getting: Code: 11.08 06:27:27 [Server] Server thread/DEBUG #10 /custom-phar.phar(1): require(string phar:///custom-phar.phar/src/pocketmine/PocketMine.php) 11.08 06:27:27 [Server] Server thread/DEBUG #9 src/pocketmine/PocketMine(237): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /, string /plugins/) 11.08 06:27:27 [Server] Server thread/DEBUG #8 src/pocketmine/Server(1713): pocketmine\Server->start() 11.08 06:27:27 [Server] Server thread/DEBUG #7 src/pocketmine/Server(2132): pocketmine\Server->tickProcessor() 11.08 06:27:27 [Server] Server thread/DEBUG #6 src/pocketmine/Server(2258): pocketmine\Server->tick() 11.08 06:27:27 [Server] Server thread/DEBUG #5 src/pocketmine/Server(2509): pocketmine\plugin\PluginManager->tickSchedulers(integer 924) 11.08 06:27:27 [Server] Server thread/DEBUG #4 src/pocketmine/plugin/PluginManager(714): pocketmine\scheduler\TaskScheduler->mainThreadHeartbeat(integer 924) 11.08 06:27:27 [Server] Server thread/DEBUG #3 src/pocketmine/scheduler/TaskScheduler(203): pocketmine\scheduler\TaskHandler->run(integer 924) 11.08 06:27:27 [Server] Server thread/DEBUG #2 src/pocketmine/scheduler/TaskHandler(163): Minifixio\kobattles\model\CountDownToDuelTask->onRun(integer 924) 11.08 06:27:27 [Server] Server thread/DEBUG #1 KOBattles-master/src/Minifixio/kobattles/model/CountDownToDuelTask(42): Minifixio\kobattles\model\Arena->startDuel() 11.08 06:27:27 [Server] Server thread/DEBUG #0 KOBattles-master/src/Minifixio/kobattles/model/Arena(102): Minifixio\kobattles\model\Arena->giveKit(pocketmine\Player object) 11.08 06:27:27 [Server] Server thread/CRITICAL Error: "Call to undefined method pocketmine\item\enchantment\Enchantment::setLevel()" (EXCEPTION) in "KOBattles-master/src/Minifixio/kobattles/model/Arena" at line 132 11.08 06:27:27 [Server] Server thread/CRITICAL Could not execute task Minifixio\kobattles\model\CountDownToDuelTask: Call to undefined method pocketmine\item\enchantment\Enchantment::setLevel() The Arena.php file said in the error: https://pastebin.com/9KNefRZN How can I solve this issue?
PHP: $player->getInventory()->addItem(Item::get(ITEM::STICK)->addEnchantment(Enchantment::getEnchantment(12)->setLevel(2))); Should be PHP: $player->getInventory()->addItem(Item::get(ITEM::STICK)->addEnchantmemt(new EnchantmentInstance(Enchantment::getEnchantment(12), 2))); that should work maybe lol
You forgot addItem(). It appears the version you are using hasn't been fully updated to the newest API.
PHP: 12.08 03:07:14 [Server] Server thread/DEBUG #10 /custom-phar.phar(1): require(string phar:///custom-phar.phar/src/pocketmine/PocketMine.php)12.08 03:07:14 [Server] Server thread/DEBUG #9 src/pocketmine/PocketMine(237): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /, string /plugins/)12.08 03:07:14 [Server] Server thread/DEBUG #8 src/pocketmine/Server(1713): pocketmine\Server->start()12.08 03:07:14 [Server] Server thread/DEBUG #7 src/pocketmine/Server(2132): pocketmine\Server->tickProcessor()12.08 03:07:14 [Server] Server thread/DEBUG #6 src/pocketmine/Server(2258): pocketmine\Server->tick()12.08 03:07:14 [Server] Server thread/DEBUG #5 src/pocketmine/Server(2509): pocketmine\plugin\PluginManager->tickSchedulers(integer 1866)12.08 03:07:14 [Server] Server thread/DEBUG #4 src/pocketmine/plugin/PluginManager(714): pocketmine\scheduler\TaskScheduler->mainThreadHeartbeat(integer 1866)12.08 03:07:14 [Server] Server thread/DEBUG #3 src/pocketmine/scheduler/TaskScheduler(203): pocketmine\scheduler\TaskHandler->run(integer 1866)12.08 03:07:14 [Server] Server thread/DEBUG #2 src/pocketmine/scheduler/TaskHandler(163): Minifixio\kobattles\model\CountDownToDuelTask->onRun(integer 1866)12.08 03:07:14 [Server] Server thread/DEBUG #1 KOBattles-master/src/Minifixio/kobattles/model/CountDownToDuelTask(42): Minifixio\kobattles\model\Arena->startDuel()12.08 03:07:14 [Server] Server thread/DEBUG #0 KOBattles-master/src/Minifixio/kobattles/model/Arena(102): Minifixio\kobattles\model\Arena->giveKit(pocketmine\Player object)12.08 03:07:14 [Server] Server thread/CRITICAL Error: "Class 'Minifixio\kobattles\model\EnchantmentInstance' not found" (EXCEPTION) in "KOBattles-master/src/Minifixio/kobattles/model/Arena" at line 13212.08 03:07:14 [Server] Server thread/CRITICAL Could not execute task Minifixio\kobattles\model\CountDownToDuelTask: Class 'Minifixio\kobattles\model\EnchantmentInstance' not found This error came up, it apperas I am missing some kind of class, how can I solve this issue?
Add that on the place you import the files. With the other use stuff. use pocketmine\item\enchantment\EnchantmentInstance;
Hello, this came up: PHP: 12.08 08:56:04 [Server] Server thread/INFO [CONSOLE: Stopped the time]12.08 08:55:58 [Server] Server thread/DEBUG #11 /custom-phar.phar(1): require(string phar:///custom-phar.phar/src/pocketmine/PocketMine.php)12.08 08:55:58 [Server] Server thread/DEBUG #10 src/pocketmine/PocketMine(237): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /, string /plugins/)12.08 08:55:58 [Server] Server thread/DEBUG #9 src/pocketmine/Server(1713): pocketmine\Server->start()12.08 08:55:58 [Server] Server thread/DEBUG #8 src/pocketmine/Server(2132): pocketmine\Server->tickProcessor()12.08 08:55:58 [Server] Server thread/DEBUG #7 src/pocketmine/Server(2258): pocketmine\Server->tick()12.08 08:55:58 [Server] Server thread/DEBUG #6 src/pocketmine/Server(2509): pocketmine\plugin\PluginManager->tickSchedulers(integer 2886)12.08 08:55:58 [Server] Server thread/DEBUG #5 src/pocketmine/plugin/PluginManager(714): pocketmine\scheduler\TaskScheduler->mainThreadHeartbeat(integer 2886)12.08 08:55:58 [Server] Server thread/DEBUG #4 src/pocketmine/scheduler/TaskScheduler(203): pocketmine\scheduler\TaskHandler->run(integer 2886)12.08 08:55:58 [Server] Server thread/DEBUG #3 src/pocketmine/scheduler/TaskHandler(163): Minifixio\kobattles\model\CountDownToDuelTask->onRun(integer 2886)12.08 08:55:58 [Server] Server thread/DEBUG #2 KOBattles-master/src/Minifixio/kobattles/model/CountDownToDuelTask(42): Minifixio\kobattles\model\Arena->startDuel()12.08 08:55:58 [Server] Server thread/DEBUG #1 KOBattles-master/src/Minifixio/kobattles/model/Arena(103): Minifixio\kobattles\model\Arena->giveKit(pocketmine\Player object)12.08 08:55:58 [Server] Server thread/DEBUG #0 KOBattles-master/src/Minifixio/kobattles/model/Arena(133): pocketmine\inventory\BaseInventory->addItem(NULL )12.08 08:55:58 [Server] Server thread/CRITICAL TypeError: "Argument 1 passed to pocketmine\inventory\BaseInventory::addItem() must be an instance of pocketmine\item\Item, null given, called in /plugins/KOBattles-master/src/Minifixio/kobattles/model/Arena.php on line 133" (EXCEPTION) in "src/pocketmine/inventory/BaseInventory" at line 27112.08 08:55:58 [Server] Server thread/CRITICAL Could not execute task Minifixio\kobattles\model\CountDownToDuelTask: Argument 1 passed to pocketmine\inventory\BaseInventory::addItem() must be an instance of pocketmine\item\Item, null given, called in /plugins/KOBattles-master/src/Minifixio/kobattles/model/Arena.php on line 133
When you create an Item object, you can use Item::get($itemId, $meta, $count, $nbt). You can define the amount and run that line once for each item rather than running the same like 3 or 4 times. As for the error, it says the Item::get is returning null, but I'm not sure why.
Wait, I thought I had the class registered... Btw I'm still wondering about solving the error above, any ideas?
Sorry but the error still there after replacing it: PHP: 14.08 06:57:37 [Server] Server thread/DEBUG #11 /custom-phar.phar(1): require(string phar:///custom-phar.phar/src/pocketmine/PocketMine.php)14.08 06:57:37 [Server] Server thread/DEBUG #10 src/pocketmine/PocketMine(237): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /, string /plugins/)14.08 06:57:37 [Server] Server thread/DEBUG #9 src/pocketmine/Server(1713): pocketmine\Server->start()14.08 06:57:37 [Server] Server thread/DEBUG #8 src/pocketmine/Server(2132): pocketmine\Server->tickProcessor()14.08 06:57:37 [Server] Server thread/DEBUG #7 src/pocketmine/Server(2258): pocketmine\Server->tick()14.08 06:57:37 [Server] Server thread/DEBUG #6 src/pocketmine/Server(2509): pocketmine\plugin\PluginManager->tickSchedulers(integer 6064)14.08 06:57:37 [Server] Server thread/DEBUG #5 src/pocketmine/plugin/PluginManager(714): pocketmine\scheduler\TaskScheduler->mainThreadHeartbeat(integer 6064)14.08 06:57:37 [Server] Server thread/DEBUG #4 src/pocketmine/scheduler/TaskScheduler(203): pocketmine\scheduler\TaskHandler->run(integer 6064)14.08 06:57:37 [Server] Server thread/DEBUG #3 src/pocketmine/scheduler/TaskHandler(163): Minifixio\kobattles\model\CountDownToDuelTask->onRun(integer 6064)14.08 06:57:37 [Server] Server thread/DEBUG #2 KOBattles-master/src/Minifixio/kobattles/model/CountDownToDuelTask(42): Minifixio\kobattles\model\Arena->startDuel()14.08 06:57:37 [Server] Server thread/DEBUG #1 KOBattles-master/src/Minifixio/kobattles/model/Arena(103): Minifixio\kobattles\model\Arena->giveKit(pocketmine\Player object)14.08 06:57:37 [Server] Server thread/DEBUG #0 KOBattles-master/src/Minifixio/kobattles/model/Arena(133): pocketmine\inventory\BaseInventory->addItem(NULL )14.08 06:57:37 [Server] Server thread/CRITICAL TypeError: "Argument 1 passed to pocketmine\inventory\BaseInventory::addItem() must be an instance of pocketmine\item\Item, null given, called in /plugins/KOBattles-master/src/Minifixio/kobattles/model/Arena.php on line 133" (EXCEPTION) in "src/pocketmine/inventory/BaseInventory" at line 27114.08 06:57:37 [Server] Server thread/CRITICAL Could not execute task Minifixio\kobattles\model\CountDownToDuelTask: Argument 1 passed to pocketmine\inventory\BaseInventory::addItem() must be an instance of pocketmine\item\Item, null given, called in /plugins/KOBattles-master/src/Minifixio/kobattles/model/Arena.php on line 133 The new Arena.php: https://pastebin.com/kRrTy2SN