diff --git a/src/item/Armor.php b/src/item/Armor.php index 804763e656..2838982722 100644 --- a/src/item/Armor.php +++ b/src/item/Armor.php @@ -123,10 +123,13 @@ class Armor extends Durable{ public function onClickAir(Player $player, Vector3 $directionVector) : ItemUseResult{ $existing = $player->getArmorInventory()->getItem($this->getArmorSlot()); - if(!$existing->isNull()){ - return ItemUseResult::FAIL(); - } $player->getArmorInventory()->setItem($this->getArmorSlot(), $this->pop()); + if($this->getCount() === 0){ + $player->getInventory()->setItemInHand($existing); + }else{ //if the stack size was bigger than 1 (usually won't happen, but might be caused by plugins + $player->getInventory()->setItemInHand($this); + $player->getInventory()->addItem($existing); + } return ItemUseResult::SUCCESS(); }