From edce07cedaeaae8829b4387376278ceb697007c1 Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Sat, 16 Mar 2019 09:57:25 +0000 Subject: [PATCH] Fixed transfering items to pet. --- .../model/actor/instance/L2PetInstance.java | 8 +------- .../model/actor/instance/L2PetInstance.java | 8 +------- .../model/actor/instance/L2PetInstance.java | 8 +------- .../model/actor/instance/L2PetInstance.java | 8 +------- .../model/actor/instance/L2PcInstance.java | 17 ----------------- .../model/actor/instance/L2PetInstance.java | 16 ++++++---------- .../clientpackets/RequestGetItemFromPet.java | 8 +++++++- .../clientpackets/RequestGiveItemToPet.java | 8 +++++++- .../clientpackets/RequestPetGetItem.java | 1 - .../clientpackets/RequestPetUseItem.java | 1 + .../model/actor/instance/L2PcInstance.java | 17 ----------------- .../model/actor/instance/L2PetInstance.java | 16 ++++++---------- .../clientpackets/RequestGetItemFromPet.java | 8 +++++++- .../clientpackets/RequestGiveItemToPet.java | 8 +++++++- .../clientpackets/RequestPetGetItem.java | 1 - .../clientpackets/RequestPetUseItem.java | 1 + .../model/actor/instance/L2PcInstance.java | 17 ----------------- .../model/actor/instance/L2PetInstance.java | 16 ++++++---------- .../clientpackets/RequestGetItemFromPet.java | 8 +++++++- .../clientpackets/RequestGiveItemToPet.java | 8 +++++++- .../clientpackets/RequestPetGetItem.java | 1 - .../clientpackets/RequestPetUseItem.java | 1 + .../model/actor/instance/L2PetInstance.java | 8 +------- .../model/actor/instance/L2PetInstance.java | 8 +------- .../model/actor/instance/L2PcInstance.java | 17 ----------------- .../model/actor/instance/L2PetInstance.java | 16 ++++++---------- .../clientpackets/RequestGetItemFromPet.java | 8 +++++++- .../clientpackets/RequestGiveItemToPet.java | 8 +++++++- .../clientpackets/RequestPetGetItem.java | 1 - .../clientpackets/RequestPetUseItem.java | 1 + .../model/actor/instance/L2PcInstance.java | 17 ----------------- .../model/actor/instance/L2PetInstance.java | 16 ++++++---------- .../clientpackets/RequestGetItemFromPet.java | 8 +++++++- .../clientpackets/RequestGiveItemToPet.java | 8 +++++++- .../clientpackets/RequestPetGetItem.java | 1 - .../clientpackets/RequestPetUseItem.java | 1 + 36 files changed, 111 insertions(+), 192 deletions(-) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java index 2a22ce6fa1..f3e3b670d6 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java @@ -724,13 +724,7 @@ public class L2PetInstance extends L2Summon sendPacket(petIU); // Send target update packet - if (!newItem.isStackable()) - { - final InventoryUpdate iu = new InventoryUpdate(); - iu.addNewItem(newItem); - sendInventoryUpdate(iu); - } - else if ((playerOldItem != null) && newItem.isStackable()) + if ((playerOldItem != null) && newItem.isStackable()) { final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(newItem); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java index 2a22ce6fa1..f3e3b670d6 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java @@ -724,13 +724,7 @@ public class L2PetInstance extends L2Summon sendPacket(petIU); // Send target update packet - if (!newItem.isStackable()) - { - final InventoryUpdate iu = new InventoryUpdate(); - iu.addNewItem(newItem); - sendInventoryUpdate(iu); - } - else if ((playerOldItem != null) && newItem.isStackable()) + if ((playerOldItem != null) && newItem.isStackable()) { final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(newItem); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java index 2a22ce6fa1..f3e3b670d6 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java @@ -724,13 +724,7 @@ public class L2PetInstance extends L2Summon sendPacket(petIU); // Send target update packet - if (!newItem.isStackable()) - { - final InventoryUpdate iu = new InventoryUpdate(); - iu.addNewItem(newItem); - sendInventoryUpdate(iu); - } - else if ((playerOldItem != null) && newItem.isStackable()) + if ((playerOldItem != null) && newItem.isStackable()) { final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(newItem); diff --git a/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java b/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java index 2a22ce6fa1..f3e3b670d6 100644 --- a/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java +++ b/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java @@ -724,13 +724,7 @@ public class L2PetInstance extends L2Summon sendPacket(petIU); // Send target update packet - if (!newItem.isStackable()) - { - final InventoryUpdate iu = new InventoryUpdate(); - iu.addNewItem(newItem); - sendInventoryUpdate(iu); - } - else if ((playerOldItem != null) && newItem.isStackable()) + if ((playerOldItem != null) && newItem.isStackable()) { final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(newItem); diff --git a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java index 30285b4ca8..ee28b3551b 100644 --- a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java +++ b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java @@ -228,7 +228,6 @@ import com.l2jmobius.gameserver.model.itemcontainer.PcFreight; import com.l2jmobius.gameserver.model.itemcontainer.PcInventory; import com.l2jmobius.gameserver.model.itemcontainer.PcRefund; import com.l2jmobius.gameserver.model.itemcontainer.PcWarehouse; -import com.l2jmobius.gameserver.model.itemcontainer.PetInventory; import com.l2jmobius.gameserver.model.items.L2Armor; import com.l2jmobius.gameserver.model.items.L2EtcItem; import com.l2jmobius.gameserver.model.items.L2Henna; @@ -308,7 +307,6 @@ import com.l2jmobius.gameserver.network.serverpackets.NicknameChanged; import com.l2jmobius.gameserver.network.serverpackets.ObservationMode; import com.l2jmobius.gameserver.network.serverpackets.ObservationReturn; import com.l2jmobius.gameserver.network.serverpackets.PartySmallWindowUpdate; -import com.l2jmobius.gameserver.network.serverpackets.PetInventoryUpdate; import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListDelete; import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate; import com.l2jmobius.gameserver.network.serverpackets.PrivateStoreListBuy; @@ -3620,21 +3618,6 @@ public final class L2PcInstance extends L2Playable targetPlayer.sendItemList(); } } - else if (target instanceof PetInventory) - { - final PetInventoryUpdate petIU = new PetInventoryUpdate(); - - if (newItem.getCount() > count) - { - petIU.addModifiedItem(newItem); - } - else - { - petIU.addNewItem(newItem); - } - - ((PetInventory) target).getOwner().sendPacket(petIU); - } return newItem; } diff --git a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java index 3d678c28d7..9cd301f768 100644 --- a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java +++ b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java @@ -71,6 +71,7 @@ import com.l2jmobius.gameserver.network.serverpackets.ActionFailed; import com.l2jmobius.gameserver.network.serverpackets.ExChangeNpcState; import com.l2jmobius.gameserver.network.serverpackets.InventoryUpdate; import com.l2jmobius.gameserver.network.serverpackets.PetInventoryUpdate; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.network.serverpackets.StopMove; import com.l2jmobius.gameserver.network.serverpackets.SystemMessage; import com.l2jmobius.gameserver.taskmanager.DecayTaskManager; @@ -623,8 +624,10 @@ public class L2PetInstance extends L2Summon else { final L2ItemInstance item = _inventory.addItem("Pickup", target, getOwner(), this); - // sendPacket(new PetItemList(_inventory.getItems())); - sendPacket(new PetInventoryUpdate(item)); + if (item != null) + { + getOwner().sendPacket(new PetItemList(getInventory().getItems())); + } } } @@ -705,7 +708,6 @@ public class L2PetInstance extends L2Summon final L2ItemInstance oldItem = _inventory.getItemByObjectId(objectId); final L2ItemInstance playerOldItem = target.getItemByItemId(oldItem.getId()); final L2ItemInstance newItem = _inventory.transferItem(process, objectId, count, target, actor, reference); - if (newItem == null) { return null; @@ -724,13 +726,7 @@ public class L2PetInstance extends L2Summon sendPacket(petIU); // Send target update packet - if (!newItem.isStackable()) - { - final InventoryUpdate iu = new InventoryUpdate(); - iu.addNewItem(newItem); - sendInventoryUpdate(iu); - } - else if ((playerOldItem != null) && newItem.isStackable()) + if ((playerOldItem != null) && newItem.isStackable()) { final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(newItem); diff --git a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java index 0feb646e91..8636e571bb 100644 --- a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java +++ b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java @@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; import com.l2jmobius.gameserver.model.actor.instance.L2PetInstance; import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; import com.l2jmobius.gameserver.network.L2GameClient; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.util.Util; /** @@ -77,7 +78,12 @@ public final class RequestGetItemFromPet implements IClientIncomingPacket return; } - if (pet.transferItem("Transfer", _objectId, _amount, player.getInventory(), player, pet) == null) + final L2ItemInstance transferedItem = pet.transferItem("Transfer", _objectId, _amount, player.getInventory(), player, pet); + if (transferedItem != null) + { + player.sendPacket(new PetItemList(pet.getInventory().getItems())); + } + else { LOGGER.warning("Invalid item transfer request: " + pet.getName() + "(pet) --> " + player.getName()); } diff --git a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java index 186e2f91a4..128666a6e1 100644 --- a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java +++ b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java @@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2PetInstance; import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; import com.l2jmobius.gameserver.network.L2GameClient; import com.l2jmobius.gameserver.network.SystemMessageId; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.util.Util; /** @@ -117,7 +118,12 @@ public final class RequestGiveItemToPet implements IClientIncomingPacket return; } - if (player.transferItem("Transfer", _objectId, _amount, pet.getInventory(), pet) == null) + final L2ItemInstance transferedItem = player.transferItem("Transfer", _objectId, _amount, pet.getInventory(), pet); + if (transferedItem != null) + { + player.sendPacket(new PetItemList(pet.getInventory().getItems())); + } + else { LOGGER.warning("Invalid item transfer request: " + pet.getName() + "(pet) --> " + player.getName()); } diff --git a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java index 953e288aca..42953cbddb 100644 --- a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java +++ b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java @@ -79,5 +79,4 @@ public final class RequestPetGetItem implements IClientIncomingPacket pet.getAI().setIntention(CtrlIntention.AI_INTENTION_PICK_UP, item); } - } diff --git a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java index 57d27eec76..5d8aa20a60 100644 --- a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java +++ b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java @@ -130,6 +130,7 @@ public final class RequestPetUseItem implements IClientIncomingPacket { activeChar.addTimeStampItem(item, reuseDelay); } + activeChar.sendPacket(new PetItemList(pet.getInventory().getItems())); pet.updateAndBroadcastStatus(1); } } diff --git a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java index 57867ca690..300be193f3 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java +++ b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java @@ -228,7 +228,6 @@ import com.l2jmobius.gameserver.model.itemcontainer.PcFreight; import com.l2jmobius.gameserver.model.itemcontainer.PcInventory; import com.l2jmobius.gameserver.model.itemcontainer.PcRefund; import com.l2jmobius.gameserver.model.itemcontainer.PcWarehouse; -import com.l2jmobius.gameserver.model.itemcontainer.PetInventory; import com.l2jmobius.gameserver.model.items.L2Armor; import com.l2jmobius.gameserver.model.items.L2EtcItem; import com.l2jmobius.gameserver.model.items.L2Henna; @@ -308,7 +307,6 @@ import com.l2jmobius.gameserver.network.serverpackets.NicknameChanged; import com.l2jmobius.gameserver.network.serverpackets.ObservationMode; import com.l2jmobius.gameserver.network.serverpackets.ObservationReturn; import com.l2jmobius.gameserver.network.serverpackets.PartySmallWindowUpdate; -import com.l2jmobius.gameserver.network.serverpackets.PetInventoryUpdate; import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListDelete; import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate; import com.l2jmobius.gameserver.network.serverpackets.PrivateStoreListBuy; @@ -3620,21 +3618,6 @@ public final class L2PcInstance extends L2Playable targetPlayer.sendItemList(); } } - else if (target instanceof PetInventory) - { - final PetInventoryUpdate petIU = new PetInventoryUpdate(); - - if (newItem.getCount() > count) - { - petIU.addModifiedItem(newItem); - } - else - { - petIU.addNewItem(newItem); - } - - ((PetInventory) target).getOwner().sendPacket(petIU); - } return newItem; } diff --git a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java index 2a22ce6fa1..a85d0a3862 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java +++ b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java @@ -71,6 +71,7 @@ import com.l2jmobius.gameserver.network.serverpackets.ActionFailed; import com.l2jmobius.gameserver.network.serverpackets.ExChangeNpcState; import com.l2jmobius.gameserver.network.serverpackets.InventoryUpdate; import com.l2jmobius.gameserver.network.serverpackets.PetInventoryUpdate; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.network.serverpackets.StopMove; import com.l2jmobius.gameserver.network.serverpackets.SystemMessage; import com.l2jmobius.gameserver.taskmanager.DecayTaskManager; @@ -623,8 +624,10 @@ public class L2PetInstance extends L2Summon else { final L2ItemInstance item = _inventory.addItem("Pickup", target, getOwner(), this); - // sendPacket(new PetItemList(_inventory.getItems())); - sendPacket(new PetInventoryUpdate(item)); + if (item != null) + { + getOwner().sendPacket(new PetItemList(getInventory().getItems())); + } } } @@ -705,7 +708,6 @@ public class L2PetInstance extends L2Summon final L2ItemInstance oldItem = _inventory.getItemByObjectId(objectId); final L2ItemInstance playerOldItem = target.getItemByItemId(oldItem.getId()); final L2ItemInstance newItem = _inventory.transferItem(process, objectId, count, target, actor, reference); - if (newItem == null) { return null; @@ -724,13 +726,7 @@ public class L2PetInstance extends L2Summon sendPacket(petIU); // Send target update packet - if (!newItem.isStackable()) - { - final InventoryUpdate iu = new InventoryUpdate(); - iu.addNewItem(newItem); - sendInventoryUpdate(iu); - } - else if ((playerOldItem != null) && newItem.isStackable()) + if ((playerOldItem != null) && newItem.isStackable()) { final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(newItem); diff --git a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java index 0feb646e91..8636e571bb 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java +++ b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java @@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; import com.l2jmobius.gameserver.model.actor.instance.L2PetInstance; import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; import com.l2jmobius.gameserver.network.L2GameClient; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.util.Util; /** @@ -77,7 +78,12 @@ public final class RequestGetItemFromPet implements IClientIncomingPacket return; } - if (pet.transferItem("Transfer", _objectId, _amount, player.getInventory(), player, pet) == null) + final L2ItemInstance transferedItem = pet.transferItem("Transfer", _objectId, _amount, player.getInventory(), player, pet); + if (transferedItem != null) + { + player.sendPacket(new PetItemList(pet.getInventory().getItems())); + } + else { LOGGER.warning("Invalid item transfer request: " + pet.getName() + "(pet) --> " + player.getName()); } diff --git a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java index 186e2f91a4..128666a6e1 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java +++ b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java @@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2PetInstance; import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; import com.l2jmobius.gameserver.network.L2GameClient; import com.l2jmobius.gameserver.network.SystemMessageId; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.util.Util; /** @@ -117,7 +118,12 @@ public final class RequestGiveItemToPet implements IClientIncomingPacket return; } - if (player.transferItem("Transfer", _objectId, _amount, pet.getInventory(), pet) == null) + final L2ItemInstance transferedItem = player.transferItem("Transfer", _objectId, _amount, pet.getInventory(), pet); + if (transferedItem != null) + { + player.sendPacket(new PetItemList(pet.getInventory().getItems())); + } + else { LOGGER.warning("Invalid item transfer request: " + pet.getName() + "(pet) --> " + player.getName()); } diff --git a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java index 953e288aca..42953cbddb 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java +++ b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java @@ -79,5 +79,4 @@ public final class RequestPetGetItem implements IClientIncomingPacket pet.getAI().setIntention(CtrlIntention.AI_INTENTION_PICK_UP, item); } - } diff --git a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java index 57d27eec76..5d8aa20a60 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java +++ b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java @@ -130,6 +130,7 @@ public final class RequestPetUseItem implements IClientIncomingPacket { activeChar.addTimeStampItem(item, reuseDelay); } + activeChar.sendPacket(new PetItemList(pet.getInventory().getItems())); pet.updateAndBroadcastStatus(1); } } diff --git a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java index 57867ca690..300be193f3 100644 --- a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java +++ b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java @@ -228,7 +228,6 @@ import com.l2jmobius.gameserver.model.itemcontainer.PcFreight; import com.l2jmobius.gameserver.model.itemcontainer.PcInventory; import com.l2jmobius.gameserver.model.itemcontainer.PcRefund; import com.l2jmobius.gameserver.model.itemcontainer.PcWarehouse; -import com.l2jmobius.gameserver.model.itemcontainer.PetInventory; import com.l2jmobius.gameserver.model.items.L2Armor; import com.l2jmobius.gameserver.model.items.L2EtcItem; import com.l2jmobius.gameserver.model.items.L2Henna; @@ -308,7 +307,6 @@ import com.l2jmobius.gameserver.network.serverpackets.NicknameChanged; import com.l2jmobius.gameserver.network.serverpackets.ObservationMode; import com.l2jmobius.gameserver.network.serverpackets.ObservationReturn; import com.l2jmobius.gameserver.network.serverpackets.PartySmallWindowUpdate; -import com.l2jmobius.gameserver.network.serverpackets.PetInventoryUpdate; import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListDelete; import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate; import com.l2jmobius.gameserver.network.serverpackets.PrivateStoreListBuy; @@ -3620,21 +3618,6 @@ public final class L2PcInstance extends L2Playable targetPlayer.sendItemList(); } } - else if (target instanceof PetInventory) - { - final PetInventoryUpdate petIU = new PetInventoryUpdate(); - - if (newItem.getCount() > count) - { - petIU.addModifiedItem(newItem); - } - else - { - petIU.addNewItem(newItem); - } - - ((PetInventory) target).getOwner().sendPacket(petIU); - } return newItem; } diff --git a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java index 2a22ce6fa1..a85d0a3862 100644 --- a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java +++ b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java @@ -71,6 +71,7 @@ import com.l2jmobius.gameserver.network.serverpackets.ActionFailed; import com.l2jmobius.gameserver.network.serverpackets.ExChangeNpcState; import com.l2jmobius.gameserver.network.serverpackets.InventoryUpdate; import com.l2jmobius.gameserver.network.serverpackets.PetInventoryUpdate; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.network.serverpackets.StopMove; import com.l2jmobius.gameserver.network.serverpackets.SystemMessage; import com.l2jmobius.gameserver.taskmanager.DecayTaskManager; @@ -623,8 +624,10 @@ public class L2PetInstance extends L2Summon else { final L2ItemInstance item = _inventory.addItem("Pickup", target, getOwner(), this); - // sendPacket(new PetItemList(_inventory.getItems())); - sendPacket(new PetInventoryUpdate(item)); + if (item != null) + { + getOwner().sendPacket(new PetItemList(getInventory().getItems())); + } } } @@ -705,7 +708,6 @@ public class L2PetInstance extends L2Summon final L2ItemInstance oldItem = _inventory.getItemByObjectId(objectId); final L2ItemInstance playerOldItem = target.getItemByItemId(oldItem.getId()); final L2ItemInstance newItem = _inventory.transferItem(process, objectId, count, target, actor, reference); - if (newItem == null) { return null; @@ -724,13 +726,7 @@ public class L2PetInstance extends L2Summon sendPacket(petIU); // Send target update packet - if (!newItem.isStackable()) - { - final InventoryUpdate iu = new InventoryUpdate(); - iu.addNewItem(newItem); - sendInventoryUpdate(iu); - } - else if ((playerOldItem != null) && newItem.isStackable()) + if ((playerOldItem != null) && newItem.isStackable()) { final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(newItem); diff --git a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java index 0feb646e91..8636e571bb 100644 --- a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java +++ b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java @@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; import com.l2jmobius.gameserver.model.actor.instance.L2PetInstance; import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; import com.l2jmobius.gameserver.network.L2GameClient; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.util.Util; /** @@ -77,7 +78,12 @@ public final class RequestGetItemFromPet implements IClientIncomingPacket return; } - if (pet.transferItem("Transfer", _objectId, _amount, player.getInventory(), player, pet) == null) + final L2ItemInstance transferedItem = pet.transferItem("Transfer", _objectId, _amount, player.getInventory(), player, pet); + if (transferedItem != null) + { + player.sendPacket(new PetItemList(pet.getInventory().getItems())); + } + else { LOGGER.warning("Invalid item transfer request: " + pet.getName() + "(pet) --> " + player.getName()); } diff --git a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java index 186e2f91a4..128666a6e1 100644 --- a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java +++ b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java @@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2PetInstance; import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; import com.l2jmobius.gameserver.network.L2GameClient; import com.l2jmobius.gameserver.network.SystemMessageId; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.util.Util; /** @@ -117,7 +118,12 @@ public final class RequestGiveItemToPet implements IClientIncomingPacket return; } - if (player.transferItem("Transfer", _objectId, _amount, pet.getInventory(), pet) == null) + final L2ItemInstance transferedItem = player.transferItem("Transfer", _objectId, _amount, pet.getInventory(), pet); + if (transferedItem != null) + { + player.sendPacket(new PetItemList(pet.getInventory().getItems())); + } + else { LOGGER.warning("Invalid item transfer request: " + pet.getName() + "(pet) --> " + player.getName()); } diff --git a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java index 953e288aca..42953cbddb 100644 --- a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java +++ b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java @@ -79,5 +79,4 @@ public final class RequestPetGetItem implements IClientIncomingPacket pet.getAI().setIntention(CtrlIntention.AI_INTENTION_PICK_UP, item); } - } diff --git a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java index 57d27eec76..5d8aa20a60 100644 --- a/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java +++ b/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java @@ -130,6 +130,7 @@ public final class RequestPetUseItem implements IClientIncomingPacket { activeChar.addTimeStampItem(item, reuseDelay); } + activeChar.sendPacket(new PetItemList(pet.getInventory().getItems())); pet.updateAndBroadcastStatus(1); } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java index 2a22ce6fa1..f3e3b670d6 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java @@ -724,13 +724,7 @@ public class L2PetInstance extends L2Summon sendPacket(petIU); // Send target update packet - if (!newItem.isStackable()) - { - final InventoryUpdate iu = new InventoryUpdate(); - iu.addNewItem(newItem); - sendInventoryUpdate(iu); - } - else if ((playerOldItem != null) && newItem.isStackable()) + if ((playerOldItem != null) && newItem.isStackable()) { final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(newItem); diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java b/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java index 2a22ce6fa1..f3e3b670d6 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java @@ -724,13 +724,7 @@ public class L2PetInstance extends L2Summon sendPacket(petIU); // Send target update packet - if (!newItem.isStackable()) - { - final InventoryUpdate iu = new InventoryUpdate(); - iu.addNewItem(newItem); - sendInventoryUpdate(iu); - } - else if ((playerOldItem != null) && newItem.isStackable()) + if ((playerOldItem != null) && newItem.isStackable()) { final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(newItem); diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java index fe39cd4a94..e5678659ab 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java @@ -225,7 +225,6 @@ import com.l2jmobius.gameserver.model.itemcontainer.PcFreight; import com.l2jmobius.gameserver.model.itemcontainer.PcInventory; import com.l2jmobius.gameserver.model.itemcontainer.PcRefund; import com.l2jmobius.gameserver.model.itemcontainer.PcWarehouse; -import com.l2jmobius.gameserver.model.itemcontainer.PetInventory; import com.l2jmobius.gameserver.model.items.L2Armor; import com.l2jmobius.gameserver.model.items.L2EtcItem; import com.l2jmobius.gameserver.model.items.L2Henna; @@ -303,7 +302,6 @@ import com.l2jmobius.gameserver.network.serverpackets.NicknameChanged; import com.l2jmobius.gameserver.network.serverpackets.ObservationMode; import com.l2jmobius.gameserver.network.serverpackets.ObservationReturn; import com.l2jmobius.gameserver.network.serverpackets.PartySmallWindowUpdate; -import com.l2jmobius.gameserver.network.serverpackets.PetInventoryUpdate; import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListDelete; import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate; import com.l2jmobius.gameserver.network.serverpackets.PrivateStoreListBuy; @@ -3597,21 +3595,6 @@ public final class L2PcInstance extends L2Playable targetPlayer.sendItemList(); } } - else if (target instanceof PetInventory) - { - final PetInventoryUpdate petIU = new PetInventoryUpdate(); - - if (newItem.getCount() > count) - { - petIU.addModifiedItem(newItem); - } - else - { - petIU.addNewItem(newItem); - } - - ((PetInventory) target).getOwner().sendPacket(petIU); - } return newItem; } diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java index 2a22ce6fa1..a85d0a3862 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java @@ -71,6 +71,7 @@ import com.l2jmobius.gameserver.network.serverpackets.ActionFailed; import com.l2jmobius.gameserver.network.serverpackets.ExChangeNpcState; import com.l2jmobius.gameserver.network.serverpackets.InventoryUpdate; import com.l2jmobius.gameserver.network.serverpackets.PetInventoryUpdate; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.network.serverpackets.StopMove; import com.l2jmobius.gameserver.network.serverpackets.SystemMessage; import com.l2jmobius.gameserver.taskmanager.DecayTaskManager; @@ -623,8 +624,10 @@ public class L2PetInstance extends L2Summon else { final L2ItemInstance item = _inventory.addItem("Pickup", target, getOwner(), this); - // sendPacket(new PetItemList(_inventory.getItems())); - sendPacket(new PetInventoryUpdate(item)); + if (item != null) + { + getOwner().sendPacket(new PetItemList(getInventory().getItems())); + } } } @@ -705,7 +708,6 @@ public class L2PetInstance extends L2Summon final L2ItemInstance oldItem = _inventory.getItemByObjectId(objectId); final L2ItemInstance playerOldItem = target.getItemByItemId(oldItem.getId()); final L2ItemInstance newItem = _inventory.transferItem(process, objectId, count, target, actor, reference); - if (newItem == null) { return null; @@ -724,13 +726,7 @@ public class L2PetInstance extends L2Summon sendPacket(petIU); // Send target update packet - if (!newItem.isStackable()) - { - final InventoryUpdate iu = new InventoryUpdate(); - iu.addNewItem(newItem); - sendInventoryUpdate(iu); - } - else if ((playerOldItem != null) && newItem.isStackable()) + if ((playerOldItem != null) && newItem.isStackable()) { final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(newItem); diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java index 0feb646e91..8636e571bb 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java @@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; import com.l2jmobius.gameserver.model.actor.instance.L2PetInstance; import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; import com.l2jmobius.gameserver.network.L2GameClient; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.util.Util; /** @@ -77,7 +78,12 @@ public final class RequestGetItemFromPet implements IClientIncomingPacket return; } - if (pet.transferItem("Transfer", _objectId, _amount, player.getInventory(), player, pet) == null) + final L2ItemInstance transferedItem = pet.transferItem("Transfer", _objectId, _amount, player.getInventory(), player, pet); + if (transferedItem != null) + { + player.sendPacket(new PetItemList(pet.getInventory().getItems())); + } + else { LOGGER.warning("Invalid item transfer request: " + pet.getName() + "(pet) --> " + player.getName()); } diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java index 186e2f91a4..128666a6e1 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java @@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2PetInstance; import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; import com.l2jmobius.gameserver.network.L2GameClient; import com.l2jmobius.gameserver.network.SystemMessageId; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.util.Util; /** @@ -117,7 +118,12 @@ public final class RequestGiveItemToPet implements IClientIncomingPacket return; } - if (player.transferItem("Transfer", _objectId, _amount, pet.getInventory(), pet) == null) + final L2ItemInstance transferedItem = player.transferItem("Transfer", _objectId, _amount, pet.getInventory(), pet); + if (transferedItem != null) + { + player.sendPacket(new PetItemList(pet.getInventory().getItems())); + } + else { LOGGER.warning("Invalid item transfer request: " + pet.getName() + "(pet) --> " + player.getName()); } diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java index 953e288aca..42953cbddb 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java @@ -79,5 +79,4 @@ public final class RequestPetGetItem implements IClientIncomingPacket pet.getAI().setIntention(CtrlIntention.AI_INTENTION_PICK_UP, item); } - } diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java index 57d27eec76..5d8aa20a60 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java @@ -130,6 +130,7 @@ public final class RequestPetUseItem implements IClientIncomingPacket { activeChar.addTimeStampItem(item, reuseDelay); } + activeChar.sendPacket(new PetItemList(pet.getInventory().getItems())); pet.updateAndBroadcastStatus(1); } } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java index a90da3452b..94bd437959 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java @@ -225,7 +225,6 @@ import com.l2jmobius.gameserver.model.itemcontainer.PcFreight; import com.l2jmobius.gameserver.model.itemcontainer.PcInventory; import com.l2jmobius.gameserver.model.itemcontainer.PcRefund; import com.l2jmobius.gameserver.model.itemcontainer.PcWarehouse; -import com.l2jmobius.gameserver.model.itemcontainer.PetInventory; import com.l2jmobius.gameserver.model.items.L2Armor; import com.l2jmobius.gameserver.model.items.L2EtcItem; import com.l2jmobius.gameserver.model.items.L2Henna; @@ -303,7 +302,6 @@ import com.l2jmobius.gameserver.network.serverpackets.NicknameChanged; import com.l2jmobius.gameserver.network.serverpackets.ObservationMode; import com.l2jmobius.gameserver.network.serverpackets.ObservationReturn; import com.l2jmobius.gameserver.network.serverpackets.PartySmallWindowUpdate; -import com.l2jmobius.gameserver.network.serverpackets.PetInventoryUpdate; import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListDelete; import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate; import com.l2jmobius.gameserver.network.serverpackets.PrivateStoreListBuy; @@ -3597,21 +3595,6 @@ public final class L2PcInstance extends L2Playable targetPlayer.sendItemList(); } } - else if (target instanceof PetInventory) - { - final PetInventoryUpdate petIU = new PetInventoryUpdate(); - - if (newItem.getCount() > count) - { - petIU.addModifiedItem(newItem); - } - else - { - petIU.addNewItem(newItem); - } - - ((PetInventory) target).getOwner().sendPacket(petIU); - } return newItem; } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java index 2a22ce6fa1..a85d0a3862 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/instance/L2PetInstance.java @@ -71,6 +71,7 @@ import com.l2jmobius.gameserver.network.serverpackets.ActionFailed; import com.l2jmobius.gameserver.network.serverpackets.ExChangeNpcState; import com.l2jmobius.gameserver.network.serverpackets.InventoryUpdate; import com.l2jmobius.gameserver.network.serverpackets.PetInventoryUpdate; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.network.serverpackets.StopMove; import com.l2jmobius.gameserver.network.serverpackets.SystemMessage; import com.l2jmobius.gameserver.taskmanager.DecayTaskManager; @@ -623,8 +624,10 @@ public class L2PetInstance extends L2Summon else { final L2ItemInstance item = _inventory.addItem("Pickup", target, getOwner(), this); - // sendPacket(new PetItemList(_inventory.getItems())); - sendPacket(new PetInventoryUpdate(item)); + if (item != null) + { + getOwner().sendPacket(new PetItemList(getInventory().getItems())); + } } } @@ -705,7 +708,6 @@ public class L2PetInstance extends L2Summon final L2ItemInstance oldItem = _inventory.getItemByObjectId(objectId); final L2ItemInstance playerOldItem = target.getItemByItemId(oldItem.getId()); final L2ItemInstance newItem = _inventory.transferItem(process, objectId, count, target, actor, reference); - if (newItem == null) { return null; @@ -724,13 +726,7 @@ public class L2PetInstance extends L2Summon sendPacket(petIU); // Send target update packet - if (!newItem.isStackable()) - { - final InventoryUpdate iu = new InventoryUpdate(); - iu.addNewItem(newItem); - sendInventoryUpdate(iu); - } - else if ((playerOldItem != null) && newItem.isStackable()) + if ((playerOldItem != null) && newItem.isStackable()) { final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(newItem); diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java index 0feb646e91..8636e571bb 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestGetItemFromPet.java @@ -22,6 +22,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; import com.l2jmobius.gameserver.model.actor.instance.L2PetInstance; import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; import com.l2jmobius.gameserver.network.L2GameClient; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.util.Util; /** @@ -77,7 +78,12 @@ public final class RequestGetItemFromPet implements IClientIncomingPacket return; } - if (pet.transferItem("Transfer", _objectId, _amount, player.getInventory(), player, pet) == null) + final L2ItemInstance transferedItem = pet.transferItem("Transfer", _objectId, _amount, player.getInventory(), player, pet); + if (transferedItem != null) + { + player.sendPacket(new PetItemList(pet.getInventory().getItems())); + } + else { LOGGER.warning("Invalid item transfer request: " + pet.getName() + "(pet) --> " + player.getName()); } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java index 186e2f91a4..128666a6e1 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestGiveItemToPet.java @@ -24,6 +24,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2PetInstance; import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; import com.l2jmobius.gameserver.network.L2GameClient; import com.l2jmobius.gameserver.network.SystemMessageId; +import com.l2jmobius.gameserver.network.serverpackets.PetItemList; import com.l2jmobius.gameserver.util.Util; /** @@ -117,7 +118,12 @@ public final class RequestGiveItemToPet implements IClientIncomingPacket return; } - if (player.transferItem("Transfer", _objectId, _amount, pet.getInventory(), pet) == null) + final L2ItemInstance transferedItem = player.transferItem("Transfer", _objectId, _amount, pet.getInventory(), pet); + if (transferedItem != null) + { + player.sendPacket(new PetItemList(pet.getInventory().getItems())); + } + else { LOGGER.warning("Invalid item transfer request: " + pet.getName() + "(pet) --> " + player.getName()); } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java index 953e288aca..42953cbddb 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetGetItem.java @@ -79,5 +79,4 @@ public final class RequestPetGetItem implements IClientIncomingPacket pet.getAI().setIntention(CtrlIntention.AI_INTENTION_PICK_UP, item); } - } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java index 57d27eec76..5d8aa20a60 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/network/clientpackets/RequestPetUseItem.java @@ -130,6 +130,7 @@ public final class RequestPetUseItem implements IClientIncomingPacket { activeChar.addTimeStampItem(item, reuseDelay); } + activeChar.sendPacket(new PetItemList(pet.getInventory().getItems())); pet.updateAndBroadcastStatus(1); } }