diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java index be3884a451..ff8798caf5 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java @@ -167,25 +167,29 @@ public class AutoUseTaskManager implements Runnable if (Config.ENABLE_AUTO_PET_POTION && !isInPeaceZone) { final Pet pet = player.getPet(); - if ((pet != null) && (pet.getCurrentHpPercent() <= player.getAutoPlaySettings().getAutoPetPotionPercent())) + if ((pet != null) && !pet.isDead()) { - POTIONS: for (Integer itemId : player.getAutoUseSettings().getAutoPetPotionItems()) + final int percent = pet.getCurrentHpPercent(); + if ((percent < 100) && (percent <= player.getAutoPlaySettings().getAutoPetPotionPercent())) { - final Item item = player.getInventory().getItemByItemId(itemId.intValue()); - if (item == null) + POTIONS: for (Integer itemId : player.getAutoUseSettings().getAutoPetPotionItems()) { - player.getAutoUseSettings().getAutoPetPotionItems().remove(itemId); - continue POTIONS; - } - - final int reuseDelay = item.getReuseDelay(); - if ((reuseDelay <= 0) || (player.getItemRemainingReuseTime(item.getObjectId()) <= 0)) - { - final EtcItem etcItem = item.getEtcItem(); - final IItemHandler handler = ItemHandler.getInstance().getHandler(etcItem); - if ((handler != null) && handler.useItem(player, item, false) && (reuseDelay > 0)) + final Item item = player.getInventory().getItemByItemId(itemId.intValue()); + if (item == null) { - player.addTimeStampItem(item, reuseDelay); + player.getAutoUseSettings().getAutoPetPotionItems().remove(itemId); + continue POTIONS; + } + + final int reuseDelay = item.getReuseDelay(); + if ((reuseDelay <= 0) || (player.getItemRemainingReuseTime(item.getObjectId()) <= 0)) + { + final EtcItem etcItem = item.getEtcItem(); + final IItemHandler handler = ItemHandler.getInstance().getHandler(etcItem); + if ((handler != null) && handler.useItem(player, item, false) && (reuseDelay > 0)) + { + player.addTimeStampItem(item, reuseDelay); + } } } } diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java index be3884a451..ff8798caf5 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java @@ -167,25 +167,29 @@ public class AutoUseTaskManager implements Runnable if (Config.ENABLE_AUTO_PET_POTION && !isInPeaceZone) { final Pet pet = player.getPet(); - if ((pet != null) && (pet.getCurrentHpPercent() <= player.getAutoPlaySettings().getAutoPetPotionPercent())) + if ((pet != null) && !pet.isDead()) { - POTIONS: for (Integer itemId : player.getAutoUseSettings().getAutoPetPotionItems()) + final int percent = pet.getCurrentHpPercent(); + if ((percent < 100) && (percent <= player.getAutoPlaySettings().getAutoPetPotionPercent())) { - final Item item = player.getInventory().getItemByItemId(itemId.intValue()); - if (item == null) + POTIONS: for (Integer itemId : player.getAutoUseSettings().getAutoPetPotionItems()) { - player.getAutoUseSettings().getAutoPetPotionItems().remove(itemId); - continue POTIONS; - } - - final int reuseDelay = item.getReuseDelay(); - if ((reuseDelay <= 0) || (player.getItemRemainingReuseTime(item.getObjectId()) <= 0)) - { - final EtcItem etcItem = item.getEtcItem(); - final IItemHandler handler = ItemHandler.getInstance().getHandler(etcItem); - if ((handler != null) && handler.useItem(player, item, false) && (reuseDelay > 0)) + final Item item = player.getInventory().getItemByItemId(itemId.intValue()); + if (item == null) { - player.addTimeStampItem(item, reuseDelay); + player.getAutoUseSettings().getAutoPetPotionItems().remove(itemId); + continue POTIONS; + } + + final int reuseDelay = item.getReuseDelay(); + if ((reuseDelay <= 0) || (player.getItemRemainingReuseTime(item.getObjectId()) <= 0)) + { + final EtcItem etcItem = item.getEtcItem(); + final IItemHandler handler = ItemHandler.getInstance().getHandler(etcItem); + if ((handler != null) && handler.useItem(player, item, false) && (reuseDelay > 0)) + { + player.addTimeStampItem(item, reuseDelay); + } } } } diff --git a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java index be3884a451..ff8798caf5 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java @@ -167,25 +167,29 @@ public class AutoUseTaskManager implements Runnable if (Config.ENABLE_AUTO_PET_POTION && !isInPeaceZone) { final Pet pet = player.getPet(); - if ((pet != null) && (pet.getCurrentHpPercent() <= player.getAutoPlaySettings().getAutoPetPotionPercent())) + if ((pet != null) && !pet.isDead()) { - POTIONS: for (Integer itemId : player.getAutoUseSettings().getAutoPetPotionItems()) + final int percent = pet.getCurrentHpPercent(); + if ((percent < 100) && (percent <= player.getAutoPlaySettings().getAutoPetPotionPercent())) { - final Item item = player.getInventory().getItemByItemId(itemId.intValue()); - if (item == null) + POTIONS: for (Integer itemId : player.getAutoUseSettings().getAutoPetPotionItems()) { - player.getAutoUseSettings().getAutoPetPotionItems().remove(itemId); - continue POTIONS; - } - - final int reuseDelay = item.getReuseDelay(); - if ((reuseDelay <= 0) || (player.getItemRemainingReuseTime(item.getObjectId()) <= 0)) - { - final EtcItem etcItem = item.getEtcItem(); - final IItemHandler handler = ItemHandler.getInstance().getHandler(etcItem); - if ((handler != null) && handler.useItem(player, item, false) && (reuseDelay > 0)) + final Item item = player.getInventory().getItemByItemId(itemId.intValue()); + if (item == null) { - player.addTimeStampItem(item, reuseDelay); + player.getAutoUseSettings().getAutoPetPotionItems().remove(itemId); + continue POTIONS; + } + + final int reuseDelay = item.getReuseDelay(); + if ((reuseDelay <= 0) || (player.getItemRemainingReuseTime(item.getObjectId()) <= 0)) + { + final EtcItem etcItem = item.getEtcItem(); + final IItemHandler handler = ItemHandler.getInstance().getHandler(etcItem); + if ((handler != null) && handler.useItem(player, item, false) && (reuseDelay > 0)) + { + player.addTimeStampItem(item, reuseDelay); + } } } } diff --git a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java index be3884a451..ff8798caf5 100644 --- a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java +++ b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/taskmanager/AutoUseTaskManager.java @@ -167,25 +167,29 @@ public class AutoUseTaskManager implements Runnable if (Config.ENABLE_AUTO_PET_POTION && !isInPeaceZone) { final Pet pet = player.getPet(); - if ((pet != null) && (pet.getCurrentHpPercent() <= player.getAutoPlaySettings().getAutoPetPotionPercent())) + if ((pet != null) && !pet.isDead()) { - POTIONS: for (Integer itemId : player.getAutoUseSettings().getAutoPetPotionItems()) + final int percent = pet.getCurrentHpPercent(); + if ((percent < 100) && (percent <= player.getAutoPlaySettings().getAutoPetPotionPercent())) { - final Item item = player.getInventory().getItemByItemId(itemId.intValue()); - if (item == null) + POTIONS: for (Integer itemId : player.getAutoUseSettings().getAutoPetPotionItems()) { - player.getAutoUseSettings().getAutoPetPotionItems().remove(itemId); - continue POTIONS; - } - - final int reuseDelay = item.getReuseDelay(); - if ((reuseDelay <= 0) || (player.getItemRemainingReuseTime(item.getObjectId()) <= 0)) - { - final EtcItem etcItem = item.getEtcItem(); - final IItemHandler handler = ItemHandler.getInstance().getHandler(etcItem); - if ((handler != null) && handler.useItem(player, item, false) && (reuseDelay > 0)) + final Item item = player.getInventory().getItemByItemId(itemId.intValue()); + if (item == null) { - player.addTimeStampItem(item, reuseDelay); + player.getAutoUseSettings().getAutoPetPotionItems().remove(itemId); + continue POTIONS; + } + + final int reuseDelay = item.getReuseDelay(); + if ((reuseDelay <= 0) || (player.getItemRemainingReuseTime(item.getObjectId()) <= 0)) + { + final EtcItem etcItem = item.getEtcItem(); + final IItemHandler handler = ItemHandler.getInstance().getHandler(etcItem); + if ((handler != null) && handler.useItem(player, item, false) && (reuseDelay > 0)) + { + player.addTimeStampItem(item, reuseDelay); + } } } }