Check if pet is dead or at full HP when using potions.

This commit is contained in:
MobiusDevelopment
2022-10-22 00:05:43 +00:00
parent 563e0cf320
commit 800c42fd4e
4 changed files with 76 additions and 60 deletions

View File

@@ -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);
}
}
}
}

View File

@@ -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);
}
}
}
}

View File

@@ -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);
}
}
}
}

View File

@@ -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);
}
}
}
}