Jump to content

[Share]PvP Color system


Recommended Posts

i dont understand anything pfff

Type I could not make the file. Class of error so you could have done it for the l2joneo do interlude or a tutorial on how to file. Class because ja tried by the command cmd javac and I could not

Link to comment
Share on other sites

That tutorial its for l2j...if you want it for anything else like emu, l2jfree or whatever else, go learn java and modify it...Not much to do :)

Link to comment
Share on other sites

  • 3 weeks later...
  • 3 weeks later...

how to enable this ?? help me pls man

 

 

Index: /java/config/l2jmods.properties
===================================================================
--- /java/config/l2jmods.properties	(revision 174)
+++ /java/config/l2jmods.properties	(working copy)
@@ -161,4 +161,62 @@
#----------------------------------
EnableWarehouseSortingClan = False
EnableWarehouseSortingPrivate = False
-EnableWarehouseSortingFreight = False
\ No newline at end of file
+EnableWarehouseSortingFreight = False
+
+# ---------------------------------------
+# Section: PvP Title Color Change System by Level
+# ---------------------------------------
+# Each Amount will change the name color to the values defined here.
+# Example: PvpAmmount1 = 500, when a character's PvP counter reaches 500, their name color will change
+# according to the ColorForAmount value.
+# Note: Colors Must Use RBG format
+EnablePvPColorSystem = false
+
+# Pvp Amount & Name color level 1.
+PvpAmount1 = 500
+ColorForAmount1 = CCFF00
+
+# Pvp Amount & Name color level 2.
+PvpAmount2 = 1000
+ColorForAmount2 = 00FF00
+
+# Pvp Amount & Name color level 3.
+PvpAmount3 = 1500
+ColorForAmount3 = 00FF00
+
+# Pvp Amount & Name color level 4.
+PvpAmount4 = 2500
+ColorForAmount4 = 00FF00
+
+# Pvp Amount & Name color level 5.
+PvpAmount5 = 5000
+ColorForAmount5 = 00FF00
+
+# ---------------------------------------
+# Section: PvP Nick Color System by Level
+# ---------------------------------------
+# Same as above, with the difference that the PK counter changes the title color.
+# Example:  PkAmmount1 = 500, when a character's PK counter reaches 500, their title color will change
+# according to the Title For Amount
+# WAN: Colors Must Use RBG format
+EnablePkColorSystem = false
+
+# Pk Amount & Title color level 1.
+PkAmount1 = 500
+TitleForAmount1 = 00FF00
+
+# Pk Amount & Title color level 2.
+PkAmount2 = 1000
+TitleForAmount2 = 00FF00
+
+# Pk Amount & Title color level 3.
+PkAmount3 = 1500
+TitleForAmount3 = 00FF00
+
+# Pk Amount & Title color level 4.
+PkAmount4 = 2500
+TitleForAmount4 = 00FF00
+
+# Pk Amount & Title color level 5.
+PkAmount5 = 5000
+TitleForAmount5 = 00FF00
\ No newline at end of file
Index: /java/net/sf/l2j/Config.java
===================================================================
--- /java/net/sf/l2j/Config.java	(revision 174)
+++ /java/net/sf/l2j/Config.java	(working copy)
@@ -544,6 +546,28 @@
     public static boolean	L2JMOD_ENABLE_WAREHOUSESORTING_CLAN;
     public static boolean	L2JMOD_ENABLE_WAREHOUSESORTING_PRIVATE;
     public static boolean	L2JMOD_ENABLE_WAREHOUSESORTING_FREIGHT;
