Use the appropriate synchronization for held item rollbacks

This commit is contained in:
Dylan K. Taylor 2019-06-26 17:56:39 +01:00
parent f62d9cbb99
commit 9cedfeb2b2

View File

@ -286,7 +286,7 @@ class InGamePacketHandler extends PacketHandler{
return true; return true;
case UseItemTransactionData::ACTION_CLICK_AIR: case UseItemTransactionData::ACTION_CLICK_AIR:
if(!$this->player->useHeldItem()){ if(!$this->player->useHeldItem()){
$this->player->getInventory()->sendHeldItem($this->player); $this->session->getInvManager()->syncSlot($this->player->getInventory(), $this->player->getInventory()->getHeldItemIndex());
} }
return true; return true;
} }
@ -301,7 +301,7 @@ class InGamePacketHandler extends PacketHandler{
* @param int|null $face * @param int|null $face
*/ */
private function onFailedBlockAction(Vector3 $blockPos, ?int $face) : void{ private function onFailedBlockAction(Vector3 $blockPos, ?int $face) : void{
$this->player->getInventory()->sendHeldItem($this->player); $this->session->getInvManager()->syncSlot($this->player->getInventory(), $this->player->getInventory()->getHeldItemIndex());
if($blockPos->distanceSquared($this->player) < 10000){ if($blockPos->distanceSquared($this->player) < 10000){
$blocks = $blockPos->sidesArray(); $blocks = $blockPos->sidesArray();
if($face !== null){ if($face !== null){
@ -326,12 +326,12 @@ class InGamePacketHandler extends PacketHandler{
switch($data->getActionType()){ switch($data->getActionType()){
case UseItemOnEntityTransactionData::ACTION_INTERACT: case UseItemOnEntityTransactionData::ACTION_INTERACT:
if(!$this->player->interactEntity($target, $data->getClickPos())){ if(!$this->player->interactEntity($target, $data->getClickPos())){
$this->player->getInventory()->sendHeldItem($this->player); $this->session->getInvManager()->syncSlot($this->player->getInventory(), $this->player->getInventory()->getHeldItemIndex());
} }
return true; return true;
case UseItemOnEntityTransactionData::ACTION_ATTACK: case UseItemOnEntityTransactionData::ACTION_ATTACK:
if(!$this->player->attackEntity($target)){ if(!$this->player->attackEntity($target)){
$this->player->getInventory()->sendHeldItem($this->player); $this->session->getInvManager()->syncSlot($this->player->getInventory(), $this->player->getInventory()->getHeldItemIndex());
} }
return true; return true;
} }
@ -349,7 +349,7 @@ class InGamePacketHandler extends PacketHandler{
return true; return true;
case ReleaseItemTransactionData::ACTION_CONSUME: case ReleaseItemTransactionData::ACTION_CONSUME:
if(!$this->player->consumeHeldItem()){ if(!$this->player->consumeHeldItem()){
$this->player->getInventory()->sendHeldItem($this->player); $this->session->getInvManager()->syncSlot($this->player->getInventory(), $this->player->getInventory()->getHeldItemIndex());
} }
return true; return true;
} }