Skip to content

[Share]Enchant Armor Effect [Freya]

Featured Replies

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.

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 ^^

  • Author

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%

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....

wouw enchant armor? is for Effect? or enchat weapons color?

  • 3 weeks later...

Tested, working 100% ty :)

Its a good share bor,keep working and sharing useful things,gratz for this one.

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

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

 

Thanks!

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)

There should be a small config for this, for changing the enchant value easily. Its great but need some work to make it 100% usable...

@vampir ;I put the id's of armor here, but it did not work.

The truth is just the id's for the right breast?

Can you help me make when wear set Elegia, char is active aura hero?

  • 2 months later...

The server gives no error while starting, but when I placed the clothes, shows me the following in the console. . .

 

errorzj.jpg

 

Uploaded with ImageShack.us

  • 1 month later...

hm.... i dont understund it very much... can you upload a photo?

 

btw nice share.

Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.