don't break bows, stupid

This commit is contained in:
Dylan K. Taylor 2017-09-26 12:20:40 +01:00
parent 5b191327bc
commit 13d50aff62

View File

@ -2473,8 +2473,7 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{
break; break;
case InventoryTransactionPacket::TYPE_RELEASE_ITEM: case InventoryTransactionPacket::TYPE_RELEASE_ITEM:
$this->setUsingItem(false); try{
$type = $packet->trData->actionType; $type = $packet->trData->actionType;
switch($type){ switch($type){
case InventoryTransactionPacket::RELEASE_ITEM_ACTION_RELEASE: case InventoryTransactionPacket::RELEASE_ITEM_ACTION_RELEASE:
@ -2487,7 +2486,6 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{
$this->inventory->sendContents($this); $this->inventory->sendContents($this);
} }
return true; return true;
case InventoryTransactionPacket::RELEASE_ITEM_ACTION_CONSUME: case InventoryTransactionPacket::RELEASE_ITEM_ACTION_CONSUME:
$slot = $this->inventory->getItemInHand(); $slot = $this->inventory->getItemInHand();
@ -2509,6 +2507,7 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{
$this->server->getPluginManager()->callEvent($ev = new PlayerItemConsumeEvent($this, $this->inventory->getItemInHand())); $this->server->getPluginManager()->callEvent($ev = new PlayerItemConsumeEvent($this, $this->inventory->getItemInHand()));
if($ev->isCancelled()){ if($ev->isCancelled()){
$this->inventory->sendContents($this); $this->inventory->sendContents($this);
return true; return true;
} }
@ -2534,6 +2533,9 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{
default: default:
break; break;
} }
}finally{
$this->setUsingItem(false);
}
break; break;
default: default:
$this->inventory->sendContents($this); $this->inventory->sendContents($this);