From 8bcf1f4becac6d9f4c0e29804a0f807afed4b2f2 Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Tue, 26 Jul 2022 08:43:36 +0000 Subject: [PATCH] Addition of some pet item restrictions. --- .../clientpackets/pet/ExPetEquipItem.java | 21 +++++++++++++++++++ .../clientpackets/pet/ExPetEquipItem.java | 21 +++++++++++++++++++ .../clientpackets/pet/ExPetEquipItem.java | 21 +++++++++++++++++++ .../clientpackets/pet/ExPetEquipItem.java | 21 +++++++++++++++++++ 4 files changed, 84 insertions(+) diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java index 3570857ed1..1855b63cad 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java @@ -164,6 +164,27 @@ public class ExPetEquipItem implements IClientIncomingPacket } } + // Pets cannot use enchanted weapons. + if (item.isWeapon() && item.isEnchanted()) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + + // Pets cannot use time-limited items. + if (item.isTimeLimitedItem() || item.isShadowItem()) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + + // Pets cannot use Event items. + if ((item.getTemplate().getAdditionalName() != null) && item.getTemplate().getAdditionalName().toLowerCase().contains("event")) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + final Item oldItem = pet.getInventory().getPaperdollItemByItemId((int) item.getTemplate().getBodyPart()); if (oldItem != null) { diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java index 3570857ed1..1855b63cad 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java @@ -164,6 +164,27 @@ public class ExPetEquipItem implements IClientIncomingPacket } } + // Pets cannot use enchanted weapons. + if (item.isWeapon() && item.isEnchanted()) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + + // Pets cannot use time-limited items. + if (item.isTimeLimitedItem() || item.isShadowItem()) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + + // Pets cannot use Event items. + if ((item.getTemplate().getAdditionalName() != null) && item.getTemplate().getAdditionalName().toLowerCase().contains("event")) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + final Item oldItem = pet.getInventory().getPaperdollItemByItemId((int) item.getTemplate().getBodyPart()); if (oldItem != null) { diff --git a/L2J_Mobius_Essence_6.1_BattleChronicle/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java b/L2J_Mobius_Essence_6.1_BattleChronicle/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java index 3570857ed1..1855b63cad 100644 --- a/L2J_Mobius_Essence_6.1_BattleChronicle/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java +++ b/L2J_Mobius_Essence_6.1_BattleChronicle/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java @@ -164,6 +164,27 @@ public class ExPetEquipItem implements IClientIncomingPacket } } + // Pets cannot use enchanted weapons. + if (item.isWeapon() && item.isEnchanted()) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + + // Pets cannot use time-limited items. + if (item.isTimeLimitedItem() || item.isShadowItem()) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + + // Pets cannot use Event items. + if ((item.getTemplate().getAdditionalName() != null) && item.getTemplate().getAdditionalName().toLowerCase().contains("event")) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + final Item oldItem = pet.getInventory().getPaperdollItemByItemId((int) item.getTemplate().getBodyPart()); if (oldItem != null) { diff --git a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java index 3570857ed1..1855b63cad 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/clientpackets/pet/ExPetEquipItem.java @@ -164,6 +164,27 @@ public class ExPetEquipItem implements IClientIncomingPacket } } + // Pets cannot use enchanted weapons. + if (item.isWeapon() && item.isEnchanted()) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + + // Pets cannot use time-limited items. + if (item.isTimeLimitedItem() || item.isShadowItem()) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + + // Pets cannot use Event items. + if ((item.getTemplate().getAdditionalName() != null) && item.getTemplate().getAdditionalName().toLowerCase().contains("event")) + { + player.sendPacket(SystemMessageId.YOU_DO_NOT_MEET_THE_REQUIRED_CONDITION_TO_EQUIP_THAT_ITEM); + return; + } + final Item oldItem = pet.getInventory().getPaperdollItemByItemId((int) item.getTemplate().getBodyPart()); if (oldItem != null) {