Você não é registrado, por favor registre-se para ter acesso ao conteúdo completo.
Caso seja registrado, efetue login.
Esqueceu sua senha? Clique aqui
Recomendamos o uso do Mozilla Firefox para uma melhor visualização.    


Início Postados Hoje Marcar Fóruns Como Lidos Álbums Banidos SE Team Medalhas
Voltar   Secret Experience > Área L2J > [L2J] Downloads > [Lineage] Java Mods
Registrar Loteria VIPStaff SERegras do fórum Comunidade Arcade Postados Hoje Pesquisar Experience
   

Secret Experience.NET   Secret Experience Corporation - Welcome To The Real World
     Anúncios SE

 
 
LinkBack Ferramentas do Tópico Modos de Exibição
Prev Post Anterior   Próximo Post Next
Antigo 16-06-2010, 12:23 AM   #1 (permalink)
Banido
 
Avatar de Optus
 
Registrado em: Apr 2010
Posts: 27
Agradeceu: 35
Agradecido 11 Vezes em 4 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Estado:

Inventório de Optus

Padrão Triple TvT

Triple TvT
3 Times
Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
Index: L2_GameServer_It/java/net/sf/l2j/gameserver/model/entity/TvTEvent.java
===================================================================
--- L2_GameServer_It/java/net/sf/l2j/gameserver/model/entity/TvTEvent.java	(revision 1433)
+++ L2_GameServer_It/java/net/sf/l2j/gameserver/model/entity/TvTEvent.java	(working copy)
@@ -57,7 +57,7 @@
 	}
 
 	/**	The teams of the TvTEvent<br> */
-	private static TvTEventTeam[] _teams = new TvTEventTeam[2]; // event only allow max 2 teams
+	private static TvTEventTeam[] _teams = new TvTEventTeam[3]; // event only allow max 2 teams
 	/** The state of the TvTEvent<br> */
 	private static EventState _state = EventState.INACTIVE;
 	/** The spawn of the participation npc<br> */
@@ -78,6 +78,7 @@
 	{
 		_teams[0] = new TvTEventTeam(Config.TVT_EVENT_TEAM_1_NAME, Config.TVT_EVENT_TEAM_1_COORDINATES);
 		_teams[1] = new TvTEventTeam(Config.TVT_EVENT_TEAM_2_NAME, Config.TVT_EVENT_TEAM_2_COORDINATES);
+		_teams[2] = new TvTEventTeam(Config.TVT_EVENT_TEAM_3_NAME, Config.TVT_EVENT_TEAM_3_COORDINATES);
 	}
 
 	/**
@@ -143,11 +144,12 @@
 		setState(EventState.STARTING);
 
 		// not enought participants
-		if (_teams[0].getParticipatedPlayerCount() < Config.TVT_EVENT_MIN_PLAYERS_IN_TEAMS || _teams[1].getParticipatedPlayerCount() < Config.TVT_EVENT_MIN_PLAYERS_IN_TEAMS)
+		if (_teams[0].getParticipatedPlayerCount() < Config.TVT_EVENT_MIN_PLAYERS_IN_TEAMS || _teams[1].getParticipatedPlayerCount() < Config.TVT_EVENT_MIN_PLAYERS_IN_TEAMS || _teams[2].getParticipatedPlayerCount() < Config.TVT_EVENT_MIN_PLAYERS_IN_TEAMS)
 		{
 			setState(EventState.INACTIVE);
 			_teams[0].cleanMe();
 			_teams[1].cleanMe();
+			_teams[2].cleanMe();
 			unSpawnNpc();
 			return false;
 		}
@@ -185,16 +187,16 @@
 	 */
 	public static String calculateRewards()
 	{
-		if (_teams[0].getPoints() == _teams[1].getPoints())
+		if (_teams[0].getPoints() == _teams[1].getPoints() || (_teams[0].getPoints() == _teams[2].getPoints() || _teams[1].getPoints() == _teams[2].getPoints()))
 		{
-			if (_teams[0].getParticipatedPlayerCount() == 0 || _teams[1].getParticipatedPlayerCount() == 0)
+			if (_teams[0].getParticipatedPlayerCount() == 0 || _teams[1].getParticipatedPlayerCount() == 0 || _teams[2].getParticipatedPlayerCount() == 0)
 			{
 				// the fight cannot be completed
 				setState(EventState.REWARDING);
 				return "TvT Event: Event finish. No team won, cause of inactivity!";
 			}
 
-			sysMsgToAllParticipants("TvT Event: Both teams are at a tie, next team to get a kill wins!");
+			sysMsgToAllParticipants("TvT Event: Teams are at a tie, next team to get a kill wins!");
 		}
 
 		while (_teams[0].getPoints() == _teams[1].getPoints())
@@ -209,7 +211,7 @@
 
 		setState(EventState.REWARDING); // after state REWARDING is set, nobody can point anymore
 
-		byte teamId = (byte)(_teams[0].getPoints() > _teams[1].getPoints() ? 0 : 1); // which team wins?
+		byte teamId = (byte)(_teams[0].getPoints() > _teams[1].getPoints() || (_teams[0].getPoints() > _teams[2].getPoints()) || (_teams[1].getPoints() > _teams[2].getPoints()) ? 0 : 1); // which team wins?
 		TvTEventTeam team = _teams[teamId];
 
 		for (String playerName : team.getParticipatedPlayerNames())
@@ -292,6 +294,7 @@
 
 		_teams[0].cleanMe();
 		_teams[1].cleanMe();
+		_teams[2].cleanMe();
 		setState(EventState.INACTIVE);
 	}
 
