Hello my code give me error help please error: Code: [19:43:08] [Server thread/CRITICAL]: "Could not pass event 'pocketmine\event\player\PlayerInteractEvent' to 'JumpLeague v1': Call to a member function getOnlinePlayers() on unknown on JumpLeague\Main [19:43:08] [Server thread/CRITICAL]: Error: "Call to a member function getOnlinePlayers() on unknown" (EXCEPTION) in "myzip:///JumpLeague.zip#JumpLeague/src/JumpLeague/Main" at line 159 CODE: PHP: public function onInteract(PlayerInteractEvent $e){ $p = $e->getPlayer(); if ($p->getInventory()->getItemInHand()->getId() === Item::COMPASS && ($e->getAction() === $e::RIGHT_CLICK_AIR || $e->getAction() === $e::LEFT_CLICK_AIR)) { $p->teleport(new Vector3(1, 2, 3)); $arena = $this->getServer()->getLevelByName("jl1"); $p->sendMessage("§aJoining"); $p->teleport(new Vector3(2, 3, 2)); $this->startGame(); if($arena->getPlayers() == 1) { $p->teleport(new Vector3(2, 3, 2)); $this->startGame(); $p->sendMessage("§aJoining"); } } }
The problem is probably in $arena->getPlayers(), it seems like you're trying to call getPlayersOnline in an unknown object. Can you show us the line 159 in your Main file? PHP: [19:43:08] [Server thread/CRITICAL]: Error: "Call to a member function getOnlinePlayers() on unknown" (EXCEPTION) in "myzip:///JumpLeague.zip#JumpLeague/src/JumpLeague/Main" at line 159
error Code: [20:13:55] [Server thread/CRITICAL]: ParseError: "syntax error, unexpected ' ' (T_STRING), expecting ',' or ')'" (EXCEPTION) in "myzip:///JumpLeague.zip#JumpLeague/src/JumpLeague/Main" at line 159 Code: PHP: public function startGame() { if(count($arena->getPlayers() == 2) { $this->setUp($p); $p->sendMessage("Game started"); $this->getPhase(2); }}
PHP: public function startGame() { if(count($arena->getPlayers()) == 2) { $this->setUp($p); $p->sendMessage("Game started"); $this->getPhase(2); }} This! You forgot one ')' This should work
Code: [20:22:06] [Server thread/CRITICAL]: "Could not pass event 'pocketmine\event\player\PlayerInteractEvent' to 'JumpLeague v1': Call to a member function getPlayers() on unknown on JumpLeague\Main [20:22:06] [Server thread/CRITICAL]: Error: "Call to a member function getPlayers() on unknown" (EXCEPTION) in "myzip:///JumpLeague.zip#JumpLeague/src/JumpLeague/Main" at line 159 :/ ERROR
How can we know what $arena consists of? Read error message! Even php doesn't know what is it. Perform a debugging, that usually resolves most of the problems.
Ok thanks but it givning me more error Code: [20:29:05] [Server thread/CRITICAL]: "Could not pass event 'pocketmine\event\player\PlayerInteractEvent' to 'JumpLeague v1': Call to a member function getPlayers() on null on JumpLeague\Main [20:29:05] [Server thread/CRITICAL]: Error: "Call to a member function getPlayers() on null" (EXCEPTION) in "myzip:///JumpLeague.zip#JumpLeague/src/JumpLeague/Main" at line 160 [20:29:07] [Server thread/CRITICAL]: "Could not pass event 'pocketmine\event\player\PlayerInteractEvent' to 'JumpLeague v1': Call to a member function getPlayers() on null on JumpLeague\Main [20:29:07] [Server thread/CRITICAL]: Error: "Call to a member function getPlayers() on null" (EXCEPTION) in "myzip:///JumpLeague.zip#JumpLeague/src/JumpLeague/Main" at line 160
Did you load the level? PHP: if(!$this->getServer()->isLevelLoaded("jl1")){$this->getServer()->loadLevel("jl1");}$arena = $this->getServer()->getLevelByName("jl1");