+	public static boolean		PVP_COLOR_SYSTEM_ENABLED;
+	public static int			PVP_AMOUNT1;
+	public static int			PVP_AMOUNT2;
+	public static int			PVP_AMOUNT3;
+	public static int			PVP_AMOUNT4;
+	public static int			PVP_AMOUNT5;
+	public static int			NAME_COLOR_FOR_PVP_AMOUNT1;
+	public static int			NAME_COLOR_FOR_PVP_AMOUNT2;
+	public static int			NAME_COLOR_FOR_PVP_AMOUNT3;
+	public static int			NAME_COLOR_FOR_PVP_AMOUNT4;
+	public static int			NAME_COLOR_FOR_PVP_AMOUNT5;
+	public static boolean		PK_COLOR_SYSTEM_ENABLED;
+	public static int			PK_AMOUNT1;
+	public static int			PK_AMOUNT2;
+	public static int			PK_AMOUNT3;
+	public static int			PK_AMOUNT4;
+	public static int			PK_AMOUNT5;
+	public static int			TITLE_COLOR_FOR_PK_AMOUNT1;
+	public static int			TITLE_COLOR_FOR_PK_AMOUNT2;
+	public static int			TITLE_COLOR_FOR_PK_AMOUNT3;
+	public static int			TITLE_COLOR_FOR_PK_AMOUNT4;
+	public static int			TITLE_COLOR_FOR_PK_AMOUNT5;
     
     /** ************************************************** **/
	/** L2JMods Settings -End                              **/
@@ -1654,6 +1678,34 @@
                 L2JMOD_ENABLE_WAREHOUSESORTING_CLAN     = Boolean.valueOf(L2JModSettings.getProperty("EnableWarehouseSortingClan", "False"));
                 L2JMOD_ENABLE_WAREHOUSESORTING_PRIVATE  = Boolean.valueOf(L2JModSettings.getProperty("EnableWarehouseSortingPrivate", "False"));
                 L2JMOD_ENABLE_WAREHOUSESORTING_FREIGHT  = Boolean.valueOf(L2JModSettings.getProperty("EnableWarehouseSortingFreight", "False"));
+                
+    			// PVP Name Color System configs - Start
+    			PVP_COLOR_SYSTEM_ENABLED = Boolean.parseBoolean(L2JModSettings.getProperty("EnablePvPColorSystem", "false"));
+    			PVP_AMOUNT1 = Integer.parseInt(L2JModSettings.getProperty("PvpAmount1", "500"));
+    			PVP_AMOUNT2 = Integer.parseInt(L2JModSettings.getProperty("PvpAmount2", "1000"));
+    			PVP_AMOUNT3 = Integer.parseInt(L2JModSettings.getProperty("PvpAmount3", "1500"));
+    			PVP_AMOUNT4 = Integer.parseInt(L2JModSettings.getProperty("PvpAmount4", "2500"));
+    			PVP_AMOUNT5 = Integer.parseInt(L2JModSettings.getProperty("PvpAmount5", "5000"));
+    			NAME_COLOR_FOR_PVP_AMOUNT1 = Integer.decode("0x" + L2JModSettings.getProperty("ColorForAmount1", "00FF00"));
+    			NAME_COLOR_FOR_PVP_AMOUNT2 = Integer.decode("0x" + L2JModSettings.getProperty("ColorForAmount2", "00FF00"));
+    			NAME_COLOR_FOR_PVP_AMOUNT3 = Integer.decode("0x" + L2JModSettings.getProperty("ColorForAmount3", "00FF00"));
+    			NAME_COLOR_FOR_PVP_AMOUNT4 = Integer.decode("0x" + L2JModSettings.getProperty("ColorForAmount4", "00FF00"));
+    			NAME_COLOR_FOR_PVP_AMOUNT5 = Integer.decode("0x" + L2JModSettings.getProperty("ColorForAmount4", "00FF00"));
+    			// PvP Name Color System configs - End
+    			
+    			// PK Title Color System configs - Start
+    			PK_COLOR_SYSTEM_ENABLED = Boolean.parseBoolean(L2JModSettings.getProperty("EnablePkColorSystem", "false"));
+    			PK_AMOUNT1 = Integer.parseInt(L2JModSettings.getProperty("PkAmount1", "500"));
+    			PK_AMOUNT2 = Integer.parseInt(L2JModSettings.getProperty("PkAmount2", "1000"));
+    			PK_AMOUNT3 = Integer.parseInt(L2JModSettings.getProperty("PkAmount3", "1500"));
+    			PK_AMOUNT4 = Integer.parseInt(L2JModSettings.getProperty("PkAmount4", "2500"));
+    			PK_AMOUNT5 = Integer.parseInt(L2JModSettings.getProperty("PkAmount5", "5000"));
+    			TITLE_COLOR_FOR_PK_AMOUNT1 = Integer.decode("0x" + L2JModSettings.getProperty("TitleForAmount1", "00FF00"));
+    			TITLE_COLOR_FOR_PK_AMOUNT2 = Integer.decode("0x" + L2JModSettings.getProperty("TitleForAmount2", "00FF00"));
+    			TITLE_COLOR_FOR_PK_AMOUNT3 = Integer.decode("0x" + L2JModSettings.getProperty("TitleForAmount3", "00FF00"));
+    			TITLE_COLOR_FOR_PK_AMOUNT4 = Integer.decode("0x" + L2JModSettings.getProperty("TitleForAmount4", "00FF00"));
+    			TITLE_COLOR_FOR_PK_AMOUNT5 = Integer.decode("0x" + L2JModSettings.getProperty("TitleForAmount5", "00FF00"));
+    			//PK Title Color System configs - End

                 if (TVT_EVENT_PARTICIPATION_NPC_ID == 0)
                 {
Index: /java/net/sf/l2j/gameserver/clientpackets/EnterWorld.java
===================================================================
--- /java/net/sf/l2j/gameserver/clientpackets/EnterWorld.java	(revision 174)
+++ /java/net/sf/l2j/gameserver/clientpackets/EnterWorld.java	(working copy)
@@ -177,6 +177,16 @@
         Quest.playerEnter(activeChar);
         activeChar.sendPacket(new QuestList());
         loadTutorial(activeChar);
+
+        // =================================================================================
+        // Color System checks - Start =====================================================
+        // Check if the custom PvP and PK color systems are enabled and if so ==============
+        // check the character's counters and apply any color changes that must be done. ===
+        if (activeChar.getPvpKills()>=(Config.PVP_AMOUNT1) && (Config.PVP_COLOR_SYSTEM_ENABLED)) activeChar.updatePvPColor(activeChar.getPvpKills());
+        if (activeChar.getPkKills()>=(Config.PK_AMOUNT1) && (Config.PK_COLOR_SYSTEM_ENABLED)) activeChar.updatePkColor(activeChar.getPkKills());
+        // Color System checks - End =======================================================
+        // =================================================================================
+        
         
         if (Config.PLAYER_SPAWN_PROTECTION > 0)
             activeChar.setProtection(true);
@@ -3660,7 +3661,75 @@
         	DuelManager.getInstance().broadcastToOppositTeam(this, update);
         }
	}