@@ -310,10 +313,12 @@
 
 		byte teamId = 0;
 
-		if (_teams[0].getParticipatedPlayerCount() == _teams[1].getParticipatedPlayerCount())
-			teamId = (byte)(Rnd.get(2));
+		if (_teams[0].getParticipatedPlayerCount() == _teams[1].getParticipatedPlayerCount() || (_teams[0].getParticipatedPlayerCount() == _teams[2].getParticipatedPlayerCount() || (_teams[1].getParticipatedPlayerCount() == _teams[2].getParticipatedPlayerCount())))
+			teamId = (byte)(Rnd.get(3));
 		else
 			teamId = (byte)(_teams[0].getParticipatedPlayerCount() > _teams[1].getParticipatedPlayerCount() ? 1 : 0);
+			teamId = (byte)(_teams[0].getParticipatedPlayerCount() > _teams[2].getParticipatedPlayerCount() ? 1 : 0);
+			teamId = (byte)(_teams[1].getParticipatedPlayerCount() > _teams[2].getParticipatedPlayerCount() ? 1 : 0);
 
 		return _teams[teamId].addPlayer(playerInstance);
 	}
@@ -357,6 +362,12 @@
 			if (playerInstance != null)
 				playerInstance.sendMessage(message);
 		}
+		
+		for (L2PcInstance playerInstance : _teams[2].getParticipatedPlayers().values())
+		{
+			if (playerInstance != null)
+				playerInstance.sendMessage(message);
+		}
 	}
 
 	/**
@@ -451,11 +462,11 @@
 				npcHtmlMessage.setHtml("<html><head><title>TvT Event</title></head><body>Cursed weapon owners are not allowed to participate.</body></html>");
 			else if (playerInstance.getKarma() > 0)
 				npcHtmlMessage.setHtml("<html><head><title>TvT Event</title></head><body>Chaotic players are not allowed to participate.</body></html>");
-			else if (_teams[0].getParticipatedPlayerCount() >= Config.TVT_EVENT_MAX_PLAYERS_IN_TEAMS && _teams[1].getParticipatedPlayerCount() >= Config.TVT_EVENT_MAX_PLAYERS_IN_TEAMS)
+			else if (_teams[0].getParticipatedPlayerCount() >= Config.TVT_EVENT_MAX_PLAYERS_IN_TEAMS && _teams[1].getParticipatedPlayerCount() >= Config.TVT_EVENT_MAX_PLAYERS_IN_TEAMS && _teams[2].getParticipatedPlayerCount() >= Config.TVT_EVENT_MAX_PLAYERS_IN_TEAMS)
 				npcHtmlMessage.setHtml("<html><head><title>TvT Event</title></head><body>Sorry the event is full!</body></html>");
 			else if (playerLevel < Config.TVT_EVENT_MIN_LVL || playerLevel > Config.TVT_EVENT_MAX_LVL)
 				npcHtmlMessage.setHtml("<html><head><title>TvT Event</title></head><body>Only players from level " + Config.TVT_EVENT_MIN_LVL + " to level " + Config.TVT_EVENT_MAX_LVL + " are allowed tro participate.</body></html>");
-			else if (_teams[0].getParticipatedPlayerCount() > 19 && _teams[1].getParticipatedPlayerCount() > 19)
+			else if (_teams[0].getParticipatedPlayerCount() > 19 && _teams[1].getParticipatedPlayerCount() > 19 && _teams[2].getParticipatedPlayerCount() > 19)
 				npcHtmlMessage.setHtml("<html><head><title>TvT Event</title></head><body>The event is full! Maximum of " + Config.TVT_EVENT_MAX_PLAYERS_IN_TEAMS + "  player are allowed in one team.</body></html>");
 			else if (addParticipant(playerInstance))
 				npcHtmlMessage.setHtml("<html><head><title>TvT Event</title></head><body>You are on the registration list now.</body></html>");
@@ -723,7 +734,7 @@
 	 */
 	public static byte getParticipantTeamId(String playerName)
 	{
-		return (byte)(_teams[0].containsPlayer(playerName) ? 0 : (_teams[1].containsPlayer(playerName) ? 1 : -1));
+		return (byte)(_teams[0].containsPlayer(playerName) ? 0 : (_teams[1].containsPlayer(playerName) ? 1 : (_teams[2].containsPlayer(playerName) ? 2 : -1)));
 	}
 
 	/**
@@ -734,7 +745,7 @@
 	 */
 	public static int[] getParticipantTeamCoordinates(String playerName)
 	{
-		return _teams[0].containsPlayer(playerName) ? _teams[0].getCoordinates() : (_teams[1].containsPlayer(playerName) ? _teams[1].getCoordinates() : null);
+		return _teams[0].containsPlayer(playerName) ? _teams[0].getCoordinates() : (_teams[1].containsPlayer(playerName) ? _teams[1].getCoordinates() : (_teams[2].containsPlayer(playerName) ? _teams[2].getCoordinates() : null));
 	}
 
 
