Muqsit / DimensionPortals

Adds nether and end portals (without nether and end generator) to PocketMine-MP
https://poggit.pmmp.io/ci/Muqsit/DimensionPortals/NetherPortal
Other
37 stars 6 forks source link

Crash #13

Closed MrBlasyMSK closed 2 years ago

MrBlasyMSK commented 2 years ago
Error: muqsit\dimensionportals\player\PlayerManager::get(): Return value must be of type muqsit\dimensionportals\player\PlayerInstance, null returned
File: plugins/NetherPortal_dev-46.phar/src/muqsit/dimensionportals/player/PlayerManager
Line: 81
Type: TypeError

THIS CRASH WAS CAUSED BY A PLUGIN
BAD PLUGIN: DimensionPortals

Code:
[72]        self::$players[$player->getId()] = new PlayerInstance($player, $logger);
[73]    }
[74] 
[75]    public static function destroy(Player $player) : void{
[76]        self::stopTicking($player);
[77]        unset(self::$players[$player->getId()]);
[78]    }
[79] 
[80]    public static function get(Player $player) : PlayerInstance{
[81]        return self::getNullable($player);
[82]    }
[83] 
[84]    public static function getNullable(Player $player) : ?PlayerInstance{
[85]        return self::$players[$player->getId()] ?? null;
[86]    }
[87] 
[88]    public static function scheduleTicking(Player $player) : void{
[89]        $player_id = $player->getId();
[90]        self::$ticking[$player_id] = $player_id;
[91]    }

Backtrace:
#0 plugins/NetherPortal_dev-46.phar/src/muqsit/dimensionportals/world/WorldListener(78): muqsit\dimensionportals\player\PlayerManager::get(object pocketmine\player\Player#110313)
#1 pmsrc/src/event/RegisteredListener(75): muqsit\dimensionportals\world\WorldListener->onEntityTeleport(object pocketmine\event\entity\EntityTeleportEvent#110326)
#2 pmsrc/src/event/Event(62): pocketmine\event\RegisteredListener->callEvent(object pocketmine\event\entity\EntityTeleportEvent#110326)
#3 pmsrc/src/entity/Entity(1405): pocketmine\event\Event->call()
#4 pmsrc/src/player/Player(2355): pocketmine\entity\Entity->teleport(object pocketmine\entity\Location#110333, double 90.17041015625, double 0.5767822265625)
#5 plugins/theSpawn_dev-124.phar/src/supercrafter333/theSpawn/EventListener(102): pocketmine\player\Player->teleport(object pocketmine\entity\Location#110333)
#6 pmsrc/src/event/RegisteredListener(75): supercrafter333\theSpawn\EventListener->onPlayerLogin(object pocketmine\event\player\PlayerLoginEvent#110217)
#7 pmsrc/src/event/Event(62): pocketmine\event\RegisteredListener->callEvent(object pocketmine\event\player\PlayerLoginEvent#110217)
#8 pmsrc/src/Server(1666): pocketmine\event\Event->call()
#9 pmsrc/src/network/mcpe/NetworkSession(242): pocketmine\Server->addOnlinePlayer(object pocketmine\player\Player#110313)
#10 pmsrc/src/promise/Promise(45): pocketmine\network\mcpe\NetworkSession->onPlayerCreated(object pocketmine\player\Player#110313)
#11 pmsrc/src/network/mcpe/NetworkSession(233): pocketmine\promise\Promise->onCompletion(object Closure#110237, object Closure#110232)
#12 pmsrc/src/network/mcpe/NetworkSession(691): pocketmine\network\mcpe\NetworkSession->createPlayer()
#13 pmsrc/src/network/mcpe/handler/ResourcePacksPacketHandler(142): pocketmine\network\mcpe\NetworkSession->pocketmine\network\mcpe\{closure}()
#14 pmsrc/vendor/pocketmine/bedrock-protocol/src/ResourcePackClientResponsePacket(61): pocketmine\network\mcpe\handler\ResourcePacksPacketHandler->handleResourcePackClientResponse(object pocketmine\network\mcpe\protocol\ResourcePackClientResponsePacket#110235)
#15 pmsrc/src/network/mcpe/NetworkSession(397): pocketmine\network\mcpe\protocol\ResourcePackClientResponsePacket->handle(object pocketmine\network\mcpe\handler\ResourcePacksPacketHandler#110198)
#16 pmsrc/src/network/mcpe/NetworkSession(360): pocketmine\network\mcpe\NetworkSession->handleDataPacket(object pocketmine\network\mcpe\protocol\ResourcePackClientResponsePacket#110235, string[4] ....)
#17 pmsrc/src/network/mcpe/raklib/RakLibInterface(192): pocketmine\network\mcpe\NetworkSession->handleEncoded(string[7] c.`a`..)
#18 pmsrc/vendor/pocketmine/raklib-ipc/src/RakLibToUserThreadMessageReceiver(42): pocketmine\network\mcpe\raklib\RakLibInterface->onPacketReceive(integer 0, string[16] .+..2..C.J8!....)
#19 pmsrc/src/network/mcpe/raklib/RakLibInterface(122): raklib\server\ipc\RakLibToUserThreadMessageReceiver->handle(object pocketmine\network\mcpe\raklib\RakLibInterface#109619)
#20 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(123): pocketmine\network\mcpe\raklib\RakLibInterface->pocketmine\network\mcpe\raklib\{closure}()
#21 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(82): pocketmine\snooze\SleeperHandler->processNotifications()
#22 pmsrc/src/Server(1660): pocketmine\snooze\SleeperHandler->sleepUntil(double 1647702965.066)
#23 pmsrc/src/Server(1046): pocketmine\Server->tickProcessor()
#24 pmsrc/src/PocketMine(304): pocketmine\Server->__construct(object BaseClassLoader#2, object pocketmine\utils\MainLogger#3, string[16] /home/container/, string[24] /home/container/plugins/)
#25 pmsrc/src/PocketMine(327): pocketmine\server()
#26 pmsrc(11): require(string[60] phar:///home/container/PocketMine-MP.phar/src/PocketMine.php)

