Jump to content

[Share]Noblesse with Armor.


Recommended Posts

Κάποιος το ζήτησε στο dev section. Βασικά αυτό που κάνει είναι να διατηρεί τα Buffs σου όταν ψοφάς άν φοράς τα κατάλληλα armor parts.

 

Index: java/com/l2jserver/gameserver/Custom/ArmorNoblesse.java
===================================================================
--- java/com/l2jserver/gameserver/Custom/ArmorNoblesse.java	(revision 0)
+++ java/com/l2jserver/gameserver/Custom/ArmorNoblesse.java	(revision 0)
@@ -0,0 +1,72 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by the Free Software
+ * Foundation, either version 3 of the License, or (at your option) any later
+ * version.
+ * 
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ * 
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.Custom;
+
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.itemcontainer.Inventory;
+import com.l2jserver.gameserver.model.itemcontainer.PcInventory;
+
+/**
+ * @author Issle
+ *
+ */
+public class ArmorNoblesse
+{
+	public static final int bodyId = 0;
+	public static final int pantsId = 0;
+	public static final int glovesId = 0;
+	public static final int bootsId = 0;
+	public static final int helmetId = 0;
+	
+	public static boolean hasArmorNoblesse(L2PcInstance activeChar)
+	{
+		PcInventory inventory = activeChar.getInventory();
+		
+		int _pantsId = inventory.getPaperdollItemId(Inventory.PAPERDOLL_LEGS);
+		int _bodyId = inventory.getPaperdollItemId(Inventory.PAPERDOLL_CHEST);
+		int _helmetId = inventory.getPaperdollItemId(Inventory.PAPERDOLL_HEAD);
+		int _glovesId = inventory.getPaperdollItemId(Inventory.PAPERDOLL_GLOVES);
+		int _bootsId = inventory.getPaperdollItemId(Inventory.PAPERDOLL_FEET);
+		
+		if(_pantsId != pantsId)
+			return false;
+		if(_glovesId != glovesId)
+			return false;
+		if(_bodyId != bodyId)
+			return false;
+		if(_helmetId != helmetId)
+			return false;
+		if(_bootsId != bootsId)
+			return false;
+		activeChar.sendMessage("You maintained your buffs cause of your special armor configuration.");
+		return true;
+	}
+	
+	private static void printParts(L2PcInstance activeChar, int part)
+	{
+		activeChar.sendMessage(String.valueOf(part));
+	}
+}
Index: java/com/l2jserver/gameserver/model/actor/L2Playable.java
===================================================================
--- java/com/l2jserver/gameserver/model/actor/L2Playable.java	(revision 4222)
+++ java/com/l2jserver/gameserver/model/actor/L2Playable.java	(working copy)
@@ -14,6 +14,7 @@
 */
package com.l2jserver.gameserver.model.actor;

+import com.l2jserver.gameserver.Custom.ArmorNoblesse;
import com.l2jserver.gameserver.ai.CtrlEvent;
import com.l2jserver.gameserver.model.L2Effect;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
@@ -136,6 +137,10 @@
			if (getCharmOfLuck()) //remove Lucky Charm if player have Nobless blessing buff 
				stopCharmOfLuck(null);
		}
+		else if(this instanceof L2PcInstance && ArmorNoblesse.hasArmorNoblesse((L2PcInstance)this))
+        {
+        	//do nothing.
+        }
		else
			stopAllEffectsExceptThoseThatLastThroughDeath();

 

Στα μηδενικά που έχει βάζεις τα ID από το Armor. Άν δεν υπάρχει armor (πχ όταν έχεις full-body , δεν έχεις pants ) βάζεις 0.

Link to comment
Share on other sites

PS: Δεν το τέσταρα και πολύ αλλά λίγο που δοκίμασα δουλεύει καλά.

Nαι σωστα το ειχε ζητησει καποιος, αλλα μπορουσες να το κανεις share και στο

[share] Lineage II Develop [L2J Server] και να του εδινες Link.

 

Link to comment
Share on other sites

Nαι σωστα το ειχε ζητησει καποιος, αλλα μπορουσες να το κανεις share και στο

[share] Lineage II Develop [L2J Server] και να του εδινες Link.

 

re file 3es oti ola s ta post einai idia? ama to deis exeis ola s ta post me auto to pragma :

alla3e to title sou se --> [share] Lineage II Develop

wrong section kai alles xilies 2 -beep- eleos re file (den exw tpt mazi sou alla se oti topic vlepo to idio grafeis -.-'')

 

stamata to epitelous

Link to comment
Share on other sites

re file 3es oti ola s ta post einai idia? ama to deis exeis ola s ta post me auto to pragma :