@@ -746,7 +757,7 @@
 	 */
 	public static boolean isPlayerParticipant(String playerName)
 	{
-		return _teams[0].containsPlayer(playerName) || _teams[1].containsPlayer(playerName);
+		return _teams[0].containsPlayer(playerName) || _teams[1].containsPlayer(playerName) || _teams[2].containsPlayer(playerName);
 	}
 
 	/**
@@ -756,7 +767,7 @@
 	 */
 	public static int getParticipatedPlayersCount()
 	{
-		return _teams[0].getParticipatedPlayerCount() + _teams[1].getParticipatedPlayerCount();
+		return _teams[0].getParticipatedPlayerCount() + _teams[1].getParticipatedPlayerCount() + _teams[2].getParticipatedPlayerCount();
 	}
 
 	/**
@@ -766,7 +777,7 @@
 	 */
 	public static String[] getTeamNames()
 	{
-		return new String[]{_teams[0].getName(), _teams[1].getName()};
+		return new String[]{_teams[0].getName(), _teams[1].getName(), _teams[2].getName()};
 	}
 
 	/**
@@ -776,7 +787,7 @@
 	 */
 	public static int[] getTeamsPlayerCounts()
 	{
-		return new int[]{_teams[0].getParticipatedPlayerCount(), _teams[1].getParticipatedPlayerCount()};
+		return new int[]{_teams[0].getParticipatedPlayerCount(), _teams[1].getParticipatedPlayerCount(), _teams[2].getParticipatedPlayerCount()};
 	}
 
 	/**
@@ -786,6 +797,6 @@
 	 */
 	public static int[] getTeamsPoints()
 	{
-		return new int[]{_teams[0].getPoints(), _teams[1].getPoints()};
+		return new int[]{_teams[0].getPoints(), _teams[1].getPoints(), _teams[2].getPoints()};
 	}
 }
