فهرست منبع

BETA: Fixing wrong startup order:
* CastleManager must be loaded before territory war, otherwise problems can occur like request for door manage before they are actually loaded up.
* Also caching Castle if castle id is above 0.

Rumen Nikiforov 12 سال پیش
والد
کامیت
e99f31ba26

+ 4 - 3
L2J_Server_BETA/java/com/l2jserver/gameserver/GameServer.java

@@ -310,6 +310,10 @@ public class GameServer
 		AirShipManager.getInstance();
 		GraciaSeedsManager.getInstance();
 		
+		CastleManager.getInstance().activateInstances();
+		FortManager.getInstance().activateInstances();
+		MerchantPriceConfigTable.getInstance().updateReferences();
+		
 		try
 		{
 			_log.info(getClass().getSimpleName() + ": Loading Server Scripts");
@@ -356,9 +360,6 @@ public class GameServer
 		TaskManager.getInstance();
 		
 		AntiFeedManager.getInstance().registerEvent(AntiFeedManager.GAME_ID);
-		MerchantPriceConfigTable.getInstance().updateReferences();
-		CastleManager.getInstance().activateInstances();
-		FortManager.getInstance().activateInstances();
 		
 		if (Config.ALLOW_MAIL)
 		{

+ 4 - 1
L2J_Server_BETA/java/com/l2jserver/gameserver/datatables/MerchantPriceConfigTable.java

@@ -278,7 +278,10 @@ public class MerchantPriceConfigTable implements InstanceListManager
 		
 		public void updateReferences()
 		{
-			_castle = CastleManager.getInstance().getCastleById(_castleId);
+			if (_castleId > 0)
+			{
+				_castle = CastleManager.getInstance().getCastleById(_castleId);
+			}
 		}
 	}