diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index 667f72c97..6dd8dfdd9 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -1743,6 +1743,7 @@ class Player extends Human implements CommandSender, InventoryHolder, IPlayer{ break; }elseif($this->isCreative()){ $this->inventory->setHeldItemIndex($packet->selectedSlot); + $this->inventory->setItem($slot, $item); $this->inventory->setHeldItemSlot($slot); }else{ if($packet->selectedSlot >= 0 and $packet->selectedSlot < $this->inventory->getHotbarSize()){ diff --git a/src/pocketmine/inventory/PlayerInventory.php b/src/pocketmine/inventory/PlayerInventory.php index 7fb188f77..5dbe7406d 100644 --- a/src/pocketmine/inventory/PlayerInventory.php +++ b/src/pocketmine/inventory/PlayerInventory.php @@ -108,13 +108,6 @@ class PlayerInventory extends BaseInventory{ $itemIndex = $this->getHeldItemIndex(); - for($i = 0; $i < $this->getHotbarSize(); ++$i){ - if($this->getHotbarSlotIndex($i) === $slot){ - $itemIndex = $i; - break; - } - } - if($this->getHolder() instanceof Player){ Server::getInstance()->getPluginManager()->callEvent($ev = new PlayerItemHeldEvent($this->getHolder(), $item, $slot, $itemIndex)); if($ev->isCancelled()){ @@ -124,7 +117,6 @@ class PlayerInventory extends BaseInventory{ } $this->setHotbarSlotIndex($itemIndex, $slot); - $this->setHeldItemIndex($itemIndex); } }