Jump to content

No item consumption


Recommended Posts

No item consumption for some stuff heres a list:

-arrows,bolts

-soulshot spiritshots(for pets too)

-char change potions(hair face etc)

-escape scrolls(for blessed no!)

-fish shots

-recovery scrolls

-res scrolls(for blessed no!)

-healing drug,mana drug,mana potion,greater healing potion,healing potion

 

from these items you need only 1!

 

credits to me.

 

Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java	(revision 144)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java	(working copy)
@@ -6332,7 +6332,7 @@
         {
             synchronized(arrows)
             {
-                arrows.changeCountWithoutTrace(-1, this, null);
+                arrows.changeCountWithoutTrace(0, this, null);
                 arrows.setLastChange(L2ItemInstance.MODIFIED);

                 // could do also without saving, but let's save approx 1 of 10
@@ -6343,8 +6343,6 @@
         }
         else
         {
-            // Destroy entire item and save to database
-            _inventory.destroyItem("Consume", arrows, this, null);
             
             getInventory().unEquipItemInSlot(Inventory.PAPERDOLL_LHAND);
             if (bolts) 
Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/BeastSoulShot.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/BeastSoulShot.java	(revision 121)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/BeastSoulShot.java	(working copy)
@@ -22,7 +22,6 @@
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PetInstance;
import net.sf.l2j.gameserver.network.SystemMessageId;
-import net.sf.l2j.gameserver.network.serverpackets.ExAutoSoulShot;
import net.sf.l2j.gameserver.network.serverpackets.MagicSkillUse;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;
import net.sf.l2j.gameserver.templates.item.L2Weapon;
@@ -78,7 +77,6 @@
			return;
		}

-		int itemId = 6645;
		int shotConsumption = 1;
		L2ItemInstance weaponInst = null;
		L2Weapon weaponItem = null;
@@ -126,24 +124,6 @@
			activePet.setChargedSoulShot(L2ItemInstance.CHARGED_SOULSHOT);
		}

-		// If the player doesn't have enough beast soulshot remaining, remove any auto soulshot task.
-		if (!activeOwner.destroyItemWithoutTrace("Consume", item.getObjectId(), shotConsumption, null, false))
-		{
-			if (activeOwner.getAutoSoulShot().containsKey(itemId))
-			{
-				activeOwner.removeAutoSoulShot(itemId);
-				activeOwner.sendPacket(new ExAutoSoulShot(itemId, 0));
-				
-				SystemMessage sm = new SystemMessage(SystemMessageId.AUTO_USE_OF_S1_CANCELLED);
-				sm.addString(item.getItem().getName());
-				activeOwner.sendPacket(sm);
-				return;
-			}
-			
-			activeOwner.sendPacket(new SystemMessage(SystemMessageId.NOT_ENOUGH_SOULSHOTS));
-			return;
-		}
-		
		// Pet uses the power of spirit.
		activeOwner.sendPacket(new SystemMessage(SystemMessageId.PET_USE_THE_POWER_OF_SPIRIT));

Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/CharChangePotions.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/CharChangePotions.java	(revision 117)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/CharChangePotions.java	(working copy)
@@ -112,9 +112,6 @@
		// Update the changed stat for the character in the DB.
		activeChar.store();

-		// Remove the item from inventory.
-		activeChar.destroyItem("Consume", item.getObjectId(), 1, null, false);
-		
		// Broadcast the changes to the char and all those nearby.
		UserInfo ui = new UserInfo(activeChar);
		activeChar.broadcastPacket(ui);
Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/SoulShots.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/SoulShots.java	(revision 117)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/SoulShots.java	(working copy)
@@ -19,10 +19,8 @@
import net.sf.l2j.gameserver.model.actor.L2Playable;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.network.SystemMessageId;
-import net.sf.l2j.gameserver.network.serverpackets.ExAutoSoulShot;
import net.sf.l2j.gameserver.network.serverpackets.MagicSkillUse;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;
-import net.sf.l2j.gameserver.skills.Stats;
import net.sf.l2j.gameserver.templates.item.L2Item;
import net.sf.l2j.gameserver.templates.item.L2Weapon;
import net.sf.l2j.gameserver.util.Broadcast;
@@ -84,26 +82,6 @@
			if (weaponInst.getChargedSoulshot() != L2ItemInstance.CHARGED_NONE)
				return;

