Jump to content

[Share]Enchant Armor Effect [Freya]


Annu

Recommended Posts

I dont know if this mod is shared,i think is NOT :D

This was implement by me and mvaios since 3580 Revision.

With a a few changes is ready for the last revisions:)

 

How it works. It checks if an armor set has a spesific enchant value. If so the an abnormal effect take place . In this case Vitality Effect. The armors set are included to this mod are Dynasty Sets only.If you need other sets feel free to add them . Good mod for High rate servers. You can change the enchant level at your needs. :D

 

 

 

### Eclipse Workspace Patch 1.0
#P Gameserver
Index: java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java	(revision 4519)
+++ java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java	(working copy)
@@ -59,6 +64,7 @@
import com.l2jserver.gameserver.communitybbs.Manager.RegionBBSManager;
import com.l2jserver.gameserver.datatables.AccessLevels;
import com.l2jserver.gameserver.datatables.AdminCommandAccessRights;
+import com.l2jserver.gameserver.datatables.ArmorSetsTable; //added Armor effect by Annu and mvaios
import com.l2jserver.gameserver.datatables.CharNameTable;
import com.l2jserver.gameserver.datatables.CharTemplateTable;
import com.l2jserver.gameserver.datatables.ClanTable;
@@ -379,6 +393,7 @@
		}
	}

+	private int abnormal = AbnormalEffect.VITALITY.getMask(); //added Armor effect by Annu and mvaios
	private L2GameClient _client;

	private String _accountName;
@@ -7458,7 +7482,169 @@
		checkPetInvItems();
	}
+	
+	// //added Armor effect by Annu and mvaios
+	public void checkForVitalityEffect()
+	{
+		
+		boolean getVitalityEffect = false;
+		try
+		{
+			if (
+					ArmorSetsTable.getInstance().getSet(9417).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9418).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9419).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9420).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9426).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9427).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(10126).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(10127).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9433).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9434).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9435).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9436).isEnchanted(6, this)
+				)
+			{
+				getVitalityEffect = true;
+			}
+		}
+		catch (Exception e)
+		{
+			_log.log(Level.WARNING,"Armor exception message: " + e.getMessage(),e);
+		
+		}
+		
+		if (getVitalityEffect)
+		{
+			startAbnormalEffect(abnormal);
+		}
+		else
+		{
+			stopAbnormalEffect(abnormal);
+		}
+	}
+		
+		// end added
+		
+	
+	/**
	 * Restore recipe book data for this L2PcInstance.
	 */
	private void restoreRecipeBook(boolean loadCommon)
Index: java/com/l2jserver/gameserver/model/L2ArmorSet.java
===================================================================
--- java/com/l2jserver/gameserver/model/L2ArmorSet.java	(revision 4519)
+++ java/com/l2jserver/gameserver/model/L2ArmorSet.java	(working copy)
@@ -195,4 +195,35 @@

		return true;
	}
+	
+		
+	//added Armor effect by Annu and mvaios
+	public boolean isEnchanted(int enchantLevel, L2PcInstance player)
+	{
+		// Player don't have full set
+		if (!containAll(player))
+			return false;
+		
+		Inventory inv = player.getInventory();
+		
+		L2ItemInstance chestItem = inv.getPaperdollItem(Inventory.PAPERDOLL_CHEST);
+		L2ItemInstance legsItem = inv.getPaperdollItem(Inventory.PAPERDOLL_LEGS);
+		L2ItemInstance headItem = inv.getPaperdollItem(Inventory.PAPERDOLL_HEAD);
+		L2ItemInstance glovesItem = inv.getPaperdollItem(Inventory.PAPERDOLL_GLOVES);
+		L2ItemInstance feetItem = inv.getPaperdollItem(Inventory.PAPERDOLL_FEET);
+	
+		if (chestItem == null || chestItem.getEnchantLevel() < enchantLevel)
+			return false;
+				if (_legs != 0 && (legsItem == null || legsItem.getEnchantLevel() < enchantLevel))
+					return false;
+				if (_gloves != 0 && (glovesItem == null || glovesItem.getEnchantLevel() < enchantLevel))
+					return false;
+				if (_head != 0 && (headItem == null || headItem.getEnchantLevel() < enchantLevel))
+					return false;
+				if (_feet != 0 && (feetItem == null || feetItem.getEnchantLevel() < enchantLevel))
+					return false;
+	
+			return true;
+		}
+		//end added
}
Index: java/com/l2jserver/gameserver/model/itemcontainer/Inventory.java
===================================================================
--- java/com/l2jserver/gameserver/model/itemcontainer/Inventory.java	(revision 4519)
+++ java/com/l2jserver/gameserver/model/itemcontainer/Inventory.java	(working copy)
@@ -537,6 +538,7 @@
								_log.warning("Inventory.ArmorSetListener: Incorrect skill: "+armorSet.getEnchant6skillId()+".");
						}
					}
+					player.checkForVitalityEffect();//added Armor effect by Annu and mvaios
				}
			}
			else if (armorSet.containShield(item.getItemId()))
@@ -615,6 +617,9 @@

			if (remove)
			{
+				////added Armor effect by Annu and mvaios
+				player.checkForVitalityEffect();
+				//added
				if (skills != null)
				{
					for (String skillInfo : skills)

 

 

Credits to me and mvaios.

Link to comment
Share on other sites

Really Good Share but need to be tested...!

 

Very smart from u...! Thank you...! seems like Metin ^^

 

 

anyway Thanks again and keep sharing shares like this ^^

 

 

Also edit where u had test thit and it works(l2j =? chronicle =? ) + gredits ^^

Link to comment
Share on other sites

Really Good Share but need to be tested...!

 

Very smart from u...! Thank you...! seems like Metin ^^

 

 

anyway Thanks again and keep sharing shares like this ^^

 

ps: 1 question : it will need al parts to be on a exact value enhance or it will work and with 1 parts of armor?

 

Also edit where u had test thit and it works(l2j =? chronicle =? ) + gredits ^^

 

No you do not need to add all parts. Only the chest id which can be found in database table armorsets.!!

This mod works in Freya Chronicle for l2j .It was added since we where using Final Gracia Chronicle. I just changed it to Freya.

Many of you seen thsi mod in some private server. The only problem is that those servers do not share. They only take things.SO do not try to post here anything that has to do with those servers.

 

 

 

It works 100%

Link to comment
Share on other sites

No you do not need to add all parts. Only the chest id which can be found in database table armorsets.!!

This mod works in Freya Chronicle for l2j .

Many of you seen thsi mod in some private server. The only problem is that those servers do not share. They only take things.SO do not try to post here anything that has to do with those servers.

 

Credits to me and mvaios.

 

 

 

It works 100%

 

 

Ok thank you so much i will give it a try ...!

 

""Better Edit credits on main Topic ^^ ""

 

Keep Sharing....

Link to comment
Share on other sites

  • 3 weeks later...

I changed the id's of items to Elegia did not work.

How to work in Set Elegia and not set Dynasty?????

 

Thanks!

change those:

+					ArmorSetsTable.getInstance().getSet(9417).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9418).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9419).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9420).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9426).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9427).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(10126).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(10127).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9433).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9434).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9435).isEnchanted(6, this)
+					|| ArmorSetsTable.getInstance().getSet(9436).isEnchanted(6, this)

Link to comment
Share on other sites

  • 2 months later...
  • 1 month later...
Guest
This topic is now closed to further replies.


×
×
  • Create New...