-    
+
+	// Custom PVP Color System - Start
+	public void updatePvPColor(int pvpKillAmount)
+	{
+		if (Config.PVP_COLOR_SYSTEM_ENABLED)
+		{
+			//Check if the character has GM access and if so, let them be.
+			if (isGM())
+				return;
+			{
+				if ((pvpKillAmount >= (Config.PVP_AMOUNT1)) && (pvpKillAmount <= (Config.PVP_AMOUNT2)))
+				{
+					getAppearance().setNameColor(Config.NAME_COLOR_FOR_PVP_AMOUNT1);
+				}
+				else if ((pvpKillAmount >= (Config.PVP_AMOUNT2)) && (pvpKillAmount <= (Config.PVP_AMOUNT3)))
+				{
+					getAppearance().setNameColor(Config.NAME_COLOR_FOR_PVP_AMOUNT2);
+				}
+				else if ((pvpKillAmount >= (Config.PVP_AMOUNT3)) && (pvpKillAmount <= (Config.PVP_AMOUNT4)))
+				{
+					getAppearance().setNameColor(Config.NAME_COLOR_FOR_PVP_AMOUNT3);
+				}
+				else if ((pvpKillAmount >= (Config.PVP_AMOUNT4)) && (pvpKillAmount <= (Config.PVP_AMOUNT5)))
+				{
+					getAppearance().setNameColor(Config.NAME_COLOR_FOR_PVP_AMOUNT4);
+				}
+				else if (pvpKillAmount >= (Config.PVP_AMOUNT5))
+				{
+					getAppearance().setNameColor(Config.NAME_COLOR_FOR_PVP_AMOUNT5);
+				}
+			}
+		}
+	}
+	//Custom PVP Color System - End
+	
+	// Custom Pk Color System - Start
+	public void updatePkColor(int pkKillAmount)
+	{
+		if (Config.PK_COLOR_SYSTEM_ENABLED)
+		{
+			//Check if the character has GM access and if so, let them be, like above.
+			if (isGM())
+				return;
+			{
+				if ((pkKillAmount >= (Config.PK_AMOUNT1)) && (pkKillAmount <= (Config.PVP_AMOUNT2)))
+				{
+					getAppearance().setTitleColor(Config.TITLE_COLOR_FOR_PK_AMOUNT1);
+				}
+				else if ((pkKillAmount >= (Config.PK_AMOUNT2)) && (pkKillAmount <= (Config.PVP_AMOUNT3)))
+				{
+					getAppearance().setTitleColor(Config.TITLE_COLOR_FOR_PK_AMOUNT2);
+				}
+				else if ((pkKillAmount >= (Config.PK_AMOUNT3)) && (pkKillAmount <= (Config.PVP_AMOUNT4)))
+				{
+					getAppearance().setTitleColor(Config.TITLE_COLOR_FOR_PK_AMOUNT3);
+				}
+				else if ((pkKillAmount >= (Config.PK_AMOUNT4)) && (pkKillAmount <= (Config.PVP_AMOUNT5)))
+				{
+					getAppearance().setTitleColor(Config.TITLE_COLOR_FOR_PK_AMOUNT4);
+				}
+				else if (pkKillAmount >= (Config.PK_AMOUNT5))
+				{
+					getAppearance().setTitleColor(Config.TITLE_COLOR_FOR_PK_AMOUNT5);
+				}
+			}
+		}
+	}
+	//Custom Pk Color System - End
+	
     @Override
     public final void updateEffectIcons(boolean partyOnly)
     {
@@ -4996,6 +5065,10 @@
         // Add karma to attacker and increase its PK counter
         setPvpKills(getPvpKills() + 1);

+      //Update the character's name color if they reached any of the 5 PvP levels.
+        updatePvPColor(getPvpKills());
+        broadcastUserInfo();
+
         // Send a Server->Client UserInfo packet to attacker with its Karma and PK Counter
         sendPacket(new UserInfo(this));
     }