-			// Consume Soul shots if player has enough of them
-			int saSSCount = (int) activeChar.getStat().calcStat(Stats.SOULSHOT_COUNT, 0, null, null);
-			int SSCount = saSSCount == 0 ? weaponItem.getSoulShotCount() : saSSCount;
-			
-			if (!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), SSCount, null, false))
-			{
-				if (activeChar.getAutoSoulShot().containsKey(itemId))
-				{
-					activeChar.removeAutoSoulShot(itemId);
-					activeChar.sendPacket(new ExAutoSoulShot(itemId, 0));
-					
-					SystemMessage sm = new SystemMessage(SystemMessageId.AUTO_USE_OF_S1_CANCELLED);
-					sm.addString(item.getItem().getName());
-					activeChar.sendPacket(sm);
-				}
-				else
-					activeChar.sendPacket(new SystemMessage(SystemMessageId.NOT_ENOUGH_SOULSHOTS));
-				return;
-			}
-			
			// Charge soul shot
			weaponInst.setChargedSoulshot(L2ItemInstance.CHARGED_SOULSHOT);
		}
Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/ScrollOfEscape.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/ScrollOfEscape.java	(revision 142)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/ScrollOfEscape.java	(working copy)
@@ -167,8 +167,11 @@
		int itemId = item.getItemId();
		int escapeSkill = (itemId == 1538 || itemId == 5858 || itemId == 5859 || itemId == 3958 || itemId == 10130) ? 2036 : 2013;

-		if (!activeChar.destroyItem("Consume", item.getObjectId(), 1, null, false))
-			return;
+		if (itemId == 1538)
+		{
+			if (!activeChar.destroyItem("Consume", item.getObjectId(), 1, null, false))
+				return;
+		}

		activeChar.disableAllSkills();

Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/SpiritShot.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/SpiritShot.java	(revision 117)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/SpiritShot.java	(working copy)
@@ -19,7 +19,6 @@
import net.sf.l2j.gameserver.model.actor.L2Playable;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.network.SystemMessageId;
-import net.sf.l2j.gameserver.network.serverpackets.ExAutoSoulShot;
import net.sf.l2j.gameserver.network.serverpackets.MagicSkillUse;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;
import net.sf.l2j.gameserver.templates.item.L2Item;
@@ -80,23 +79,6 @@
			return;
		}

-		// Consume Spirit shot if player has enough of them
-		if (!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(), null, false))
-		{
-			if (activeChar.getAutoSoulShot().containsKey(itemId))
-			{
-				activeChar.removeAutoSoulShot(itemId);
-				activeChar.sendPacket(new ExAutoSoulShot(itemId, 0));
-				
-				SystemMessage sm = new SystemMessage(SystemMessageId.AUTO_USE_OF_S1_CANCELLED);
-				sm.addString(item.getItem().getName());
-				activeChar.sendPacket(sm);
-			}
-			else
-				activeChar.sendPacket(new SystemMessage(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS));
-			return;
-		}
-		
		// Charge Spirit shot
		weaponInst.setChargedSpiritshot(L2ItemInstance.CHARGED_SPIRITSHOT);

Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/BlessedSpiritShot.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/BlessedSpiritShot.java	(revision 117)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/BlessedSpiritShot.java	(working copy)
@@ -19,7 +19,6 @@
import net.sf.l2j.gameserver.model.actor.L2Playable;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.network.SystemMessageId;
-import net.sf.l2j.gameserver.network.serverpackets.ExAutoSoulShot;
import net.sf.l2j.gameserver.network.serverpackets.MagicSkillUse;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;
import net.sf.l2j.gameserver.templates.item.L2Item;
@@ -90,23 +89,6 @@
			return;
		}

