Quantcast
Channel: L2JBrasil RSS
Viewing all articles
Browse latest Browse all 543

{aCis} Announce Hero Base Class

$
0
0

Um membro me pediu ajuda em um código e acabei desenvolvendo ele todo para ele e estou disponibilizando para todos, o que esse mod faz ? Anúncia o Hero que estiver logando no servidor só se a classe atual dele for a classe Base, e no anúncio também fala o nome da classe daquele player.

 

Quem puder mandar prints para complementar o tópico eu agradeço.

Index: config/players.properties
===================================================================
--- config/players.properties	(revisão 2)
+++ config/players.properties	(cópia de trabalho)
@@ -45,6 +45,11 @@
 # Death Penalty chance if killed by mob (in %), 20 by default
 DeathPenaltyChance = 20
 
+# Announce Hero Login only you stay in Base Class
+# Default : False
+# Author : Tayran.JavaDev
+AnnounceHeroLoginBaseClass = false
+
 #=============================================================
 #                      Inventory / Warehouse
 #=============================================================
Index: java/net/sf/l2j/Config.java
===================================================================
--- java/net/sf/l2j/Config.java	(revisão 2)
+++ java/net/sf/l2j/Config.java	(cópia de trabalho)
@@ -666,6 +666,12 @@
 	public static int CLIENT_PACKET_QUEUE_MAX_OVERFLOWS_PER_MIN = 1; // default 1
 	public static int CLIENT_PACKET_QUEUE_MAX_UNDERFLOWS_PER_MIN = 1; // default 1
 	public static int CLIENT_PACKET_QUEUE_MAX_UNKNOWN_PER_MIN = 5; // default 5
+
+	public static boolean ANNOUNCE_HERO_ONLY_BASECLASS;
 	
 	// --------------------------------------------------
 	
@@ -1080,6 +1086,7 @@
 	private static final void loadPlayers()
 	{
 		final ExProperties players = initProperties(PLAYERS_FILE);
+		ANNOUNCE_HERO_ONLY_BASECLASS = players.getProperty("AnnounceHeroLoginBaseClass", false);
 		STARTING_ADENA = players.getProperty("StartingAdena", 100);
 		EFFECT_CANCELING = players.getProperty("CancelLesserEffect", true);
 		HP_REGEN_MULTIPLIER = players.getProperty("HpRegenMultiplier", 1.);
Index: java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java
===================================================================
--- java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java	(revisão 2)
+++ java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java	(cópia de trabalho)
@@ -68,6 +68,7 @@
 import net.sf.l2j.gameserver.scripting.QuestState;
 import net.sf.l2j.gameserver.scripting.ScriptManager;
 import net.sf.l2j.gameserver.taskmanager.GameTimeTaskManager;
+import net.sf.l2j.gameserver.util.Broadcast;
 
 public class EnterWorld extends L2GameClientPacket
 {
@@ -232,6 +233,12 @@
 		if (activeChar.isAlikeDead())
 			activeChar.sendPacket(new Die(activeChar));
 		
+		if (activeChar.getActiveClass() == activeChar.getBaseClass() && activeChar.isHero() && Config.ANNOUNCE_HERO_ONLY_BASECLASS)
+		{
+			Broadcast.announceToOnlinePlayers("O Heroi " + activeChar.getName() + " da profissao " + returnClassName(activeChar.getBaseClass()) + " esta Online!");
+		}
+
+		
 		activeChar.updateEffectIcons();
 		activeChar.sendPacket(new EtcStatusUpdate(activeChar));
 		activeChar.sendSkillList();
@@ -335,6 +342,81 @@
 		activeChar.sendPacket(ActionFailed.STATIC_PACKET);
 	}
 	
+	/**
+	 * @author Tayran.JavaDev
+	 * @param classid for search Name
+	 * @return the Class Name
+	 */
+	public static String returnClassName(int classid)
+	{
+		switch (classid)
+		{
+			case 88:
+				return "Duelist";
+			case 89:
+				return "DreadNought";
+			case 90:
+				return "Phoenix Knight";
+			case 91:
+				return "Hell Knight";
+			case 92:
+				return "Sagittarius";
+			case 93:
+				return "Adventurer";
+			case 94:
+				return "Archmage";
+			case 95:
+				return "Soultaker";
+			case 96:
+				return "Arcana Lord";
+			case 97:
+				return "Cardinal";
+			case 98:
+				return "Hierophant";
+			case 99:
+				return "Eva Templar";
+			case 100:
+				return "Sword Muse";
+			case 101:
+				return "Wind Rider";
+			case 102:
+				return "Moonlight Sentinel";
+			case 103:
+				return "Mystic Muse";
+			case 104:
+				return "Elemental Master";
+			case 105:
+				return "Eva Saint";
+			case 106:
+				return "Shillien Templar";
+			case 107:
+				return "Spectral Dancer";
+			case 108:
+				return "Ghost Hunter";
+			case 109:
+				return "Ghost Sentinel";
+			case 110:
+				return "Storm Screamer";
+			case 111:
+				return "Spectral Master";
+			case 112:
+				return "Shillen Saint";
+			case 113:
+				return "Titan";
+			case 114:
+				return "Grand Khauatari";
+			case 115:
+				return "Dominator";
+			case 116:
+				return "Doomcryer";
+			case 117:
+				return "Fortune Seeker";
+			case 118:
+				return "Maestro";
+		}
+		return "";
+	}
+	
 	@Override
 	protected boolean triggersOnActionRequest()
 	{

Créditos : Tayran.JavaDev


Viewing all articles
Browse latest Browse all 543

Trending Articles