Index: L2_GameServer_It/java/net/sf/l2j/Config.java
===================================================================
--- L2_GameServer_It/java/net/sf/l2j/Config.java	(revision 1433)
+++ L2_GameServer_It/java/net/sf/l2j/Config.java	(working copy)
@@ -863,6 +863,8 @@
     public static int[] TVT_EVENT_TEAM_1_COORDINATES = new int[3];
     public static String TVT_EVENT_TEAM_2_NAME;
     public static int[] TVT_EVENT_TEAM_2_COORDINATES = new int[3];
+    public static String TVT_EVENT_TEAM_3_NAME;
+    public static int[] TVT_EVENT_TEAM_3_COORDINATES = new int[3];
     public static List<int[]> TVT_EVENT_REWARDS = new FastList<int[]>();
     public static boolean TVT_EVENT_TARGET_TEAM_MEMBERS_ALLOWED;
     public static boolean TVT_EVENT_POTIONS_ALLOWED;
@@ -1887,7 +1889,9 @@
                         TVT_EVENT_START_LEAVE_TELEPORT_DELAY        = Integer.parseInt(L2JModSettings.getProperty("TvTEventStartLeaveTeleportDelay", "20"));
 
                         TVT_EVENT_TEAM_1_NAME                       = L2JModSettings.getProperty("TvTEventTeam1Name", "Team1");
+                        TVT_EVENT_TEAM_2_NAME                       = L2JModSettings.getProperty("TvTEventTeam2Name", "Team2");
                         propertySplit                               = L2JModSettings.getProperty("TvTEventTeam1Coordinates", "0,0,0").split(",");