-		// Consume Blessed SpiritShot if player has enough of them
-		if (!activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(), null, false))
-		{
-			if (activeChar.getAutoSoulShot().containsKey(itemId))
-			{
-				activeChar.removeAutoSoulShot(itemId);
-				activeChar.sendPacket(new ExAutoSoulShot(itemId, 0));
-				
-				SystemMessage sm = new SystemMessage(SystemMessageId.AUTO_USE_OF_S1_CANCELLED);
-				sm.addString(item.getItem().getName());
-				activeChar.sendPacket(sm);
-			}
-			else
-				activeChar.sendPacket(new SystemMessage(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS));
-			return;
-		}
-		
		// Charge Blessed SpiritShot
		weaponInst.setChargedSpiritshot(L2ItemInstance.CHARGED_BLESSED_SPIRITSHOT);

Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/FishShots.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/FishShots.java	(revision 117)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/FishShots.java	(working copy)
@@ -85,7 +85,6 @@
		}

		weaponInst.setChargedFishshot(true);
-		activeChar.destroyItemWithoutTrace("Consume", item.getObjectId(), 1, null, false);
		L2Object oldTarget = activeChar.getTarget();
		activeChar.setTarget(activeChar);

Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/Scrolls.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/Scrolls.java	(revision 117)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/Scrolls.java	(working copy)
@@ -85,8 +85,6 @@

		if (itemId >= 8594 && itemId <= 8599) //Scrolls of recovery XML: 2286
		{
-			if (!playable.destroyItem("Consume", item.getObjectId(), 1, null, false))
-				return;
			activeChar.broadcastPacket(new MagicSkillUse(playable, playable, 2286, 1, 1, 0));
			activeChar.reduceDeathPenaltyBuffLevel();
			useScroll(activeChar, 2286, itemId - 8593);
Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/BeastSpiritShot.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/BeastSpiritShot.java	(revision 117)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/BeastSpiritShot.java	(working copy)
@@ -22,7 +22,6 @@
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PetInstance;
import net.sf.l2j.gameserver.network.SystemMessageId;
-import net.sf.l2j.gameserver.network.serverpackets.ExAutoSoulShot;
import net.sf.l2j.gameserver.network.serverpackets.MagicSkillUse;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;
import net.sf.l2j.gameserver.templates.item.L2Weapon;
@@ -135,23 +134,6 @@
				activePet.setChargedSpiritShot(L2ItemInstance.CHARGED_SPIRITSHOT);
		}