PocketMine-MP version: 4.2.4 [Protocol 486]
Git commit: 05a5e5eac126064583af2e892cb9b3cc0b0a88b6
uname -a: Linux 40988d2c-8e2a-4b5a-ab32-2bc6e7d3056e 5.4.0-100-generic #113-Ubuntu SMP Thu Feb 3 18:43:29 UTC 2022 x86_64
PHP Version: 8.0.16
Zend version: 4.0.16
OS: Linux, linux
Composer libraries: 
- adhocore/json-comment 1.1.2@fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7
- brick/math 0.9.3@ca57d18f028f84f777b2168cd1911b0dee2343ae
- daverandom/callback-validator unknown@unknown
- fgrosse/phpasn1 v2.4.0@eef488991d53e58e60c9554b09b1201ca5ba9296
- netresearch/jsonmapper v4.0.0@8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d
- pocketmine/bedrock-data 1.6.0+bedrock-1.18.10@e98c511584a7bd58a95986374d2df4b04c6a2ba0
- pocketmine/bedrock-protocol 8.0.1+bedrock-1.18.10@a740f6095b35278c0e0dac6db84a5e4d2456b113
- pocketmine/binaryutils 0.2.4@5ac7eea91afbad8dc498f5ce34ce6297d5e6ea9a
- pocketmine/callback-validator 1.0.3@64787469766bcaa7e5885242e85c23c25e8c55a2
- pocketmine/classloader 0.2.0@49ea303993efdfb39cd302e2156d50aa78209e78
- pocketmine/color 0.2.0@09be6ea6d76f2e33d6813c39d29c22c46c17e1d2
- pocketmine/errorhandler 0.6.0@dae214a04348b911e8219ebf125ff1c5589cc878
- pocketmine/locale-data 2.4.3@4d0b081f1a79407e087968ea76aaf330db6ea2b5
- pocketmine/log 0.4.0@e6c912c0f9055c81d23108ec2d179b96f404c043
- pocketmine/log-pthreads 0.4.0@61f709e8cf36bcc24e4efe02acded680a1ce23cd
- pocketmine/math 0.4.2@aacc3759a508a69dfa5bc4dfa770ab733c5c94bf
- pocketmine/nbt 0.3.2@3e0d9ef6b6c5fb45e3745a121296e75631b3eefe
- pocketmine/pocketmine-mp 4.2.4@05a5e5eac126064583af2e892cb9b3cc0b0a88b6
- pocketmine/raklib 0.14.3@4798576fec0364266dce23b368a7fec5e5de7927
- pocketmine/raklib-ipc 0.1.1@922a6444b0c6c7daaa5aa5a832107e1ec4738aed
- pocketmine/snooze 0.3.1@0ac8fc2a781c419a1f64ebca4d5835028f59e29b
- ramsey/collection 1.2.2@cccc74ee5e328031b15640b51056ee8d3bb66c0a
- ramsey/uuid 4.2.3@fc9bb7fb5388691fd7373cd44dcb4d63bbcf24df
- rhumsaa/uuid unknown@unknown
- symfony/polyfill-ctype v1.25.0@30885182c981ab175d4d034db0f6f469898070ab
- symfony/polyfill-php80 v1.25.0@4407588e0d3f1f52efb65fbe92babe41f37fe50c
- symfony/polyfill-php81 v1.25.0@5de4ba2d41b15f9bd0e19b2ab9674135813ec98f
- webmozart/assert 1.10.0@6964c76c7804814a842473e0c8fd15bab0f18e25
- webmozart/path-util 2.3.0@d939f7edc24c9a1bb9c0dee5cb05d8e859490725
Muqsit commented 2 years ago

Can you test whether Dev build #47 solves this issue?

MrBlasyMSK commented 2 years ago

It seems to be working properly (at least for the moment)