+                        propertySplit                               = L2JModSettings.getProperty("TvTEventTeam2Coordinates", "0,0,0").split(",");
 
                         if (propertySplit.length < 3)
                         {
@@ -1899,9 +1903,13 @@
                             TVT_EVENT_TEAM_1_COORDINATES[0]    = Integer.parseInt(propertySplit[0]);
                             TVT_EVENT_TEAM_1_COORDINATES[1]    = Integer.parseInt(propertySplit[1]);
                             TVT_EVENT_TEAM_1_COORDINATES[2]    = Integer.parseInt(propertySplit[2]);
+                            
+                            TVT_EVENT_TEAM_2_COORDINATES[0]    = Integer.parseInt(propertySplit[0]);
+                            TVT_EVENT_TEAM_2_COORDINATES[1]    = Integer.parseInt(propertySplit[1]);
+                            TVT_EVENT_TEAM_2_COORDINATES[2]    = Integer.parseInt(propertySplit[2]);
 
-                            TVT_EVENT_TEAM_2_NAME            = L2JModSettings.getProperty("TvTEventTeam2Name", "Team2");
-                            propertySplit                    = L2JModSettings.getProperty("TvTEventTeam2Coordinates", "0,0,0").split(",");
+                            TVT_EVENT_TEAM_3_NAME            = L2JModSettings.getProperty("TvTEventTeam3Name", "Team2");
+                            propertySplit                    = L2JModSettings.getProperty("TvTEventTeam3Coordinates", "0,0,0").split(",");
 
                             if (propertySplit.length < 3)
                             {
@@ -1910,9 +1918,9 @@
                             }
                             else
                             {
-                                TVT_EVENT_TEAM_2_COORDINATES[0]    = Integer.parseInt(propertySplit[0]);
-                                TVT_EVENT_TEAM_2_COORDINATES[1]    = Integer.parseInt(propertySplit[1]);
-                                TVT_EVENT_TEAM_2_COORDINATES[2]    = Integer.parseInt(propertySplit[2]);
+                                TVT_EVENT_TEAM_3_COORDINATES[0]    = Integer.parseInt(propertySplit[0]);
+                                TVT_EVENT_TEAM_3_COORDINATES[1]    = Integer.parseInt(propertySplit[1]);
+                                TVT_EVENT_TEAM_3_COORDINATES[2]    = Integer.parseInt(propertySplit[2]);
                                 propertySplit                    = L2JModSettings.getProperty("TvTEventReward", "57,100000").split(";");
 
                                 for (String reward : propertySplit)
Index: L2_GameServer_It/java/config/l2jmods.properties
===================================================================
--- L2_GameServer_It/java/config/l2jmods.properties	(revision 1433)
+++ L2_GameServer_It/java/config/l2jmods.properties	(working copy)
@@ -96,38 +96,54 @@
 #---------------------------------------------------------------
 # enable TvTEvent
 TvTEventEnabled = false
+
 # Time Between TvT events (in minutes, 300 = 5 hours)
 TvTEventInterval = 300
+
 #  Registration timer (in minutes) from start of event.
 TvTEventParticipationTime = 60
+
 #  Event running time, in minutes
 TvTEventRunningTime = 20
+
 # TvT Event NPC Details (create a custom npc of type L2TvTEventNpc)
 TvTEventParticipationNpcId = 70010
 TvTEventParticipationNpcCoordinates = 83425,148585,-3406
+
 # Minimum amount of players allowed in each team 
 TvTEventMinPlayersInTeams = 1
 TvTEventMaxPlayersInTeams = 20
+
 # Level rules 
 TvTEventMinPlayerLevel = 1
 TvTEventMaxPlayerLevel = 80
+
 # Teleport delay Timers (in seconds)
 TvTEventRespawnTeleportDelay = 10
 TvTEventStartLeaveTeleportDelay = 10
+
 # First Team Details (name, start and death x,y,z tp point)
 TvTEventTeam1Name = Team1
 TvTEventTeam1Coordinates = 148695,46725,-3414
+
 # Second Team Details (name, start and death x,y,z tp point)
 TvTEventTeam2Name = Team2
 TvTEventTeam2Coordinates = 149999,46728,-3414
+
+# Third Team Details (name, start and death x,y,z tp point)
+TvTEventTeam3Name = Team3
+TvTEventTeam3Coordinates = 149999,46730,-3414
+
 # Reward for winning team 
 # itemId,amount;itemId,amount;itemId,amount;...
 # no ";" at the start or end
 TvTEventReward = 57,100000;5575,1000
+
 # TvTEvent Rules
 TvTEventTargetTeamMembersAllowed = true
 TvTEventPotionsAllowed = false
 TvTEventSummonByItemAllowed = false
+
 # Door id's to close/open on start/end
 # ex.: 1;2;3;4;5;6
 # no ";" at the start or end

Index: L2_GameServer_It/java/net/sf/l2j/gameserver/model/actor/instance/L2TvTEventNpcInstance.java
===================================================================
--- L2_GameServer_It/java/net/sf/l2j/gameserver/model/actor/instance/L2TvTEventNpcInstance.java	(revision 1433)
+++ L2_GameServer_It/java/net/sf/l2j/gameserver/model/actor/instance/L2TvTEventNpcInstance.java	(working copy)
@@ -68,6 +68,8 @@
 				npcHtmlMessage.replace("%team1playercount%", String.valueOf(teamsPlayerCounts[0]));
 				npcHtmlMessage.replace("%team2name%", Config.TVT_EVENT_TEAM_2_NAME);
 				npcHtmlMessage.replace("%team2playercount%", String.valueOf(teamsPlayerCounts[1]));
+				npcHtmlMessage.replace("%team3name%", Config.TVT_EVENT_TEAM_3_NAME);
+				npcHtmlMessage.replace("%team3playercount%", String.valueOf(teamsPlayerCounts[2]));
 	    		playerInstance.sendPacket(npcHtmlMessage);
 	    	}
 		}