-		if (!activeOwner.destroyItemWithoutTrace("Consume", item.getObjectId(), shotConsumption, null, false))
-		{
-			if (activeOwner.getAutoSoulShot().containsKey(itemId))
-			{
-				activeOwner.removeAutoSoulShot(itemId);
-				activeOwner.sendPacket(new ExAutoSoulShot(itemId, 0));
-				
-				SystemMessage sm = new SystemMessage(SystemMessageId.AUTO_USE_OF_S1_CANCELLED);
-				sm.addString(item.getItem().getName());
-				activeOwner.sendPacket(sm);
-				return;
-			}
-			
-			activeOwner.sendPacket(new SystemMessage(SystemMessageId.NOT_ENOUGH_SPIRITSHOTS));
-			return;
-		}
-		
		// Pet uses the power of spirit.
		activeOwner.sendPacket(new SystemMessage(SystemMessageId.PET_USE_THE_POWER_OF_SPIRIT));

Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/ScrollOfResurrection.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/ScrollOfResurrection.java	(revision 117)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/ScrollOfResurrection.java	(working copy)
@@ -140,8 +140,6 @@

				if (condGood)
				{
-					if (!activeChar.destroyItem("Consume", item.getObjectId(), 1, null, false))
-						return;

					int skillId = 0;
					int skillLevel = 1;
@@ -153,6 +151,8 @@
							break; // Scroll of Resurrection
						case 3936:
							skillId = 2049;
+							if (!activeChar.destroyItem("Consume", item.getObjectId(), 1, null, false))
+								return;
							break; // Blessed Scroll of Resurrection
						case 3959:
							skillId = 2062;
Index: D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/Potions.java
===================================================================
--- D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/Potions.java	(revision 117)
+++ D:/workspace/L2_GameServer/java/net/sf/l2j/gameserver/handler/itemhandlers/Potions.java	(working copy)
@@ -128,20 +128,20 @@
			case 725: // healing_drug, xml: 2002
				if (!isEffectReplaceable(playable, L2EffectType.HEAL_OVER_TIME, itemId))
					return;
-				res = usePotion(playable, 2002, 1);
+				usePotion(playable, 2002, 1);
				break;
			case 726: // custom mana drug, xml: 9007
				if (Config.L2JMOD_ENABLE_MANA_POTIONS_SUPPORT)
-					res = usePotion(activeChar, 9007, 1);
+					usePotion(activeChar, 9007, 1);
				break;
			case 727: // _healing_potion, xml: 2032
				if (!isEffectReplaceable(playable, L2EffectType.HEAL_OVER_TIME, itemId))
					return;
-				res = usePotion(playable, 2032, 1);
+				usePotion(playable, 2032, 1);
				break;
			case 728: // custom mana potion, xml: 9008
				if (Config.L2JMOD_ENABLE_MANA_POTIONS_SUPPORT)
-					res = usePotion(activeChar, 9008, 1);
+					usePotion(activeChar, 9008, 1);
				break;
			case 733: // Endeavor Potion, xml: 2010
				res = usePotion(playable, 2010, 1);
@@ -175,7 +175,7 @@
			case 1539: // greater_healing_potion, xml: 2037
				if (!isEffectReplaceable(playable, L2EffectType.HEAL_OVER_TIME, itemId))
					return;
-				res = usePotion(playable, 2037, 1);
+				usePotion(playable, 2037, 1);
				break;
			case 1540: // quick_healing_potion, xml: 2038
				if (!isEffectReplaceable(playable, L2EffectType.HEAL_OVER_TIME, itemId))

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




  • Posts

    • U dont kbow what happened with dumanist I send him files he downloaded and then asked for refund, i got all proofs at whatsapp, why he never open a topic, fucking idiot u are 😆 There are no fake updates me and him made all fixes, we dont have to prove something.. especially when you told him that cache is wrong and this is why it crashes while you have half of the code unclosed connections in mail system.. as i said gtfo, pay your programmer to make your fixes! Cause for scripts changing stats you are more than good.. as i said.. bulgarian whore, lick everyone!  There are no fake updates me and him made all fixes, we dont have to prove something.. especially when you told him that cache is wrong and this is why it crashes while you have half of the code unclosed connections in mail system.. as i said gtfo, pay your programmer to make your fixes! Cause for scripts changing stats you are more than good.. as i said.. bulgarian whore, lick everyone!       Also the truth is i helped in many codes inside the pack! But the most percentage is zoumhs work! If he is the one making it or someone else its non of your bussiness he doesnt have profit from this! He is clever to make subscriptions that way he can find all issues , while u just ask 100 per fixes 😅🤣     If u are that great, why u lick trevorj and why back in the days begging gustavo to make you stuff!  Just enjoy your life and leave zoumhs alone! To do his hobby! You are just a toxic and jealous rat! All your "clients" speak with the best for you 🤣🤣🤣      
    • So since interlude chronicle when a monster attacks you , it auto targets the monster , i need to disable it , like on C1-C4 was.   Im using vanganth extender also have sources ,but have no idea wheare to take a look.    
    • I have a rebirth engine on my server and it works great, except after the first rebirth... When taking 2nd+++ Rebirth it does NOT give any rewards... If someone could PM me I would appreciate it, I dont want to post the code here until it is fixed...
    • You telling me that ZOUMHS fixing things in the source code xD, please don't try to be funny. When are you going to tell the truth? just fake updates 🙂   ps What happened to the deleted posts from me and the evidence of how much FAKE you are? Another person who thinks like me. Let's see who will be quicker to delete the posts.  I admit, i cant live without you 🙂 But please stop changing your nicknames because i no longer know who is who.      
    • Feels bad to see someone actually fixed stuff and you put rats into discord to learn the bugs! Gtfo rat! I saw your work and how u treated ur customers, at least he respect us and tries! Bulgarian whore
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock