From 744631a1bd69af43335ef4629ff06414724dc3a5 Mon Sep 17 00:00:00 2001 From: Zoey76 <zoey_76@msn.com> Date: Tue, 4 Mar 2014 16:11:00 +0000 Subject: [PATCH] BETA: Fix for extractable items not being consumed. Patch by: Sdw Reviewed by: Nos, Zoey76, jurchiks Reported by: Conteur, CostyKiller, d!g0, snacks --- .../scripts/handlers/itemhandlers/ItemSkillsTemplate.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/itemhandlers/ItemSkillsTemplate.java b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/itemhandlers/ItemSkillsTemplate.java index 2cc07e6de2..356f135bff 100644 --- a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/itemhandlers/ItemSkillsTemplate.java +++ b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/itemhandlers/ItemSkillsTemplate.java @@ -25,6 +25,7 @@ import com.l2jserver.gameserver.model.actor.instance.L2PcInstance; import com.l2jserver.gameserver.model.entity.TvTEvent; import com.l2jserver.gameserver.model.holders.SkillHolder; import com.l2jserver.gameserver.model.items.instance.L2ItemInstance; +import com.l2jserver.gameserver.model.items.type.L2ActionType; import com.l2jserver.gameserver.model.skills.Skill; import com.l2jserver.gameserver.network.SystemMessageId; import com.l2jserver.gameserver.network.serverpackets.ActionFailed; @@ -102,9 +103,10 @@ public class ItemSkillsTemplate implements IItemHandler return false; } - if ((itemSkill.getItemConsumeId() == 0) && (itemSkill.getItemConsume() > 0) && (item.isPotion() || item.isElixir() || itemSkill.isSimultaneousCast())) + final boolean isCapsuleItem = item.getItem().getDefaultAction() == L2ActionType.capsule; + if (isCapsuleItem || ((itemSkill.getItemConsumeId() == 0) && (itemSkill.getItemConsume() > 0) && (item.isPotion() || item.isElixir() || itemSkill.isSimultaneousCast()))) { - if (!playable.destroyItem("Consume", item.getObjectId(), itemSkill.getItemConsume(), playable, false)) + if (!playable.destroyItem("Consume", item.getObjectId(), isCapsuleItem && (itemSkill.getItemConsume() == 0) ? 1 : itemSkill.getItemConsume(), playable, false)) { playable.sendPacket(SystemMessageId.NOT_ENOUGH_ITEMS); return false; -- GitLab