Hello I just finished the murder mystery plugin and I get some errors here is one I don’t know how to fix. ErrorException: "Undefined property: Murder\MM\Main::$plugin" (EXCEPTION) in "plugins/MurderMystery_UPDATE-master/src/Murder/MM/Main" at line 835 [17:04:52] [Server thread/DEBUG]: #0 plugins/MurderMystery_UPDATE-master/src/Murder/MM/Main(835): pocketmine\utils\Utils::errorExceptionHandler(integer 8, string[43] Undefined property: Murder\MM\Main::$plugin, string[74] /home/container/plugins/MurderMystery_UPDATE-master/src/Murder/MM/Main.php, integer 835, array[11]) [17:04:52] [Server thread/DEBUG]: #1 src/pocketmine/plugin/MethodEventExecutor(42): Murder\MM\Main->onInteract(object pocketmine\event\player\PlayerInteractEvent) [17:04:52] [Server thread/DEBUG]: #2 src/pocketmine/plugin/RegisteredListener(80): pocketmine\plugin\MethodEventExecutor->execute(object Murder\MM\Main, object pocketmine\event\player\PlayerInteractEvent) [17:04:52] [Server thread/DEBUG]: #3 src/pocketmine/event/Event(88): pocketmine\plugin\RegisteredListener->callEvent(object pocketmine\event\player\PlayerInteractEvent) [17:04:52] [Server thread/DEBUG]: #4 src/pocketmine/level/Level(1870): pocketmine\event\Event->call() [17:04:52] [Server thread/DEBUG]: #6 src/pocketmine/network/mcpe/PlayerNetworkSessionAdapter(150): pocketmine\Player->handleInventoryTransaction(object pocketmine\network\mcpe\protocol\InventoryTransactionPacket) [17:04:52] [Server thread/DEBUG]: #7 src/pocketmine/network/mcpe/protocol/InventoryTransactionPacket(171): pocketmine\network\mcpe\PlayerNetworkSessionAdapter->handleInventoryTransaction(object pocketmine\network\mcpe\protocol\InventoryTransactionPacket) [17:04:52] [Server thread/DEBUG]: #8 src/pocketmine/network/mcpe/PlayerNetworkSessionAdapter(110): pocketmine\network\mcpe\protocol\InventoryTransactionPacket->handle(object pocketmine\network\mcpe\PlayerNetworkSessionAdapter) [17:04:52] [Server thread/DEBUG]: #9 src/pocketmine/network/mcpe/protocol/BatchPacket(127): pocketmine\network\mcpe\PlayerNetworkSessionAdapter->handleDataPacket(object pocketmine\network\mcpe\protocol\InventoryTransactionPacket) [17:04:52] [Server thread/DEBUG]: #10 src/pocketmine/network/mcpe/PlayerNetworkSessionAdapter(110): pocketmine\network\mcpe\protocol\BatchPacket->handle(object pocketmine\network\mcpe\PlayerNetworkSessionAdapter) [17:04:52] [Server thread/DEBUG]: #11 src/pocketmine/Player(3235): pocketmine\network\mcpe\PlayerNetworkSessionAdapter->handleDataPacket(object pocketmine\network\mcpe\protocol\BatchPacket) [17:04:52] [Server thread/DEBUG]: #12 src/pocketmine/network/mcpe/RakLibInterface(169): pocketmine\Player->handleDataPacket(object pocketmine\network\mcpe\protocol\BatchPacket) [17:04:52] [Server thread/DEBUG]: #13 vendor/pocketmine/raklib/src/server/ServerHandler(99): pocketmine\network\mcpe\RakLibInterface->handleEncapsulated(string[17] 174.61.5.21 51658, object raklib\protocol\EncapsulatedPacket, integer 0) [17:04:52] [Server thread/DEBUG]: #14 src/pocketmine/network/mcpe/RakLibInterface(109): raklib\server\ServerHandler->handlePacket() [17:04:52] [Server thread/DEBUG]: #15 src/pocketmine/network/mcpe/RakLibInterface(99): pocketmine\network\mcpe\RakLibInterface->process() [17:04:52] [Server thread/DEBUG]: #16 vendor/pocketmine/snooze/src/SleeperHandler(123): pocketmine\network\mcpe\RakLibInterface->pocketmine\network\mcpe\{closure}() [17:04:52] [Server thread/DEBUG]: #17 vendor/pocketmine/snooze/src/SleeperHandler(85): pocketmine\snooze\SleeperHandler->processNotifications() [17:04:52] [Server thread/DEBUG]: #18 src/pocketmine/Server(2157): pocketmine\snooze\SleeperHandler->sleepUntil(double 1593795892.8759) [17:04:52] [Server thread/DEBUG]: #19 src/pocketmine/Server(1994): pocketmine\Server->tickProcessor() [17:04:52] [Server thread/DEBUG]: #20 src/pocketmine/Server(1588): pocketmine\Server->start() [17:04:52] [Server thread/DEBUG]: #21 src/pocketmine/PocketMine(273): pocketmine\Server->__construct(object BaseClassLoader, object pocketmine\utils\MainLogger, string[16] /home/container/, string[24] /home/container/plugins/) [17:04:52] [Server thread/DEBUG]: #22 src/pocketmine/PocketMine(304): pocketmine\server() [17:04:52] [Server thread/DEBUG]: #23 (11): require(string[71] phar:///home/container/PocketMine-MP.phar/src/pocketmine/PocketMine.php) [17:04:52] [Server thread/INFO]: WEATHERCRAFTYT1 has lefted the lobby. [17:04:52] [Server thread/CRITICAL]: Error: "Call to a member function remove() on null" (EXCEPTION) in "plugins/MurderMystery_UPDATE-master/src/Murder/MM/Main" at line 196 [17:04:52] [Server thread/DEBUG]: #0 src/pocketmine/plugin/MethodEventExecutor(42): Murder\MM\Main->onQuit(object pocketmine\event\player\PlayerQuitEvent) [17:04:52] [Server thread/DEBUG]: #1 src/pocketmine/plugin/RegisteredListener(80): pocketmine\plugin\MethodEventExecutor->execute(object Murder\MM\Main, object pocketmine\event\player\PlayerQuitEvent) [17:04:52] [Server thread/DEBUG]: #2 src/pocketmine/event/Event(88): pocketmine\plugin\RegisteredListener->callEvent(object pocketmine\event\player\PlayerQuitEvent) [17:04:52] [Server thread/DEBUG]: #3 src/pocketmine/Player(3623): pocketmine\event\Event->call() [17:04:52] [Server thread/DEBUG]: #4 src/pocketmine/network/mcpe/RakLibInterface(176): pocketmine\Player->close(object pocketmine\lang\TranslationContainer, string[21] Internal server error) [17:04:52] [Server thread/DEBUG]: #5 vendor/pocketmine/raklib/src/server/ServerHandler(99): pocketmine\network\mcpe\RakLibInterface->handleEncapsulated(string[17] 174.61.5.21 51658, object raklib\protocol\EncapsulatedPacket, integer 0) [17:04:52] [Server thread/DEBUG]: #6 src/pocketmine/network/mcpe/RakLibInterface(109): raklib\server\ServerHandler->handlePacket() [17:04:52] [Server thread/DEBUG]: #7 src/pocketmine/network/mcpe/RakLibInterface(99): pocketmine\network\mcpe\RakLibInterface->process() [17:04:52] [Server thread/DEBUG]: #8 vendor/pocketmine/snooze/src/SleeperHandler(123): pocketmine\network\mcpe\RakLibInterface->pocketmine\network\mcpe\{closure}() [17:04:52] [Server thread/DEBUG]: #9 vendor/pocketmine/snooze/src/SleeperHandler(85): pocketmine\snooze\SleeperHandler->processNotifications() [17:04:52] [Server thread/DEBUG]: #10 src/pocketmine/Server(2157): pocketmine\snooze\SleeperHandler->sleepUntil(double 1593795892.8759) [17:04:52] [Server thread/DEBUG]: #11 src/pocketmine/Server(1994): pocketmine\Server->tickProcessor() [17:04:52] [Server thread/DEBUG]: #12 src/pocketmine/Server(1588): pocketmine\Server->start() [17:04:52] [Server thread/DEBUG]: #13 src/pocketmine/PocketMine(273): pocketmine\Server->__construct(object BaseClassLoader, object pocketmine\utils\MainLogger, string[16] /home/container/, string[24] /home/container/plugins/) [17:04:52] [Server thread/DEBUG]: #14 src/pocketmine/PocketMine(304): pocketmine\server() [17:04:52] [Server thread/DEBUG]: #15 (11): require(string[71] phar:///home/container/PocketMine-MP.phar/src/pocketmine/PocketMine.php) [17:04:52] [Server thread/EMERGENCY]: An unrecoverable error has occurred and the server has crashed. Creating a crash dump. I don’t know how to fix this and it crashed here. PHP: } else { $api = $this->plugin->score; $api->new($pla, $pla->getName(), TE::BOLD.TE::YELLOW."MURDER.TE::BOLD.TE::YELLOW." MYSTERY".TE::BOLD.TE::YELLOW." BETA"); $i = 0; $lines = [ TE::WHITE." ", TE::WHITE."Status: ".TE::GREEN.$timetoStart, TE::WHITE."Waiting... ", TE::WHITE."Map: ".TE::GREEN.$level, TE::WHITE." ", TE::WHITE."Players".TE::GREEN.$playersinarena, TE::WHITE." ", TE::YELLOW."wcserver.goandplay.fun", ]; foreach($lines as $line){ if($i < 15){ $i++; $api->setLine($pla, $i, $line); } } $thespawn = $config->get($namemap . "Spawn1"); } { $player->getInventory()->setItem(0, Item::get(Item::BLAZE_ROD, 0, 1)); } } else { $playerlang = new Config($this->getDataFolder() . "/languages.yml", Config::YAML); $lang = new Config($this->getDataFolder() . "/lang.yml", Config::YAML); $toUse = $lang->get($playerlang->get($player->getName())); $player->sendMessage($this->prefix . $toUse["cannotjoin"]); } } } }
Man.. your code is just.. messy. I suggest using PHPStorm. Anyways, regarding the first issue, you did not declare the variable $plugin. Tell me I'm blind or something but I cannot see the use of the 'remove()' method anywhere in this code.. ahem.. it's late at night.. anyways, you tried to use a member function on null. On nothing (null).. it's like legit self-explanatory.. Code that can reproduce this issue: PHP: public function entitybyentityDamage(EntityDamageByEntityEvent $randomvariable) { $mama = $randomvariable->getDamager(); $mama->kick(); //never boi $mama->sendMessage("joe killed someone.. o wait u kicked lol soz");} There will be no-one to send a message to so you will get the same error (Edit: grammatical error)