alla3e to title sou se --> [share] Lineage II Develop

wrong section kai alles xilies 2 -beep- eleos re file (den exw tpt mazi sou alla se oti topic vlepo to idio grafeis -.-'')

 

stamata to epitelous

Δεν μπορω να καταλαβω τι σε νοιαζει εσενα ειναι καποιο Stuff?

Ασε τα staff να κανουν την δουλεια τους και μην ανακατευεσται ολα. -.-"

ΕλεοΣ

Link to comment
Share on other sites

Κάποιος το ζήτησε στο dev section. Βασικά αυτό που κάνει είναι να διατηρεί τα Buffs σου όταν ψοφάς άν φοράς τα κατάλληλα armor parts.

 

Index: java/com/l2jserver/gameserver/Custom/ArmorNoblesse.java
===================================================================
--- java/com/l2jserver/gameserver/Custom/ArmorNoblesse.java	(revision 0)
+++ java/com/l2jserver/gameserver/Custom/ArmorNoblesse.java	(revision 0)
@@ -0,0 +1,72 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by the Free Software
+ * Foundation, either version 3 of the License, or (at your option) any later
+ * version.
+ * 
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ * 
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.Custom;
+
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.itemcontainer.Inventory;
+import com.l2jserver.gameserver.model.itemcontainer.PcInventory;
+
+/**
+ * @author Issle
+ *
+ */
+public class ArmorNoblesse
+{
+	public static final int bodyId = 0;
+	public static final int pantsId = 0;
+	public static final int glovesId = 0;
+	public static final int bootsId = 0;
+	public static final int helmetId = 0;
+	
+	public static boolean hasArmorNoblesse(L2PcInstance activeChar)
+	{
+		PcInventory inventory = activeChar.getInventory();
+		
+		int _pantsId = inventory.getPaperdollItemId(Inventory.PAPERDOLL_LEGS);
+		int _bodyId = inventory.getPaperdollItemId(Inventory.PAPERDOLL_CHEST);
+		int _helmetId = inventory.getPaperdollItemId(Inventory.PAPERDOLL_HEAD);
+		int _glovesId = inventory.getPaperdollItemId(Inventory.PAPERDOLL_GLOVES);
+		int _bootsId = inventory.getPaperdollItemId(Inventory.PAPERDOLL_FEET);
+		
+		if(_pantsId != pantsId)
+			return false;
+		if(_glovesId != glovesId)
+			return false;
+		if(_bodyId != bodyId)
+			return false;
+		if(_helmetId != helmetId)
+			return false;
+		if(_bootsId != bootsId)
+			return false;
+		activeChar.sendMessage("You maintained your buffs cause of your special armor configuration.");
+		return true;
+	}
+	
+	private static void printParts(L2PcInstance activeChar, int part)
+	{
+		activeChar.sendMessage(String.valueOf(part));
+	}
+}
Index: java/com/l2jserver/gameserver/model/actor/L2Playable.java
===================================================================
--- java/com/l2jserver/gameserver/model/actor/L2Playable.java	(revision 4222)
+++ java/com/l2jserver/gameserver/model/actor/L2Playable.java	(working copy)
@@ -14,6 +14,7 @@
  */
package com.l2jserver.gameserver.model.actor;

+import com.l2jserver.gameserver.Custom.ArmorNoblesse;
import com.l2jserver.gameserver.ai.CtrlEvent;
import com.l2jserver.gameserver.model.L2Effect;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
@@ -136,6 +137,10 @@
			if (getCharmOfLuck()) //remove Lucky Charm if player have Nobless blessing buff 
				stopCharmOfLuck(null);
		}
+		else if(this instanceof L2PcInstance && ArmorNoblesse.hasArmorNoblesse((L2PcInstance)this))
+        {
+        	//do nothing.
+        }
		else
			stopAllEffectsExceptThoseThatLastThroughDeath();

 

Στα μηδενικά που έχει βάζεις τα ID από το Armor. Άν δεν υπάρχει armor (πχ όταν έχεις full-body , δεν έχεις pants ) βάζεις 0.

se euxaristw poli re

dn to testara akoma epeidh eixa kanei format kai dn exw to c6 client

alla epeidh blepo oti to testares(ligo kai douleuei)

gj

Link to comment
Share on other sites

pos mporw na balw kialla set?(dld ta 3 set dynasty Light-Robe-Heavy?

 

Στα μηδενικά που έχει βάζεις τα ID από το Armor. Άν δεν υπάρχει armor (πχ όταν έχεις full-body , δεν έχεις pants ) βάζεις 0.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

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.




×
×
  • Create New...