浏览代码

Core part for [DP7548]

JIV 15 年之前
父节点
当前提交
c23cc55a2a

+ 12 - 0
L2_GameServer/java/com/l2jserver/Config.java

@@ -964,6 +964,8 @@ public final class Config
 	public static int Random_Of_QueenAnt_Spawn;
 	public static int Random_Of_QueenAnt_Spawn;
 	public static int Interval_Of_Zaken_Spawn;
 	public static int Interval_Of_Zaken_Spawn;
 	public static int Random_Of_Zaken_Spawn;
 	public static int Random_Of_Zaken_Spawn;
+	public static int Interval_Of_Frintezza_Spawn;
+	public static int Random_Of_Frintezza_Spawn;	
 	
 	
 	//chatfilter
 	//chatfilter
 	public static ArrayList<String>	FILTER_LIST;
 	public static ArrayList<String>	FILTER_LIST;
@@ -2461,6 +2463,16 @@ public final class Config
 						Random_Of_Zaken_Spawn = 35;
 						Random_Of_Zaken_Spawn = 35;
 					Random_Of_Zaken_Spawn = Random_Of_Zaken_Spawn * 3600000;
 					Random_Of_Zaken_Spawn = Random_Of_Zaken_Spawn * 3600000;
 
 
+					Interval_Of_Frintezza_Spawn = Integer.parseInt(grandbossSettings.getProperty("IntervalOfFrintezzaSpawn", "121"));
+					if (Interval_Of_Frintezza_Spawn < 1 || Interval_Of_Frintezza_Spawn > 480)
+						Interval_Of_Frintezza_Spawn = 121;
+					Interval_Of_Frintezza_Spawn = Interval_Of_Frintezza_Spawn * 3600000;
+ 
+					Random_Of_Frintezza_Spawn = Integer.parseInt(grandbossSettings.getProperty("RandomOfFrintezzaSpawn", "8"));
+					if (Random_Of_Frintezza_Spawn < 1 || Random_Of_Frintezza_Spawn > 192)
+						Random_Of_Frintezza_Spawn = 8;
+					Random_Of_Frintezza_Spawn = Random_Of_Frintezza_Spawn * 3600000;
+					
 				}
 				}
 				catch (Exception e)
 				catch (Exception e)
 				{
 				{

+ 1 - 0
L2_GameServer/java/com/l2jserver/gameserver/datatables/CharNameTable.java

@@ -77,6 +77,7 @@ public class CharNameTable
 	public final void removeName(int objId)
 	public final void removeName(int objId)
 	{
 	{
 		_chars.remove(objId);
 		_chars.remove(objId);
+		_accessLevels.remove(objId);
 	}
 	}
 
 
 	public final int getIdByName(String name)
 	public final int getIdByName(String name)

+ 26 - 0
L2_GameServer/java/com/l2jserver/gameserver/model/zone/type/L2BossZone.java

@@ -14,10 +14,13 @@
  */
  */
 package com.l2jserver.gameserver.model.zone.type;
 package com.l2jserver.gameserver.model.zone.type;
 
 
+import java.util.Map;
+
 import com.l2jserver.gameserver.GameServer;
 import com.l2jserver.gameserver.GameServer;
 import com.l2jserver.gameserver.datatables.MapRegionTable;
 import com.l2jserver.gameserver.datatables.MapRegionTable;
 import com.l2jserver.gameserver.model.actor.L2Attackable;
 import com.l2jserver.gameserver.model.actor.L2Attackable;
 import com.l2jserver.gameserver.model.actor.L2Character;
 import com.l2jserver.gameserver.model.actor.L2Character;
+import com.l2jserver.gameserver.model.actor.L2Npc;
 import com.l2jserver.gameserver.model.actor.L2Playable;
 import com.l2jserver.gameserver.model.actor.L2Playable;
 import com.l2jserver.gameserver.model.actor.L2Summon;
 import com.l2jserver.gameserver.model.actor.L2Summon;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
@@ -359,4 +362,27 @@ public class L2BossZone extends L2ZoneType
 	public void onReviveInside(L2Character character)
 	public void onReviveInside(L2Character character)
 	{
 	{
 	}
 	}
+	
+	public void updateKnownList(L2Npc npc)
+	{
+		if (_characterList == null || _characterList.isEmpty())
+			return;
+		
+		Map<Integer, L2PcInstance> npcKnownPlayers = npc.getKnownList().getKnownPlayers();
+		for (L2Character character : _characterList.values())
+		{
+			if (character == null)
+				continue;
+			if (character instanceof L2PcInstance)
+			{
+				L2PcInstance player = (L2PcInstance) character;
+				if (player.isOnline() == 1)
+					npcKnownPlayers.put(player.getObjectId(), player);
+			}
+		}
+		return;
+	}
+	
 }
 }
+
+

+ 8 - 0
L2_GameServer/java/config/Grandboss.properties

@@ -67,3 +67,11 @@ IntervalOfZakenSpawn = 19
 # Random interval. Range 1-192
 # Random interval. Range 1-192
 RandomOfZakenSpawn = 35
 RandomOfZakenSpawn = 35
 
 
+# ---------------------------------------------------------------------------
+# Frintezza
+# ---------------------------------------------------------------------------
+# Interval time of Frintezza. Value is hour. Range 1-480
+IntervalOfFrintezzaSpawn = 121
+
+# Random interval. Range 1-192
+RandomOfFrintezzaSpawn = 8