1. The forums will be archived and moved to a read only mode in about 2 weeks (mid march).

Enchantment error

Discussion in 'Development' started by MSG100PM, Aug 11, 2018.

  1. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
    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?
     
  2. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
    I think its something about enchantment, is there anything I should add, edit or delete?
     
  3. xXNiceAssassinlo YT

    xXNiceAssassinlo YT Zombie Pigman

    Messages:
    499
    GitHub:
    xXNiceYT
    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
     
    Last edited: Aug 11, 2018
  4. corytortoise

    corytortoise Skeleton

    Messages:
    825
    GitHub:
    corytortoise
    You forgot addItem().

    It appears the version you are using hasn't been fully updated to the newest API.
     
    MSG100PM and xXNiceAssassinlo YT like this.
  5. xXNiceAssassinlo YT

    xXNiceAssassinlo YT Zombie Pigman

    Messages:
    499
    GitHub:
    xXNiceYT
    whoops lol
     
  6. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
    PHP:
    12.08 03:07:14 [ServerServer thread/DEBUG #10 /custom-phar.phar(1): require(string phar:///custom-phar.phar/src/pocketmine/PocketMine.php)
    12.08 03:07:14 [ServerServer thread/DEBUG #9 src/pocketmine/PocketMine(237): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /, string /plugins/)
    12.08 03:07:14 [ServerServer thread/DEBUG #8 src/pocketmine/Server(1713): pocketmine\Server->start()
    12.08 03:07:14 [ServerServer thread/DEBUG #7 src/pocketmine/Server(2132): pocketmine\Server->tickProcessor()
    12.08 03:07:14 [ServerServer thread/DEBUG #6 src/pocketmine/Server(2258): pocketmine\Server->tick()
    12.08 03:07:14 [ServerServer thread/DEBUG #5 src/pocketmine/Server(2509): pocketmine\plugin\PluginManager->tickSchedulers(integer 1866)
    12.08 03:07:14 [ServerServer thread/DEBUG #4 src/pocketmine/plugin/PluginManager(714): pocketmine\scheduler\TaskScheduler->mainThreadHeartbeat(integer 1866)
    12.08 03:07:14 [ServerServer thread/DEBUG #3 src/pocketmine/scheduler/TaskScheduler(203): pocketmine\scheduler\TaskHandler->run(integer 1866)
    12.08 03:07:14 [ServerServer thread/DEBUG #2 src/pocketmine/scheduler/TaskHandler(163): Minifixio\kobattles\model\CountDownToDuelTask->onRun(integer 1866)
    12.08 03:07:14 [ServerServer thread/DEBUG #1 KOBattles-master/src/Minifixio/kobattles/model/CountDownToDuelTask(42): Minifixio\kobattles\model\Arena->startDuel()
    12.08 03:07:14 [ServerServer thread/DEBUG #0 KOBattles-master/src/Minifixio/kobattles/model/Arena(102): Minifixio\kobattles\model\Arena->giveKit(pocketmine\Player object)
    12.08 03:07:14 [ServerServer thread/CRITICAL Error"Class 'Minifixio\kobattles\model\EnchantmentInstance' not found" (EXCEPTIONin "KOBattles-master/src/Minifixio/kobattles/model/Arena" at line 132
    12.08 03
    :07:14 [ServerServer 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?
     
  7. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
  8. MalakasPlayzMCPE

    MalakasPlayzMCPE Zombie Pigman

    Messages:
    667
    Add that on the place you import the files. With the other use stuff.
    use pocketmine\item\enchantment\EnchantmentInstance;
     
    corytortoise likes this.
  9. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
    Thanks!
     
  10. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
    Hello, this came up:

    PHP:
    12.08 08:56:04 [ServerServer thread/INFO [CONSOLEStopped the time]
    12.08 08:55:58 [ServerServer thread/DEBUG #11 /custom-phar.phar(1): require(string phar:///custom-phar.phar/src/pocketmine/PocketMine.php)
    12.08 08:55:58 [ServerServer thread/DEBUG #10 src/pocketmine/PocketMine(237): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /, string /plugins/)
    12.08 08:55:58 [ServerServer thread/DEBUG #9 src/pocketmine/Server(1713): pocketmine\Server->start()
    12.08 08:55:58 [ServerServer thread/DEBUG #8 src/pocketmine/Server(2132): pocketmine\Server->tickProcessor()
    12.08 08:55:58 [ServerServer thread/DEBUG #7 src/pocketmine/Server(2258): pocketmine\Server->tick()
    12.08 08:55:58 [ServerServer thread/DEBUG #6 src/pocketmine/Server(2509): pocketmine\plugin\PluginManager->tickSchedulers(integer 2886)
    12.08 08:55:58 [ServerServer thread/DEBUG #5 src/pocketmine/plugin/PluginManager(714): pocketmine\scheduler\TaskScheduler->mainThreadHeartbeat(integer 2886)
    12.08 08:55:58 [ServerServer thread/DEBUG #4 src/pocketmine/scheduler/TaskScheduler(203): pocketmine\scheduler\TaskHandler->run(integer 2886)
    12.08 08:55:58 [ServerServer thread/DEBUG #3 src/pocketmine/scheduler/TaskHandler(163): Minifixio\kobattles\model\CountDownToDuelTask->onRun(integer 2886)
    12.08 08:55:58 [ServerServer thread/DEBUG #2 KOBattles-master/src/Minifixio/kobattles/model/CountDownToDuelTask(42): Minifixio\kobattles\model\Arena->startDuel()
    12.08 08:55:58 [ServerServer thread/DEBUG #1 KOBattles-master/src/Minifixio/kobattles/model/Arena(103): Minifixio\kobattles\model\Arena->giveKit(pocketmine\Player object)
    12.08 08:55:58 [ServerServer thread/DEBUG #0 KOBattles-master/src/Minifixio/kobattles/model/Arena(133): pocketmine\inventory\BaseInventory->addItem(NULL )
    12.08 08:55:58 [ServerServer 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" (EXCEPTIONin "src/pocketmine/inventory/BaseInventory" at line 271
    12.08 
    08:55:58 [ServerServer thread/CRITICAL Could not execute task Minifixio\kobattles\model\CountDownToDuelTaskArgument 1 passed to pocketmine\inventory\BaseInventory::addItem() must be an instance of pocketmine\item\Itemnull givencalled in /plugins/KOBattles-master/src/Minifixio/kobattles/model/Arena.php on line 133
     
  11. MalakasPlayzMCPE

    MalakasPlayzMCPE Zombie Pigman

    Messages:
    667
    Send us the code.
     
  12. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
    Do you mean the Arena.php said in the error? If so, here it is https://pastebin.com/9KNefRZN
     
  13. corytortoise

    corytortoise Skeleton

    Messages:
    825
    GitHub:
    corytortoise
    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.
     
    MSG100PM likes this.
  14. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
    Do you have an idea of a possible fix for the error?
     
  15. Muqsit

    Muqsit Chicken

    Messages:
    1,548
    GitHub:
    muqsit
    I'm more concerned as to why you didn't get a Class 'ITEM' not found error.
     
    MSG100PM and xXNiceAssassinlo YT like this.
  16. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
    Probably its because that error I'm getting goes into higher priority than the item class :p
     
    Last edited: Aug 13, 2018
  17. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
    Wait, I thought I had the class registered...

    Btw I'm still wondering about solving the error above, any ideas?
     
    Last edited: Aug 13, 2018
  18. corytortoise

    corytortoise Skeleton

    Messages:
    825
    GitHub:
    corytortoise
    Muqsit hinted at the problem. Do Item::STICK rather than ITEM.
     
    Muqsit and MSG100PM like this.
  19. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
    Sorry but the error still there after replacing it:

    PHP:
    14.08 06:57:37 [ServerServer thread/DEBUG #11 /custom-phar.phar(1): require(string phar:///custom-phar.phar/src/pocketmine/PocketMine.php)
    14.08 06:57:37 [ServerServer thread/DEBUG #10 src/pocketmine/PocketMine(237): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /, string /plugins/)
    14.08 06:57:37 [ServerServer thread/DEBUG #9 src/pocketmine/Server(1713): pocketmine\Server->start()
    14.08 06:57:37 [ServerServer thread/DEBUG #8 src/pocketmine/Server(2132): pocketmine\Server->tickProcessor()
    14.08 06:57:37 [ServerServer thread/DEBUG #7 src/pocketmine/Server(2258): pocketmine\Server->tick()
    14.08 06:57:37 [ServerServer thread/DEBUG #6 src/pocketmine/Server(2509): pocketmine\plugin\PluginManager->tickSchedulers(integer 6064)
    14.08 06:57:37 [ServerServer thread/DEBUG #5 src/pocketmine/plugin/PluginManager(714): pocketmine\scheduler\TaskScheduler->mainThreadHeartbeat(integer 6064)
    14.08 06:57:37 [ServerServer thread/DEBUG #4 src/pocketmine/scheduler/TaskScheduler(203): pocketmine\scheduler\TaskHandler->run(integer 6064)
    14.08 06:57:37 [ServerServer thread/DEBUG #3 src/pocketmine/scheduler/TaskHandler(163): Minifixio\kobattles\model\CountDownToDuelTask->onRun(integer 6064)
    14.08 06:57:37 [ServerServer thread/DEBUG #2 KOBattles-master/src/Minifixio/kobattles/model/CountDownToDuelTask(42): Minifixio\kobattles\model\Arena->startDuel()
    14.08 06:57:37 [ServerServer thread/DEBUG #1 KOBattles-master/src/Minifixio/kobattles/model/Arena(103): Minifixio\kobattles\model\Arena->giveKit(pocketmine\Player object)
    14.08 06:57:37 [ServerServer thread/DEBUG #0 KOBattles-master/src/Minifixio/kobattles/model/Arena(133): pocketmine\inventory\BaseInventory->addItem(NULL )
    14.08 06:57:37 [ServerServer 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" (EXCEPTIONin "src/pocketmine/inventory/BaseInventory" at line 271
    14.08 06
    :57:37 [ServerServer thread/CRITICAL Could not execute task Minifixio\kobattles\model\CountDownToDuelTaskArgument 1 passed to pocketmine\inventory\BaseInventory::addItem() must be an instance of pocketmine\item\Itemnull givencalled in /plugins/KOBattles-master/src/Minifixio/kobattles/model/Arena.php on line 133


    The new Arena.php: https://pastebin.com/kRrTy2SN
     
  20. MSG100PM

    MSG100PM Slime

    Messages:
    95
    GitHub:
    MSG100TC
    I tried the best I can do but I am still getting the error above
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.