@@ -5047,6 +5120,10 @@
         setPkKills(getPkKills() + 1);
         setKarma(getKarma() + newKarma);

+        //Update the character's title color if they reached any of the 5 PK levels.
+        updatePkColor(getPkKills());
+        broadcastUserInfo();
+        
         // Send a Server->Client UserInfo packet to attacker with its Karma and PK Counter
         sendPacket(new UserInfo(this));
     }

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.




  • Posts

    • thats 26_21... i have it and 26_19... only 26_20 missing is the town arcan part
    • his link still working here , or are they different ?
    • Hello everyone,   We're shifting our focus away from implementing as much as possible from the Essence gameplay. Instead, the server will now be Interlude, but using the Essence client.   This should be good news for everyone.   The Beta phase will most likely take place in November, with the grand opening to follow shortly after.   Cheers!
    • We remind you that the opening will take place today, on September 28 at: 19:00 (UTC+3) - server time Check current server time(UTC +3) On 17:00 (UTC +3) We allow you login to create character! Dear friends, this topic important! So please take time to read it. First we want to thank all players who took part in the Open Beta testing, was good activity and nice Olympiad Event yesterday, we all get a lot of fun  Thanks to all who conducted tests with us and prepared this game world! You are amazing!  On 17:00 (UTC +3) We allow you to login for create character! To restrict your name and transfer ToDs/Season Pack to your character. Make it before start! On start, we can have problems with WEB! Everything you need to start on the server: It is IMPORTANT to prepare everything for starting the game RIGHT NOW, do not postpone for later, during the opening there may be problems with the web part of the project, and you simply can not register. - Registration and files Download archive unzip it, run launcher, choose SEASON x25 server and press FULL CHECK What you need to know at the start: Registration for 7 seals from Monday, September 30, full cycle 1 week. First Mammons on Friday October 4 All Epic Raid Bosses dead on start. First epic QA will appear on Monday, next day Core + Zaken + QA and so on by schedule All other RBs alive on server start (including Sub and Nobl RB) - Full RoadMap   About possible attacks on server start. We have prepared as good as we can. We will control the start of the server together with you. Want to ask you, in the case of a problem, don't panic, panic is the worst possible thing that could be, even worse than any attack. We have enough specialists to solve any problems, all that will need from you is patience and trust. Wish you all a smooth start and months of enjoyable play in new Season Interlude x25! Have a fun!
  • Topics

×
×
  • Create New...