mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-05-14 17:59:41 +00:00
Improved slot selection on creative mode, closes #2960
This commit is contained in:
parent
fb257c16f1
commit
923be2fffc
@ -1743,6 +1743,7 @@ class Player extends Human implements CommandSender, InventoryHolder, IPlayer{
|
|||||||
break;
|
break;
|
||||||
}elseif($this->isCreative()){
|
}elseif($this->isCreative()){
|
||||||
$this->inventory->setHeldItemIndex($packet->selectedSlot);
|
$this->inventory->setHeldItemIndex($packet->selectedSlot);
|
||||||
|
$this->inventory->setItem($slot, $item);
|
||||||
$this->inventory->setHeldItemSlot($slot);
|
$this->inventory->setHeldItemSlot($slot);
|
||||||
}else{
|
}else{
|
||||||
if($packet->selectedSlot >= 0 and $packet->selectedSlot < $this->inventory->getHotbarSize()){
|
if($packet->selectedSlot >= 0 and $packet->selectedSlot < $this->inventory->getHotbarSize()){
|
||||||
|
@ -108,13 +108,6 @@ class PlayerInventory extends BaseInventory{
|
|||||||
|
|
||||||
$itemIndex = $this->getHeldItemIndex();
|
$itemIndex = $this->getHeldItemIndex();
|
||||||
|
|
||||||
for($i = 0; $i < $this->getHotbarSize(); ++$i){
|
|
||||||
if($this->getHotbarSlotIndex($i) === $slot){
|
|
||||||
$itemIndex = $i;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if($this->getHolder() instanceof Player){
|
if($this->getHolder() instanceof Player){
|
||||||
Server::getInstance()->getPluginManager()->callEvent($ev = new PlayerItemHeldEvent($this->getHolder(), $item, $slot, $itemIndex));
|
Server::getInstance()->getPluginManager()->callEvent($ev = new PlayerItemHeldEvent($this->getHolder(), $item, $slot, $itemIndex));
|
||||||
if($ev->isCancelled()){
|
if($ev->isCancelled()){
|
||||||
@ -124,7 +117,6 @@ class PlayerInventory extends BaseInventory{
|
|||||||
}
|
}
|
||||||
|
|
||||||
$this->setHotbarSlotIndex($itemIndex, $slot);
|
$this->setHotbarSlotIndex($itemIndex, $slot);
|
||||||
$this->setHeldItemIndex($itemIndex);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user