From 765bd5ced7973e3144f34a8f18f317e7068cc470 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Tue, 6 Sep 2016 11:23:49 +0100 Subject: [PATCH] Inventory: Fix hotbar spaz --- src/pocketmine/Player.php | 8 +++----- src/pocketmine/inventory/PlayerInventory.php | 4 ++-- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index 5baac0aeb..11f775b79 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -1927,7 +1927,7 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade } }else{ if($packet->selectedSlot >= 0 and $packet->selectedSlot < 9){ - $this->inventory->setHeldItemIndex($packet->selectedSlot); + $this->inventory->setHeldItemIndex($packet->selectedSlot, false); $this->inventory->setHeldItemSlot($packet->slot); }else{ $this->inventory->sendContents($this); @@ -1938,12 +1938,12 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade $this->inventory->sendContents($this); break; }elseif($this->isCreative()){ - $this->inventory->setHeldItemIndex($packet->selectedSlot); + $this->inventory->setHeldItemIndex($packet->selectedSlot, false); $this->inventory->setItem($packet->selectedSlot, $item); $this->inventory->setHeldItemSlot($packet->selectedSlot); }else{ if($packet->selectedSlot >= 0 and $packet->selectedSlot < $this->inventory->getHotbarSize()){ - $this->inventory->setHeldItemIndex($packet->selectedSlot); + $this->inventory->setHeldItemIndex($packet->selectedSlot, false); $this->inventory->setHeldItemSlot($slot); }else{ $this->inventory->sendContents($this); @@ -1951,8 +1951,6 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade } } - $this->inventory->sendHeldItem($this->hasSpawned); - $this->setDataFlag(self::DATA_FLAGS, self::DATA_FLAG_ACTION, false); break; case ProtocolInfo::USE_ITEM_PACKET: diff --git a/src/pocketmine/inventory/PlayerInventory.php b/src/pocketmine/inventory/PlayerInventory.php index e788421c6..c0e888111 100644 --- a/src/pocketmine/inventory/PlayerInventory.php +++ b/src/pocketmine/inventory/PlayerInventory.php @@ -68,11 +68,11 @@ class PlayerInventory extends BaseInventory{ return $this->itemInHandIndex; } - public function setHeldItemIndex($index){ + public function setHeldItemIndex($index, $send = true){ if($index >= 0 and $index < $this->getHotbarSize()){ $this->itemInHandIndex = $index; - if($this->getHolder() instanceof Player){ + if($this->getHolder() instanceof Player and $send){ $this->sendHeldItem($this->getHolder()); }