From d1ced0ffc65ec110651b3514b65207282562148d Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Wed, 27 Feb 2019 09:22:52 +0000 Subject: [PATCH 1/2] Player: fixed XP not dropping on death --- src/pocketmine/Player.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index 00b1884840..da686e9a81 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -3635,6 +3635,10 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ } } + //TODO: allow this number to be manipulated during PlayerDeathEvent + $this->level->dropExperience($this, $this->getXpDropAmount()); + $this->setXpAndProgress(0, 0); + if($ev->getDeathMessage() != ""){ $this->server->broadcast($ev->getDeathMessage(), Server::BROADCAST_CHANNEL_USERS); } From 20b4723728a1c8f9dc8c565bd10132a9d4a6c1a9 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Wed, 27 Feb 2019 09:26:56 +0000 Subject: [PATCH 2/2] Player: fixed held slot being out of sync after dying, closes #2788 it appears this premature optimization dates back to the days when PlayerHotbarPacket was not useless. --- src/pocketmine/Player.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index da686e9a81..0473571480 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -3627,7 +3627,7 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ } if($this->inventory !== null){ - $this->inventory->setHeldItemIndex(0, false); //This is already handled when sending contents, don't send it twice + $this->inventory->setHeldItemIndex(0); $this->inventory->clearAll(); } if($this->armorInventory !== null){