@@ -89,7 +91,10 @@
 				npcHtmlMessage.replace("%team1points%", String.valueOf(teamsPointsCounts[0]));
 				npcHtmlMessage.replace("%team2name%", Config.TVT_EVENT_TEAM_2_NAME);
 				npcHtmlMessage.replace("%team2playercount%", String.valueOf(teamsPlayerCounts[1]));
-				npcHtmlMessage.replace("%team2points%", String.valueOf(teamsPointsCounts[1])); // <---- array index from 0 to 1 thx DaRkRaGe
+				npcHtmlMessage.replace("%team2points%", String.valueOf(teamsPointsCounts[1]));
+				npcHtmlMessage.replace("%team3name%", Config.TVT_EVENT_TEAM_3_NAME);
+				npcHtmlMessage.replace("%team3playercount%", String.valueOf(teamsPlayerCounts[2]));
+				npcHtmlMessage.replace("%team3points%", String.valueOf(teamsPointsCounts[2]));
 	    		playerInstance.sendPacket(npcHtmlMessage);
 	    	}
 		}

Index: Data/data/html/mods/TvTEventParticipation.htm
===================================================================
--- Data/data/html/mods/TvTEventParticipation.htm	(revision 680)
+++ Data/data/html/mods/TvTEventParticipation.htm	(working copy)
@@ -1,7 +1,8 @@
 <html><title>TvT Event</title><body>
 Registration for TvT Event:<br><br><center>
 %team1name%&nbsp;&nbsp;&nbsp;&nbsp;(%team1playercount% players in)<br1>
-%team2name%&nbsp;&nbsp;&nbsp;&nbsp;(%team2playercount% players in)<br>
+%team2name%&nbsp;&nbsp;&nbsp;&nbsp;(%team2playercount% players in)<br1>
+%team3name%&nbsp;&nbsp;&nbsp;&nbsp;(%team3playercount% players in)<br>
 <button value="Participate" action="bypass -h npc_%objectId%_tvt_event_participation" width=50 height=15 back="sek.cbui94" fore="sek.cbui92">
 <button value="Close" action="bypass -h npc_%objectId%_Close" width=50 height=15 back="sek.cbui94" fore="sek.cbui92">
 </center></body></html>
Index: Data/data/html/mods/TvTEventStatus.htm
===================================================================
--- Data/data/html/mods/TvTEventStatus.htm	(revision 680)
+++ Data/data/html/mods/TvTEventStatus.htm	(working copy)
@@ -1,5 +1,6 @@
 <html><title>TvT Event</title><body>
 Status:<br><br><center>
 %team1name% with %team1playercount% players and %team1points% points.<br1>
-%team2name% with %team2playercount% players and %team2points% points.<br>
+%team2name% with %team2playercount% players and %team2points% points.<br1>
+%team3name% with %team3playercount% players and %team3points% points.<br>
 </center></body></html>

Optus está offline  
Links Patrocinados
 


Regras para Posts
Você não pode postar novos tópicos
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar seus posts

Código [IMG] Sim
Código HTML Não
Trackbacks are Sim
Pingbacks are Sim
Refbacks are Sim



Horários baseados na GMT -3. Agora são 10:05 AM.