Przeglądaj źródła

BETA: Weekend bug fix madness:
* Addressing the NPE problem at RegionBBSManager, ''bit experimental'', feedback required.
* SkillList server packet cleanup.
* ManagedScript typo in JavaDoc.
* More JavaDoc fixes at L2Character.
* SystemMessageId adding missing messages and fixing typos.
* Quest writing extensive documentation, fixing typos in comments.
* Based in Fulminus original documentation, updated as JavaDocs and completed.
* Typos related to comments fixed.
* More JavaDocs will be added soon...
* QuestState minor cleanup.
* Participant using getters and setters, preventing NPEs. Fixes [http://www.l2jserver.com/forum/viewtopic.php?f=77&t=24871 Olympiad problem]
* Related changes to related classes.
* OlympiadGameNormal cleanup.
* Minor change in L2PcInstance to send skill list with display Id instead of plain skill Id. Fixes [http://www.l2jserver.com/forum/viewtopic.php?f=77&t=24847 Custom skill problem]
* Adding a new map in L2Character to hold information about custom skills in characters. Fixes [http://www.l2jserver.com/forum/viewtopic.php?f=77&t=24847 Custom skill problem]
* Created on character creation.
* Updated when character has a skill removed/added.
* Does not have persistence.
* Small, fast-lookup.
* Support in RequestMagicSkillUse to find a custom skill in the custom skills map if it wasn't found in the character's skills. Fixes [http://www.l2jserver.com/forum/viewtopic.php?f=77&t=24847 Custom skill problem]
* Cleanup for TaskDailySkillReuseClean.
* Adding Wondrous Cubic - 1 time use(22180) skill to daily cleanups.
* Fixed SkillCoolTime typo from [5180], thanks blacksea for report. Fixes [http://www.l2jserver.com/forum/viewtopic.php?f=77&t=24893 Reuse bug] and #6083

Zoey76 13 lat temu
rodzic
commit
f13c50bf9b
16 zmienionych plików z 1237 dodań i 460 usunięć
  1. 20 8
      L2J_Server_BETA/java/com/l2jserver/gameserver/communitybbs/Manager/RegionBBSManager.java
  2. 58 18
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/L2Character.java
  3. 1 1
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java
  4. 6 6
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/olympiad/AbstractOlympiadGame.java
  5. 281 178
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/olympiad/OlympiadGameNormal.java
  6. 99 98
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/olympiad/OlympiadGameTeams.java
  7. 116 17
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/olympiad/Participant.java
  8. 487 33
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/quest/Quest.java
  9. 0 10
      L2J_Server_BETA/java/com/l2jserver/gameserver/model/quest/QuestState.java
  10. 122 42
      L2J_Server_BETA/java/com/l2jserver/gameserver/network/SystemMessageId.java
  11. 16 4
      L2J_Server_BETA/java/com/l2jserver/gameserver/network/clientpackets/RequestMagicSkillUse.java
  12. 5 5
      L2J_Server_BETA/java/com/l2jserver/gameserver/network/serverpackets/ExOlympiadUserInfo.java
  13. 1 1
      L2J_Server_BETA/java/com/l2jserver/gameserver/network/serverpackets/SkillCoolTime.java
  14. 17 20
      L2J_Server_BETA/java/com/l2jserver/gameserver/network/serverpackets/SkillList.java
  15. 1 1
      L2J_Server_BETA/java/com/l2jserver/gameserver/scripting/ManagedScript.java
  16. 7 18
      L2J_Server_BETA/java/com/l2jserver/gameserver/taskmanager/tasks/TaskDailySkillReuseClean.java

+ 20 - 8
L2J_Server_BETA/java/com/l2jserver/gameserver/communitybbs/Manager/RegionBBSManager.java

@@ -14,6 +14,8 @@
  */
 package com.l2jserver.gameserver.communitybbs.Manager;
 
+import gnu.trove.iterator.TIntObjectIterator;
+
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.StringTokenizer;
@@ -42,6 +44,15 @@ public class RegionBBSManager extends BaseBBSManager
 {
 	private static Logger _logChat = Logger.getLogger("chat");
 	
+	private static final Comparator<L2PcInstance> playerNameComparator = new Comparator<L2PcInstance>()
+	{
+		@Override
+		public int compare(L2PcInstance p1, L2PcInstance p2)
+		{
+			return p1.getName().compareToIgnoreCase(p2.getName());
+		}
+	};
+	
 	private RegionBBSManager()
 	{
 	}
@@ -267,18 +278,19 @@ public class RegionBBSManager extends BaseBBSManager
 		return SingletonHolder._instance;
 	}
 	
-	public/*synchronized */void changeCommunityBoard()
+	public void changeCommunityBoard()
 	{
-		FastList<L2PcInstance> sortedPlayers = new FastList<L2PcInstance>();
-		Collections.addAll(sortedPlayers, L2World.getInstance().getAllPlayersArray());
-		Collections.sort(sortedPlayers, new Comparator<L2PcInstance>()
+		final FastList<L2PcInstance> sortedPlayers = new FastList<L2PcInstance>();
+		final TIntObjectIterator<L2PcInstance> it = L2World.getInstance().getAllPlayers().iterator();
+		while (it.hasNext())
 		{
-			@Override
-			public int compare(L2PcInstance p1, L2PcInstance p2)
+			it.advance();
+			if (it.value() != null)
 			{
-				return p1.getName().compareToIgnoreCase(p2.getName());
+				sortedPlayers.add(it.value());
 			}
-		});
+		}
+		Collections.sort(sortedPlayers, playerNameComparator);
 		
 		_onlinePlayers.clear();
 		_onlineCount = 0;

+ 58 - 18
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/L2Character.java

@@ -26,6 +26,7 @@ import java.util.logging.Level;
 import java.util.logging.Logger;
 
 import javolution.util.FastList;
+import javolution.util.FastMap;
 import javolution.util.WeakFastSet;
 
 import com.l2jserver.Config;
@@ -125,23 +126,23 @@ import com.l2jserver.gameserver.util.Util;
 import com.l2jserver.util.Rnd;
 
 /**
- * Mother class of all character objects of the world (PC, NPC...)<BR><BR>
- *
- * L2Character :<BR><BR>
- * <li>L2CastleGuardInstance</li>
+ * Mother class of all character objects of the world (PC, NPC...)<br>
+ * L2Character:<br>
+ * <ul>
  * <li>L2DoorInstance</li>
- * <li>L2NpcInstance</li>
- * <li>L2PlayableInstance </li><BR><BR>
- *
- *
- * <B><U> Concept of L2CharTemplate</U> :</B><BR><BR>
- * Each L2Character owns generic and static properties (ex : all Keltir have the same number of HP...).
- * All of those properties are stored in a different template for each type of L2Character.
- * Each template is loaded once in the server cache memory (reduce memory use).
- * When a new instance of L2Character is spawned, server just create a link between the instance and the template.
- * This link is stored in <B>_template</B><BR><BR>
- *
- *
+ * <li>L2Playable</li>
+ * <li>L2Npc</li>
+ * <li>L2StaticObjectInstance</li>
+ * <li>L2Trap</li>
+ * <li>L2Vehicle</li>
+ * </ul>
+ * <br>
+ * <b>Concept of L2CharTemplate:</b><br>
+ * Each L2Character owns generic and static properties (ex : all Keltir have the same number of HP...).<br>
+ * All of those properties are stored in a different template for each type of L2Character.<br>
+ * Each template is loaded once in the server cache memory (reduce memory use).<br>
+ * When a new instance of L2Character is spawned, server just create a link between the instance and the template.<br>
+ * This link is stored in {@link #_template}
  * @version $Revision: 1.53.2.45.2.34 $ $Date: 2005/04/11 10:06:08 $
  */
 public abstract class L2Character extends L2Object
@@ -184,8 +185,16 @@ public abstract class L2Character extends L2Object
 	/** Table of Calculators containing all used calculator */
 	private Calculator[] _calculators;
 	
-	/** FastMap(Integer, L2Skill) containing all skills of the L2Character */
+	/**
+	 * Map containing all skills of this character.
+	 */
 	protected final L2TIntObjectHashMap<L2Skill> _skills;
+	
+	/**
+	 * Map containing all custom skills of this character.
+	 */
+	private FastMap<Integer, SkillHolder> _customSkills;
+	
 	/** FastMap containing the active chance skills on this character */
 	private ChanceSkillList _chanceSkills;
 	
@@ -411,7 +420,13 @@ public abstract class L2Character extends L2Object
 			if (_skills != null)
 			{
 				for (L2Skill skill : getAllSkills())
+				{
+					if (skill.getDisplayId() != skill.getId())
+					{
+						getCustomSkills().put(Integer.valueOf(skill.getDisplayId()), new SkillHolder(skill.getId(), skill.getLevel()));
+					}
 					addStatFuncs(skill.getStatFuncs(null, this));
+				}
 			}
 		}
 		else
@@ -429,7 +444,13 @@ public abstract class L2Character extends L2Object
 				if (_skills != null)
 				{
 					for (L2Skill skill : getAllSkills())
+					{
+						if (skill.getDisplayId() != skill.getId())
+						{
+							getCustomSkills().put(Integer.valueOf(skill.getDisplayId()), new SkillHolder(skill.getId(), skill.getLevel()));
+						}
 						addStatFuncs(skill.getStatFuncs(null, this));
+					}
 				}
 			}
 			else
@@ -6015,7 +6036,10 @@ public abstract class L2Character extends L2Object
 		{
 			// Replace oldSkill by newSkill or Add the newSkill
 			oldSkill = _skills.put(newSkill.getId(), newSkill);
-			
+			if (newSkill.getDisplayId() != newSkill.getId())
+			{
+				getCustomSkills().put(Integer.valueOf(newSkill.getDisplayId()), new SkillHolder(newSkill.getId(), newSkill.getLevel()));
+			}
 			// If an old skill has been replaced, remove all its Func objects
 			if (oldSkill != null)
 			{
@@ -6106,6 +6130,10 @@ public abstract class L2Character extends L2Object
 		// Remove all its Func objects from the L2Character calculator set
 		if (oldSkill != null)
 		{
+			if (oldSkill.getDisplayId() != oldSkill.getId())
+			{
+				getCustomSkills().remove(Integer.valueOf(oldSkill.getDisplayId()));
+			}
 			//this is just a fail-safe againts buggers and gm dummies...
 			if ((oldSkill.triggerAnotherSkill()) && oldSkill.getTriggeredId() > 0)
 			{
@@ -6238,6 +6266,18 @@ public abstract class L2Character extends L2Object
 		return _skills.values(new L2Skill[0]);
 	}
 	
+	/**
+	 * @return all the custom skills (skills with different display Id than skill Id).
+	 */
+	public final FastMap<Integer, SkillHolder> getCustomSkills()
+	{
+		if (_customSkills == null)
+		{
+			_customSkills = new FastMap<Integer, SkillHolder>().shared();
+		}
+		return _customSkills;
+	}
+	
 	public ChanceSkillList getChanceSkills()
 	{
 		return _chanceSkills;

+ 1 - 1
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java

@@ -10800,7 +10800,7 @@ public final class L2PcInstance extends L2Playable
 						isEnchantable = false;
 				}
 				
-				sl.addSkill(s.getId(), s.getLevel(), s.isPassive(), isDisabled, isEnchantable);
+				sl.addSkill(s.getDisplayId(), s.getLevel(), s.isPassive(), isDisabled, isEnchantable);
 			}
 		}
 		

+ 6 - 6
L2J_Server_BETA/java/com/l2jserver/gameserver/model/olympiad/AbstractOlympiadGame.java

@@ -91,14 +91,14 @@ public abstract class AbstractOlympiadGame
 	{
 		par.updateStat(POINTS, points);
 		final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_GAINED_S2_OLYMPIAD_POINTS);
-		sm.addString(par.name);
+		sm.addString(par.getName());
 		sm.addNumber(points);
 		broadcastPacket(sm);
 		
 		for (Quest quest : QuestManager.getInstance().getAllManagedScripts())
 		{
 			if (quest != null && quest.isOlympiadUse())
-				quest.notifyOlympiadWin(par.player, getType());
+				quest.notifyOlympiadWin(par.getPlayer(), getType());
 		}
 	}
 
@@ -106,14 +106,14 @@ public abstract class AbstractOlympiadGame
 	{
 		par.updateStat(POINTS, -points);
 		final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_LOST_S2_OLYMPIAD_POINTS);
-		sm.addString(par.name);
+		sm.addString(par.getName());
 		sm.addNumber(points);
 		broadcastPacket(sm);
 		
 		for (Quest quest : QuestManager.getInstance().getAllManagedScripts())
 		{
 			if (quest != null && quest.isOlympiadUse())
-				quest.notifyOlympiadLoose(par.player, getType());
+				quest.notifyOlympiadLose(par.getPlayer(), getType());
 		}
 	}
 
@@ -171,7 +171,7 @@ public abstract class AbstractOlympiadGame
 
 	protected static final boolean portPlayerToArena(Participant par, Location loc, int id)
 	{
-		final L2PcInstance player = par.player;
+		final L2PcInstance player = par.getPlayer();
 		if (player == null || !player.isOnline())
 			return false;
 
@@ -185,7 +185,7 @@ public abstract class AbstractOlympiadGame
 			player.setOlympiadGameId(id);
 			player.setIsInOlympiadMode(true);
 			player.setIsOlympiadStart(false);
-			player.setOlympiadSide(par.side);
+			player.setOlympiadSide(par.getSide());
 			player.olyBuff = 5;
 			player.setInstanceId(OlympiadGameManager.getInstance().getOlympiadTask(id).getZone().getInstanceId());
 			player.teleToLocation(loc, false);

+ 281 - 178
L2J_Server_BETA/java/com/l2jserver/gameserver/model/olympiad/OlympiadGameNormal.java

@@ -37,7 +37,7 @@ import com.l2jserver.util.Rnd;
 /**
  * @author GodKratos, Pere, DS
  */
-abstract public class OlympiadGameNormal extends AbstractOlympiadGame
+public abstract class OlympiadGameNormal extends AbstractOlympiadGame
 {
 	protected int _damageP1 = 0;
 	protected int _damageP2 = 0;
@@ -48,78 +48,84 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 	protected OlympiadGameNormal(int id, Participant[] opponents)
 	{
 		super(id);
-
+		
 		_playerOne = opponents[0];
 		_playerTwo = opponents[1];
-
-		_playerOne.player.setOlympiadGameId(id);
-		_playerTwo.player.setOlympiadGameId(id);
+		
+		_playerOne.getPlayer().setOlympiadGameId(id);
+		_playerTwo.getPlayer().setOlympiadGameId(id);
 	}
-
+	
 	protected static final Participant[] createListOfParticipants(List<Integer> list)
 	{
-		if (list == null || list.isEmpty() || list.size() < 2)
+		if ((list == null) || list.isEmpty() || (list.size() < 2))
+		{
 			return null;
-
+		}
+		
 		int playerOneObjectId = 0;
 		L2PcInstance playerOne = null;
 		L2PcInstance playerTwo = null;
-
+		
 		while (list.size() > 1)
 		{
 			playerOneObjectId = list.remove(Rnd.nextInt(list.size()));
 			playerOne = L2World.getInstance().getPlayer(playerOneObjectId);
-			if (playerOne == null || !playerOne.isOnline())
+			if ((playerOne == null) || !playerOne.isOnline())
+			{
 				continue;
-
+			}
+			
 			playerTwo = L2World.getInstance().getPlayer(list.remove(Rnd.nextInt(list.size())));
-			if (playerTwo == null || !playerTwo.isOnline())
+			if ((playerTwo == null) || !playerTwo.isOnline())
 			{
 				list.add(playerOneObjectId);
 				continue;
 			}
-
+			
 			Participant[] result = new Participant[2];
 			result[0] = new Participant(playerOne, 1);
 			result[1] = new Participant(playerTwo, 2);
-
+			
 			return result;
 		}
 		return null;
 	}
-
+	
 	@Override
 	public final boolean containsParticipant(int playerId)
 	{
-		return _playerOne.objectId == playerId || _playerTwo.objectId == playerId;
+		return ((_playerOne != null) && (_playerOne.getObjectId() == playerId)) || ((_playerTwo != null) && (_playerTwo.getObjectId() == playerId));
 	}
-
+	
 	@Override
 	public final void sendOlympiadInfo(L2Character player)
 	{
 		player.sendPacket(new ExOlympiadUserInfo(_playerOne));
 		player.sendPacket(new ExOlympiadUserInfo(_playerTwo));
 	}
-
+	
 	@Override
 	public final void broadcastOlympiadInfo(L2OlympiadStadiumZone stadium)
 	{
 		stadium.broadcastPacket(new ExOlympiadUserInfo(_playerOne));
 		stadium.broadcastPacket(new ExOlympiadUserInfo(_playerTwo));
 	}
-
+	
 	@Override
 	protected final void broadcastPacket(L2GameServerPacket packet)
 	{
-		_playerOne.updatePlayer();
-		if (_playerOne.player != null)
-			_playerOne.player.sendPacket(packet);
-
-		_playerTwo.updatePlayer();
-		if (_playerTwo.player != null)
-			_playerTwo.player.sendPacket(packet);
+		if (_playerOne.updatePlayer())
+		{
+			_playerOne.getPlayer().sendPacket(packet);
+		}
+		
+		if (_playerTwo.updatePlayer())
+		{
+			_playerTwo.getPlayer().sendPacket(packet);
+		}
 	}
-
+	
 	@Override
 	protected final boolean portPlayersToArena(List<Location> spawns)
 	{
@@ -136,114 +142,126 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 		}
 		return result;
 	}
-
+	
 	@Override
 	protected boolean needBuffers()
 	{
 		return true;
 	}
-
+	
 	@Override
 	protected final void removals()
 	{
 		if (_aborted)
+		{
 			return;
-
-		removals(_playerOne.player, true);
-		removals(_playerTwo.player, true);
+		}
+		
+		removals(_playerOne.getPlayer(), true);
+		removals(_playerTwo.getPlayer(), true);
 	}
-
+	
 	@Override
 	protected final boolean makeCompetitionStart()
 	{
 		if (!super.makeCompetitionStart())
+		{
 			return false;
-
-		if (_playerOne.player == null || _playerTwo.player == null)
+		}
+		
+		if ((_playerOne.getPlayer() == null) || (_playerTwo.getPlayer() == null))
+		{
 			return false;
-
-		_playerOne.player.setIsOlympiadStart(true);
-		_playerOne.player.updateEffectIcons();
-		_playerTwo.player.setIsOlympiadStart(true);
-		_playerTwo.player.updateEffectIcons();
+		}
+		
+		_playerOne.getPlayer().setIsOlympiadStart(true);
+		_playerOne.getPlayer().updateEffectIcons();
+		_playerTwo.getPlayer().setIsOlympiadStart(true);
+		_playerTwo.getPlayer().updateEffectIcons();
 		return true;
 	}
-
+	
 	@Override
 	protected final void cleanEffects()
 	{
-		if (_playerOne.player != null
-				&& !_playerOne.defaulted
-				&& !_playerOne.disconnected
-				&& _playerOne.player.getOlympiadGameId() == _stadiumID)
-			cleanEffects(_playerOne.player);
-
-		if (_playerTwo.player != null
-				&& !_playerTwo.defaulted
-				&& !_playerTwo.disconnected
-				&& _playerTwo.player.getOlympiadGameId() == _stadiumID)
-			cleanEffects(_playerTwo.player);
+		if ((_playerOne.getPlayer() != null) && !_playerOne.isDefaulted() && !_playerOne.isDisconnected() && (_playerOne.getPlayer().getOlympiadGameId() == _stadiumID))
+		{
+			cleanEffects(_playerOne.getPlayer());
+		}
+		
+		if ((_playerTwo.getPlayer() != null) && !_playerTwo.isDefaulted() && !_playerTwo.isDisconnected() && (_playerTwo.getPlayer().getOlympiadGameId() == _stadiumID))
+		{
+			cleanEffects(_playerTwo.getPlayer());
+		}
 	}
-
+	
 	@Override
 	protected final void portPlayersBack()
 	{
-		if (_playerOne.player != null
-				&& !_playerOne.defaulted
-				&& !_playerOne.disconnected)
-			portPlayerBack(_playerOne.player);
-		if (_playerTwo.player != null 
-				&& !_playerTwo.defaulted
-				&& !_playerTwo.disconnected)
-			portPlayerBack(_playerTwo.player);
+		if ((_playerOne.getPlayer() != null) && !_playerOne.isDefaulted() && !_playerOne.isDisconnected())
+		{
+			portPlayerBack(_playerOne.getPlayer());
+		}
+		if ((_playerTwo.getPlayer() != null) && !_playerTwo.isDefaulted() && !_playerTwo.isDisconnected())
+		{
+			portPlayerBack(_playerTwo.getPlayer());
+		}
 	}
-
+	
 	@Override
 	protected final void playersStatusBack()
 	{
-		if (_playerOne.player != null
-				&& !_playerOne.defaulted
-				&& !_playerOne.disconnected
-				&& _playerOne.player.getOlympiadGameId() == _stadiumID)
-			playerStatusBack(_playerOne.player);
-
-		if (_playerTwo.player != null
-				&& !_playerTwo.defaulted
-				&& !_playerTwo.disconnected
-				&& _playerTwo.player.getOlympiadGameId() == _stadiumID)
-			playerStatusBack(_playerTwo.player);
+		if ((_playerOne.getPlayer() != null) && !_playerOne.isDefaulted() && !_playerOne.isDisconnected() && (_playerOne.getPlayer().getOlympiadGameId() == _stadiumID))
+		{
+			playerStatusBack(_playerOne.getPlayer());
+		}
+		
+		if ((_playerTwo.getPlayer() != null) && !_playerTwo.isDefaulted() && !_playerTwo.isDisconnected() && (_playerTwo.getPlayer().getOlympiadGameId() == _stadiumID))
+		{
+			playerStatusBack(_playerTwo.getPlayer());
+		}
 	}
-
+	
 	@Override
 	protected final void clearPlayers()
 	{
-		_playerOne.player = null;
+		_playerOne.setPlayer(null);
 		_playerOne = null;
-		_playerTwo.player = null;
+		_playerTwo.setPlayer(null);
 		_playerTwo = null;
 	}
 	
 	@Override
 	protected final void handleDisconnect(L2PcInstance player)
 	{
-		if (player.getObjectId() == _playerOne.objectId)
-			_playerOne.disconnected = true;
-		else if (player.getObjectId() == _playerTwo.objectId)
-			_playerTwo.disconnected = true;
+		if (player.getObjectId() == _playerOne.getObjectId())
+		{
+			_playerOne.setDisconnected(true);
+		}
+		else if (player.getObjectId() == _playerTwo.getObjectId())
+		{
+			_playerTwo.setDisconnected(true);
+		}
 	}
-
+	
 	@Override
 	protected final boolean checkBattleStatus()
 	{
 		if (_aborted)
-			return false;		
-
-		if (_playerOne.player == null || _playerOne.disconnected)
+		{
 			return false;
-
-		if (_playerTwo.player == null || _playerTwo.disconnected)
+		}
+		
+		if ((_playerOne.getPlayer() == null) || _playerOne.isDisconnected())
+		{
 			return false;
-
+		}
+		
+		if ((_playerTwo.getPlayer() == null) || _playerTwo.isDisconnected())
+		{
+			return false;
+		}
+		
 		return true;
 	}
 	
@@ -251,13 +269,17 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 	protected final boolean haveWinner()
 	{
 		if (!checkBattleStatus())
+		{
 			return true;
+		}
 		
 		boolean playerOneLost = true;
 		try
 		{
-			if (_playerOne.player.getOlympiadGameId() == _stadiumID)
-				playerOneLost = _playerOne.player.isDead();
+			if (_playerOne.getPlayer().getOlympiadGameId() == _stadiumID)
+			{
+				playerOneLost = _playerOne.getPlayer().isDead();
+			}
 		}
 		catch (Exception e)
 		{
@@ -267,8 +289,10 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 		boolean playerTwoLost = true;
 		try
 		{
-			if (_playerTwo.player.getOlympiadGameId() == _stadiumID)
-				playerTwoLost = _playerTwo.player.isDead();
+			if (_playerTwo.getPlayer().getOlympiadGameId() == _stadiumID)
+			{
+				playerTwoLost = _playerTwo.getPlayer().isDead();
+			}
 		}
 		catch (Exception e)
 		{
@@ -282,28 +306,34 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 	protected void validateWinner(L2OlympiadStadiumZone stadium)
 	{
 		if (_aborted)
+		{
 			return;
+		}
 		
-		final boolean _pOneCrash = (_playerOne.player == null || _playerOne.disconnected);
-		final boolean _pTwoCrash = (_playerTwo.player == null || _playerTwo.disconnected);
+		final boolean _pOneCrash = ((_playerOne.getPlayer() == null) || _playerOne.isDisconnected());
+		final boolean _pTwoCrash = ((_playerTwo.getPlayer() == null) || _playerTwo.isDisconnected());
 		
-		final int playerOnePoints = _playerOne.stats.getInteger(POINTS);
-		final int playerTwoPoints = _playerTwo.stats.getInteger(POINTS);
+		final int playerOnePoints = _playerOne.getStats().getInteger(POINTS);
+		final int playerTwoPoints = _playerTwo.getStats().getInteger(POINTS);
 		int pointDiff = Math.min(playerOnePoints, playerTwoPoints) / getDivider();
 		if (pointDiff <= 0)
+		{
 			pointDiff = 1;
+		}
 		else if (pointDiff > Config.ALT_OLY_MAX_POINTS)
+		{
 			pointDiff = Config.ALT_OLY_MAX_POINTS;
-
+		}
+		
 		int points;
 		SystemMessage sm;
 		
 		// Check for if a player defaulted before battle started
-		if (_playerOne.defaulted || _playerTwo.defaulted)
+		if (_playerOne.isDefaulted() || _playerTwo.isDefaulted())
 		{
 			try
 			{
-				if (_playerOne.defaulted)
+				if (_playerOne.isDefaulted())
 				{
 					try
 					{
@@ -312,8 +342,18 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 						
 						if (Config.ALT_OLY_LOG_FIGHTS)
 						{
-							LogRecord record = new LogRecord(Level.INFO, _playerOne.name+" default");
-							record.setParameters(new Object[]{_playerOne.name, _playerTwo.name, 0, 0, 0, 0, points, getType().toString()});
+							LogRecord record = new LogRecord(Level.INFO, _playerOne.getName() + " default");
+							record.setParameters(new Object[]
+							{
+								_playerOne.getName(),
+								_playerTwo.getName(),
+								0,
+								0,
+								0,
+								0,
+								points,
+								getType().toString()
+							});
 							_logResults.log(record);
 						}
 					}
@@ -322,7 +362,7 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 						_log.log(Level.WARNING, "Exception on validateWinner(): " + e.getMessage(), e);
 					}
 				}
-				if (_playerTwo.defaulted)
+				if (_playerTwo.isDefaulted())
 				{
 					try
 					{
@@ -331,8 +371,18 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 						
 						if (Config.ALT_OLY_LOG_FIGHTS)
 						{
-							LogRecord record = new LogRecord(Level.INFO, _playerTwo.name+" default");
-							record.setParameters(new Object[]{_playerOne.name, _playerTwo.name, 0, 0, 0, 0, points, getType().toString()});
+							LogRecord record = new LogRecord(Level.INFO, _playerTwo.getName() + " default");
+							record.setParameters(new Object[]
+							{
+								_playerOne.getName(),
+								_playerTwo.getName(),
+								0,
+								0,
+								0,
+								0,
+								points,
+								getType().toString()
+							});
 							_logResults.log(record);
 						}
 					}
@@ -347,7 +397,7 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 			{
 				_log.log(Level.WARNING, "Exception on validateWinner(): " + e.getMessage(), e);
 				return;
-			}				
+			}
 		}
 		
 		// Create results for players if a player crashed
@@ -358,63 +408,93 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 				if (_pTwoCrash && !_pOneCrash)
 				{
 					sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_GAME);
-					sm.addString(_playerOne.name);
+					sm.addString(_playerOne.getName());
 					stadium.broadcastPacket(sm);
-
+					
 					_playerOne.updateStat(COMP_WON, 1);
 					addPointsToParticipant(_playerOne, pointDiff);
-
+					
 					_playerTwo.updateStat(COMP_LOST, 1);
 					removePointsFromParticipant(_playerTwo, pointDiff);
 					
-					rewardParticipant(_playerOne.player, getReward());
-
+					rewardParticipant(_playerOne.getPlayer(), getReward());
+					
 					if (Config.ALT_OLY_LOG_FIGHTS)
 					{
-						LogRecord record = new LogRecord(Level.INFO, _playerTwo.name+" crash");
-						record.setParameters(new Object[]{_playerOne.name, _playerTwo.name, 0, 0, 0, 0, pointDiff, getType().toString()});
+						LogRecord record = new LogRecord(Level.INFO, _playerTwo.getName() + " crash");
+						record.setParameters(new Object[]
+						{
+							_playerOne.getName(),
+							_playerTwo.getName(),
+							0,
+							0,
+							0,
+							0,
+							pointDiff,
+							getType().toString()
+						});
 						_logResults.log(record);
 					}
 				}
 				else if (_pOneCrash && !_pTwoCrash)
 				{
 					sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_GAME);
-					sm.addString(_playerTwo.name);
+					sm.addString(_playerTwo.getName());
 					stadium.broadcastPacket(sm);
-
+					
 					_playerTwo.updateStat(COMP_WON, 1);
 					addPointsToParticipant(_playerTwo, pointDiff);
-
+					
 					_playerOne.updateStat(COMP_LOST, 1);
 					removePointsFromParticipant(_playerOne, pointDiff);
 					
-					rewardParticipant(_playerTwo.player, getReward());
-
+					rewardParticipant(_playerTwo.getPlayer(), getReward());
+					
 					if (Config.ALT_OLY_LOG_FIGHTS)
 					{
-						LogRecord record = new LogRecord(Level.INFO, _playerOne.name+" crash");
-						record.setParameters(new Object[]{_playerOne.name, _playerTwo.name, 0, 0, 0, 0, pointDiff, getType().toString()});
+						LogRecord record = new LogRecord(Level.INFO, _playerOne.getName() + " crash");
+						record.setParameters(new Object[]
+						{
+							_playerOne.getName(),
+							_playerTwo.getName(),
+							0,
+							0,
+							0,
+							0,
+							pointDiff,
+							getType().toString()
+						});
 						_logResults.log(record);
 					}
 				}
 				else if (_pOneCrash && _pTwoCrash)
 				{
 					stadium.broadcastPacket(SystemMessage.getSystemMessage(SystemMessageId.THE_GAME_ENDED_IN_A_TIE));
-
+					
 					_playerOne.updateStat(COMP_LOST, 1);
 					removePointsFromParticipant(_playerOne, pointDiff);
-
+					
 					_playerTwo.updateStat(COMP_LOST, 1);
 					removePointsFromParticipant(_playerTwo, pointDiff);
 					
 					if (Config.ALT_OLY_LOG_FIGHTS)
 					{
 						LogRecord record = new LogRecord(Level.INFO, "both crash");
-						record.setParameters(new Object[]{_playerOne.name, _playerTwo.name, 0, 0, 0, 0, pointDiff, getType().toString()});
+						record.setParameters(new Object[]
+						{
+							_playerOne.getName(),
+							_playerTwo.getName(),
+							0,
+							0,
+							0,
+							0,
+							pointDiff,
+							getType().toString()
+						});
 						_logResults.log(record);
 					}
 				}
-
+				
 				_playerOne.updateStat(COMP_DONE, 1);
 				_playerTwo.updateStat(COMP_DONE, 1);
 				_playerOne.updateStat(COMP_DONE_WEEK, 1);
@@ -438,87 +518,84 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 			long _fightTime = (System.currentTimeMillis() - _startTime);
 			
 			double playerOneHp = 0;
-			if (_playerOne.player != null && !_playerOne.player.isDead())
+			if ((_playerOne.getPlayer() != null) && !_playerOne.getPlayer().isDead())
 			{
-				playerOneHp = _playerOne.player.getCurrentHp() + _playerOne.player.getCurrentCp();
+				playerOneHp = _playerOne.getPlayer().getCurrentHp() + _playerOne.getPlayer().getCurrentCp();
 				if (playerOneHp < 0.5)
+				{
 					playerOneHp = 0;
+				}
 			}
 			
 			double playerTwoHp = 0;
-			if (_playerTwo.player != null && !_playerTwo.player.isDead())
+			if ((_playerTwo.getPlayer() != null) && !_playerTwo.getPlayer().isDead())
 			{
-				playerTwoHp = _playerTwo.player.getCurrentHp() + _playerTwo.player.getCurrentCp();
+				playerTwoHp = _playerTwo.getPlayer().getCurrentHp() + _playerTwo.getPlayer().getCurrentCp();
 				if (playerTwoHp < 0.5)
+				{
 					playerTwoHp = 0;
+				}
 			}
-					
+			
 			// if players crashed, search if they've relogged
 			_playerOne.updatePlayer();
 			_playerTwo.updatePlayer();
 			
-			if ((_playerOne.player == null || !_playerOne.player.isOnline())
-					&& (_playerTwo.player == null || !_playerTwo.player.isOnline()))
+			if (((_playerOne.getPlayer() == null) || !_playerOne.getPlayer().isOnline()) && ((_playerTwo.getPlayer() == null) || !_playerTwo.getPlayer().isOnline()))
 			{
 				_playerOne.updateStat(COMP_DRAWN, 1);
 				_playerTwo.updateStat(COMP_DRAWN, 1);
 				sm = SystemMessage.getSystemMessage(SystemMessageId.THE_GAME_ENDED_IN_A_TIE);
 				stadium.broadcastPacket(sm);
 			}
-			else if (_playerTwo.player == null
-					|| !_playerTwo.player.isOnline()
-					|| (playerTwoHp == 0 && playerOneHp != 0)
-					|| (_damageP1 > _damageP2 && playerTwoHp != 0 && playerOneHp != 0))
+			else if ((_playerTwo.getPlayer() == null) || !_playerTwo.getPlayer().isOnline() || ((playerTwoHp == 0) && (playerOneHp != 0)) || ((_damageP1 > _damageP2) && (playerTwoHp != 0) && (playerOneHp != 0)))
 			{
 				sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_GAME);
-				sm.addString(_playerOne.name);
+				sm.addString(_playerOne.getName());
 				stadium.broadcastPacket(sm);
-
+				
 				_playerOne.updateStat(COMP_WON, 1);
 				_playerTwo.updateStat(COMP_LOST, 1);
-
+				
 				addPointsToParticipant(_playerOne, pointDiff);
 				removePointsFromParticipant(_playerTwo, pointDiff);
-
-				winner = _playerOne.name + " won";
+				
+				winner = _playerOne.getName() + " won";
 				
 				// Save Fight Result
-				saveResults(_playerOne,_playerTwo,1,_startTime,_fightTime, getType());				
-				rewardParticipant(_playerOne.player, getReward());
+				saveResults(_playerOne, _playerTwo, 1, _startTime, _fightTime, getType());
+				rewardParticipant(_playerOne.getPlayer(), getReward());
 			}
-			else if (_playerOne.player == null
-					|| !_playerOne.player.isOnline()
-					|| (playerOneHp == 0 && playerTwoHp != 0)
-					|| (_damageP2 > _damageP1 && playerOneHp != 0 && playerTwoHp != 0))
+			else if ((_playerOne.getPlayer() == null) || !_playerOne.getPlayer().isOnline() || ((playerOneHp == 0) && (playerTwoHp != 0)) || ((_damageP2 > _damageP1) && (playerOneHp != 0) && (playerTwoHp != 0)))
 			{
 				sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_GAME);
-				sm.addString(_playerTwo.name);
+				sm.addString(_playerTwo.getName());
 				stadium.broadcastPacket(sm);
-
+				
 				_playerTwo.updateStat(COMP_WON, 1);
 				_playerOne.updateStat(COMP_LOST, 1);
-
+				
 				addPointsToParticipant(_playerTwo, pointDiff);
 				removePointsFromParticipant(_playerOne, pointDiff);
-
-				winner = _playerTwo.name + " won";
+				
+				winner = _playerTwo.getName() + " won";
 				
 				// Save Fight Result
-				saveResults(_playerOne,_playerTwo,2,_startTime,_fightTime,getType());				
-				rewardParticipant(_playerTwo.player, getReward());
+				saveResults(_playerOne, _playerTwo, 2, _startTime, _fightTime, getType());
+				rewardParticipant(_playerTwo.getPlayer(), getReward());
 			}
 			else
 			{
 				// Save Fight Result
-				saveResults(_playerOne,_playerTwo,0,_startTime,_fightTime, getType());
+				saveResults(_playerOne, _playerTwo, 0, _startTime, _fightTime, getType());
 				
 				sm = SystemMessage.getSystemMessage(SystemMessageId.THE_GAME_ENDED_IN_A_TIE);
 				stadium.broadcastPacket(sm);
-
+				
 				removePointsFromParticipant(_playerOne, Math.min(playerOnePoints / getDivider(), Config.ALT_OLY_MAX_POINTS));
 				removePointsFromParticipant(_playerTwo, Math.min(playerTwoPoints / getDivider(), Config.ALT_OLY_MAX_POINTS));
 			}
-
+			
 			_playerOne.updateStat(COMP_DONE, 1);
 			_playerTwo.updateStat(COMP_DONE, 1);
 			_playerOne.updateStat(COMP_DONE_WEEK, 1);
@@ -529,7 +606,17 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 			if (Config.ALT_OLY_LOG_FIGHTS)
 			{
 				LogRecord record = new LogRecord(Level.INFO, winner);
-				record.setParameters(new Object[]{_playerOne.name, _playerTwo.name, playerOneHp, playerTwoHp, _damageP1, _damageP2, pointDiff, getType().toString()});
+				record.setParameters(new Object[]
+				{
+					_playerOne.getName(),
+					_playerTwo.getName(),
+					playerOneHp,
+					playerTwoHp,
+					_damageP1,
+					_damageP2,
+					pointDiff,
+					getType().toString()
+				});
 				_logResults.log(record);
 			}
 			
@@ -543,20 +630,30 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 	@Override
 	protected final void addDamage(L2PcInstance player, int damage)
 	{
-		if (_playerOne.player == null || _playerTwo.player == null)
+		if ((_playerOne.getPlayer() == null) || (_playerTwo.getPlayer() == null))
+		{
 			return;
-		if (player == _playerOne.player)
+		}
+		if (player == _playerOne.getPlayer())
+		{
 			_damageP1 += damage;
-		else if (player == _playerTwo.player)
+		}
+		else if (player == _playerTwo.getPlayer())
+		{
 			_damageP2 += damage;
+		}
 	}
 	
 	@Override
 	public final String[] getPlayerNames()
 	{
-		return new String[] {_playerOne.name, _playerTwo.name};
+		return new String[]
+		{
+			_playerOne.getName(),
+			_playerTwo.getName()
+		};
 	}
-
+	
 	@Override
 	public boolean checkDefaulted()
 	{
@@ -564,32 +661,36 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 		_playerOne.updatePlayer();
 		_playerTwo.updatePlayer();
 		
-		reason = checkDefaulted(_playerOne.player);
+		reason = checkDefaulted(_playerOne.getPlayer());
 		if (reason != null)
 		{
-			_playerOne.defaulted = true;
-			if (_playerTwo.player != null)
-				_playerTwo.player.sendPacket(reason);
+			_playerOne.setDefaulted(true);
+			if (_playerTwo.getPlayer() != null)
+			{
+				_playerTwo.getPlayer().sendPacket(reason);
+			}
 		}
-
-		reason = checkDefaulted(_playerTwo.player);
+		
+		reason = checkDefaulted(_playerTwo.getPlayer());
 		if (reason != null)
 		{
-			_playerTwo.defaulted = true;
-			if (_playerOne.player != null)
-				_playerOne.player.sendPacket(reason);
+			_playerTwo.setDefaulted(true);
+			if (_playerOne.getPlayer() != null)
+			{
+				_playerOne.getPlayer().sendPacket(reason);
+			}
 		}
-
-		return _playerOne.defaulted || _playerTwo.defaulted;
+		
+		return _playerOne.isDefaulted() || _playerTwo.isDefaulted();
 	}
-
+	
 	@Override
 	public final void resetDamage()
 	{
 		_damageP1 = 0;
 		_damageP2 = 0;
 	}
-
+	
 	protected static final void saveResults(Participant one, Participant two, int _winner, long _startTime, long _fightTime, CompetitionType type)
 	{
 		Connection con = null;
@@ -597,10 +698,10 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 		{
 			con = L2DatabaseFactory.getInstance().getConnection();
 			PreparedStatement statement = con.prepareStatement("INSERT INTO olympiad_fights (charOneId, charTwoId, charOneClass, charTwoClass, winner, start, time, classed) values(?,?,?,?,?,?,?,?)");
-			statement.setInt(1, one.objectId);
-			statement.setInt(2, two.objectId);
-			statement.setInt(3, one.baseClass);
-			statement.setInt(4, two.baseClass);
+			statement.setInt(1, one.getObjectId());
+			statement.setInt(2, two.getObjectId());
+			statement.setInt(3, one.getBaseClass());
+			statement.setInt(4, two.getBaseClass());
 			statement.setInt(5, _winner);
 			statement.setLong(6, _startTime);
 			statement.setLong(7, _fightTime);
@@ -610,8 +711,10 @@ abstract public class OlympiadGameNormal extends AbstractOlympiadGame
 		}
 		catch (SQLException e)
 		{
-			if(_log.isLoggable(Level.SEVERE))
+			if (_log.isLoggable(Level.SEVERE))
+			{
 				_log.log(Level.SEVERE, "SQL exception while saving olympiad fight.", e);
+			}
 		}
 		finally
 		{

+ 99 - 98
L2J_Server_BETA/java/com/l2jserver/gameserver/model/olympiad/OlympiadGameTeams.java

@@ -65,8 +65,8 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 			{
 				par = teamOne[i];
 				_teamOne[i] = par;
-				if (par.player != null)
-					par.player.setOlympiadGameId(id);
+				if (par.getPlayer() != null)
+					par.getPlayer().setOlympiadGameId(id);
 			}
 			else
 				_teamOne[i] = new Participant(IdFactory.getInstance().getNextId(), 1);
@@ -75,8 +75,8 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 			{
 				par = teamTwo[i];
 				_teamTwo[i] = par;
-				if (par.player != null)
-					par.player.setOlympiadGameId(id);
+				if (par.getPlayer() != null)
+					par.getPlayer().setOlympiadGameId(id);
 			}
 			else
 				_teamTwo[i] = new Participant(IdFactory.getInstance().getNextId(), 2);
@@ -195,13 +195,13 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 	{
 		for (int i = _teamOneSize; --i >= 0;)
 		{
-			if (_teamOne[i].objectId == playerId)
+			if (_teamOne[i].getObjectId() == playerId)
 				return true;
 		}
 
 		for (int i = _teamTwoSize; --i >= 0;)
 		{
-			if (_teamTwo[i].objectId == playerId)
+			if (_teamTwo[i].getObjectId() == playerId)
 				return true;
 		}
 		return false;
@@ -234,9 +234,10 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		for (int i = 0; i < _teamOneSize; i++)
 		{
 			par = _teamOne[i];
-			par.updatePlayer();
-			if (par.player != null)
-				par.player.sendPacket(packet);
+			if (par.updatePlayer())
+			{
+				par.getPlayer().sendPacket(packet);
+			}
 		}
 
 		for (int i = 0; i < _teamTwoSize; i++)
@@ -244,8 +245,8 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 			par = _teamTwo[i];
 			par.
 			updatePlayer();
-			if (par.player != null)
-				par.player.sendPacket(packet);
+			if (par.getPlayer() != null)
+				par.getPlayer().sendPacket(packet);
 		}
 	}
 
@@ -280,10 +281,10 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 	protected final void removals()
 	{
 		for (int i = _teamOneSize; --i >= 0;)
-			removals(_teamOne[i].player, false);
+			removals(_teamOne[i].getPlayer(), false);
 
 		for (int i = _teamTwoSize; --i >= 0;)
-			removals(_teamTwo[i].player, false);
+			removals(_teamTwo[i].getPlayer(), false);
 	}
 
 	@Override
@@ -296,21 +297,21 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		for (int i = 0; i < _teamOneSize; i++)
 		{
 			par = _teamOne[i];
-			if (par.player == null)
+			if (par.getPlayer() == null)
 				return false;
 
-			par.player.setIsOlympiadStart(true);
-			par.player.updateEffectIcons();
+			par.getPlayer().setIsOlympiadStart(true);
+			par.getPlayer().updateEffectIcons();
 		}
 
 		for (int i = 0; i < _teamTwoSize; i++)
 		{
 			par = _teamTwo[i];
-			if (par.player == null)
+			if (par.getPlayer() == null)
 				return false;
 
-			par.player.setIsOlympiadStart(true);
-			par.player.updateEffectIcons();
+			par.getPlayer().setIsOlympiadStart(true);
+			par.getPlayer().updateEffectIcons();
 		}
 		return true;
 	}
@@ -322,21 +323,21 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		for (int i = _teamOneSize; --i >= 0;)
 		{
 			par = _teamOne[i];
-			if (par.player != null
-					&& !par.defaulted
-					&& !par.disconnected
-					&& par.player.getOlympiadGameId() == _stadiumID)
-				cleanEffects(par.player);
+			if (par.getPlayer() != null
+					&& !par.isDefaulted()
+					&& !par.isDisconnected()
+					&& par.getPlayer().getOlympiadGameId() == _stadiumID)
+				cleanEffects(par.getPlayer());
 		}
 
 		for (int i = _teamTwoSize; --i >= 0;)
 		{
 			par = _teamTwo[i];
-			if (par.player != null
-					&& !par.defaulted
-					&& !par.disconnected
-					&& par.player.getOlympiadGameId() == _stadiumID)
-				cleanEffects(par.player);
+			if (par.getPlayer() != null
+					&& !par.isDefaulted()
+					&& !par.isDisconnected()
+					&& par.getPlayer().getOlympiadGameId() == _stadiumID)
+				cleanEffects(par.getPlayer());
 		}
 	}
 
@@ -347,19 +348,19 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		for (int i = _teamOneSize; --i >= 0;)
 		{
 			par = _teamOne[i];
-			if (par.player != null
-					&& !par.defaulted
-					&& !par.disconnected)
-				portPlayerBack(par.player);
+			if (par.getPlayer() != null
+					&& !par.isDefaulted()
+					&& !par.isDisconnected())
+				portPlayerBack(par.getPlayer());
 		}
 
 		for (int i = _teamTwoSize; --i >= 0;)
 		{
 			par = _teamTwo[i];
-			if (par.player != null
-					&& !par.defaulted
-					&& !par.disconnected)
-				portPlayerBack(par.player);
+			if (par.getPlayer() != null
+					&& !par.isDefaulted()
+					&& !par.isDisconnected())
+				portPlayerBack(par.getPlayer());
 		}
 	}
 
@@ -370,21 +371,21 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		for (int i = _teamOneSize; --i >= 0;)
 		{
 			par = _teamOne[i];
-			if (par.player != null
-					&& !par.defaulted
-					&& !par.disconnected
-					&& par.player.getOlympiadGameId() == _stadiumID)
-				playerStatusBack(par.player);
+			if (par.getPlayer() != null
+					&& !par.isDefaulted()
+					&& !par.isDisconnected()
+					&& par.getPlayer().getOlympiadGameId() == _stadiumID)
+				playerStatusBack(par.getPlayer());
 		}
 
 		for (int i = _teamTwoSize; --i >= 0;)
 		{
 			par = _teamTwo[i];
-			if (par.player != null
-					&& !par.defaulted
-					&& !par.disconnected
-					&& par.player.getOlympiadGameId() == _stadiumID)
-				playerStatusBack(par.player);
+			if (par.getPlayer() != null
+					&& !par.isDefaulted()
+					&& !par.isDisconnected()
+					&& par.getPlayer().getOlympiadGameId() == _stadiumID)
+				playerStatusBack(par.getPlayer());
 		}
 	}
 
@@ -394,14 +395,14 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		for (int i = 0; i < MAX_TEAM_SIZE; i++)
 		{
 			if (i < _teamOneSize)
-				_teamOne[i].player = null;
+				_teamOne[i].setPlayer(null);
 			else
-				IdFactory.getInstance().releaseId(_teamOne[i].objectId);
+				IdFactory.getInstance().releaseId(_teamOne[i].getObjectId());
 
 			if (i < _teamTwoSize)
-				_teamTwo[i].player = null;
+				_teamTwo[i].setPlayer(null);
 			else
-				IdFactory.getInstance().releaseId(_teamTwo[i].objectId);
+				IdFactory.getInstance().releaseId(_teamTwo[i].getObjectId());
 
 			_teamOne[i] = null;
 			_teamTwo[i] = null;
@@ -415,9 +416,9 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		for (int i = _teamOneSize; --i >= 0;)
 		{
 			par = _teamOne[i];
-			if (par.objectId == player.getObjectId())
+			if (par.getObjectId() == player.getObjectId())
 			{
-				par.disconnected = true;
+				par.setDisconnected(true);
 				return;
 			}
 		}
@@ -425,9 +426,9 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		for (int i = _teamTwoSize; --i >= 0;)
 		{
 			par = _teamTwo[i];
-			if (par.objectId == player.getObjectId())
+			if (par.getObjectId() == player.getObjectId())
 			{
-				par.disconnected = true;
+				par.setDisconnected(true);
 				return;
 			}
 		}
@@ -445,20 +446,20 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		for (int i = _teamOneSize; --i >= 0;)
 		{
 			par = _teamOne[i];
-			if (!par.disconnected)
+			if (!par.isDisconnected())
 			{
-				if (par.player != null && par.player.getOlympiadGameId() == _stadiumID)
-					teamOneLost &= par.player.isDead();
+				if (par.getPlayer() != null && par.getPlayer().getOlympiadGameId() == _stadiumID)
+					teamOneLost &= par.getPlayer().isDead();
 			}
 		}
 
 		for (int i = _teamTwoSize; --i >= 0;)
 		{
 			par = _teamTwo[i];
-			if (!par.disconnected)
+			if (!par.isDisconnected())
 			{
-				if (par.player != null && par.player.getOlympiadGameId() == _stadiumID)
-					teamTwoLost &= par.player.isDead();
+				if (par.getPlayer() != null && par.getPlayer().getOlympiadGameId() == _stadiumID)
+					teamTwoLost &= par.getPlayer().isDead();
 			}
 		}
 		
@@ -503,7 +504,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 					for (int i = _teamOneSize; --i >= 0;)
 					{
 						par = _teamOne[i];
-						removePointsFromParticipant(par, Math.min(par.stats.getInteger(POINTS) / 3, Config.ALT_OLY_MAX_POINTS));
+						removePointsFromParticipant(par, Math.min(par.getStats().getInteger(POINTS) / 3, Config.ALT_OLY_MAX_POINTS));
 					}
 				}
 				if (_teamTwoDefaulted)
@@ -511,7 +512,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 					for (int i = _teamTwoSize; --i >= 0;)
 					{
 						par = _teamTwo[i];
-						removePointsFromParticipant(par, Math.min(par.stats.getInteger(POINTS) / 3, Config.ALT_OLY_MAX_POINTS));
+						removePointsFromParticipant(par, Math.min(par.getStats().getInteger(POINTS) / 3, Config.ALT_OLY_MAX_POINTS));
 					}
 				}
 			}
@@ -531,7 +532,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		int totalPointsTeamTwo = 0;
 		for (int i = 0; i < _teamOneSize; i++)
 		{
-			points = _teamOne[i].stats.getInteger(POINTS) / getDivider();
+			points = _teamOne[i].getStats().getInteger(POINTS) / getDivider();
 			if (points <= 0)
 				points = 1;
 			else if (points > Config.ALT_OLY_MAX_POINTS)
@@ -544,7 +545,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 
 		for (int i = _teamTwoSize; --i >= 0;)
 		{
-			points = _teamTwo[i].stats.getInteger(POINTS) / getDivider();
+			points = _teamTwo[i].getStats().getInteger(POINTS) / getDivider();
 			if (points <= 0)
 				points = 1;
 			else if (points > Config.ALT_OLY_MAX_POINTS)
@@ -609,7 +610,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 				if (tTwoCrash && !tOneCrash)
 				{
 					sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_GAME);
-					sm.addString(_teamOne[0].name);
+					sm.addString(_teamOne[0].getName());
 					stadium.broadcastPacket(sm);
 
 					for (int i = 0; i < _teamTwoSize; i++)
@@ -629,12 +630,12 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 					}
 
 					for (int i = 0; i < _teamOneSize; i++)
-						rewardParticipant(_teamOne[i].player, getReward());
+						rewardParticipant(_teamOne[i].getPlayer(), getReward());
 				}
 				else if (tOneCrash && !tTwoCrash)
 				{
 					sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_GAME);
-					sm.addString(_teamTwo[0].name);
+					sm.addString(_teamTwo[0].getName());
 					stadium.broadcastPacket(sm);
 
 					for (int i = 0; i < _teamOneSize; i++)
@@ -654,7 +655,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 					}
 
 					for (int i = 0; i < _teamTwoSize; i++)
-						rewardParticipant(_teamTwo[i].player, getReward());
+						rewardParticipant(_teamTwo[i].getPlayer(), getReward());
 				}
 				else if (tOneCrash && tTwoCrash)
 				{
@@ -707,11 +708,11 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 			for (int i = _teamOneSize; --i >= 0;)
 			{
 				par = _teamOne[i];
-				if (!par.disconnected
-						&& par.player != null
-						&& !par.player.isDead())
+				if (!par.isDisconnected()
+						&& par.getPlayer() != null
+						&& !par.getPlayer().isDead())
 				{
-					hp = par.player.getCurrentHp() + par.player.getCurrentCp();
+					hp = par.getPlayer().getCurrentHp() + par.getPlayer().getCurrentCp();
 					if (hp >= 0.5)
 						teamOneHp += hp;
 				}
@@ -721,11 +722,11 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 			for (int i = _teamTwoSize; --i >= 0;)
 			{
 				par = _teamTwo[i];
-				if (!par.disconnected
-						&& par.player != null
-						&& !par.player.isDead())
+				if (!par.isDisconnected()
+						&& par.getPlayer() != null
+						&& !par.getPlayer().isDead())
 				{
-					hp = par.player.getCurrentHp() + par.player.getCurrentCp();
+					hp = par.getPlayer().getCurrentHp() + par.getPlayer().getCurrentCp();
 					if (hp >= 0.5)
 						teamTwoHp += hp;
 				}
@@ -736,7 +737,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 					|| (_damageT1 > _damageT2 && teamTwoHp != 0 && teamOneHp != 0))
 			{
 				sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_GAME);
-				sm.addString(_teamOne[0].name);
+				sm.addString(_teamOne[0].getName());
 				stadium.broadcastPacket(sm);
 
 				for (int i = 0; i < _teamTwoSize; i++)
@@ -756,13 +757,13 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 				}
 
 				for (int i = 0; i < _teamOneSize; i++)
-					rewardParticipant(_teamOne[i].player, getReward());
+					rewardParticipant(_teamOne[i].getPlayer(), getReward());
 			}
 			else if ((teamOneHp == 0 && teamTwoHp != 0)
 					|| (_damageT2 > _damageT1 && teamOneHp != 0 && teamTwoHp != 0))
 			{
 				sm = SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_GAME);
-				sm.addString(_teamTwo[0].name);
+				sm.addString(_teamTwo[0].getName());
 				stadium.broadcastPacket(sm);
 
 				for (int i = 0; i < _teamOneSize; i++)
@@ -782,7 +783,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 				}
 
 				for (int i = 0; i < _teamTwoSize; i++)
-					rewardParticipant(_teamTwo[i].player, getReward());
+					rewardParticipant(_teamTwo[i].getPlayer(), getReward());
 			}
 			else
 			{
@@ -792,7 +793,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 				{
 					par = _teamOne[i];
 					par.updateStat(COMP_DRAWN, 1);
-					points = Math.min(par.stats.getInteger(POINTS) / getDivider(), Config.ALT_OLY_MAX_POINTS);
+					points = Math.min(par.getStats().getInteger(POINTS) / getDivider(), Config.ALT_OLY_MAX_POINTS);
 					removePointsFromParticipant(par, points);
 				}
 
@@ -800,7 +801,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 				{
 					par = _teamTwo[i];
 					par.updateStat(COMP_DRAWN, 1);
-					points = Math.min(par.stats.getInteger(POINTS) / getDivider(), Config.ALT_OLY_MAX_POINTS);
+					points = Math.min(par.getStats().getInteger(POINTS) / getDivider(), Config.ALT_OLY_MAX_POINTS);
 					removePointsFromParticipant(par, points);
 				}
 			}
@@ -834,9 +835,9 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		for (int i = _teamOneSize; --i >= 0;)
 		{
 			par = _teamOne[i];
-			if (par.objectId == player.getObjectId())
+			if (par.getObjectId() == player.getObjectId())
 			{
-				if (!par.disconnected)
+				if (!par.isDisconnected())
 					_damageT1 += damage;
 				return;
 			}
@@ -845,9 +846,9 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 		for (int i = _teamTwoSize; --i >= 0;)
 		{
 			par = _teamTwo[i];
-			if (par.objectId == player.getObjectId())
+			if (par.getObjectId() == player.getObjectId())
 			{
-				if (!par.disconnected)
+				if (!par.isDisconnected())
 					_damageT2 += damage;
 				return;
 			}
@@ -857,7 +858,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 	@Override
 	public final String[] getPlayerNames()
 	{
-		return new String[] {_teamOne[0].name, _teamTwo[0].name};
+		return new String[] {_teamOne[0].getName(), _teamTwo[0].getName()};
 	}
 
 	@Override
@@ -871,17 +872,17 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 			{
 				par = _teamOne[i];
 				par.updatePlayer();
-				reason = checkDefaulted(par.player);
+				reason = checkDefaulted(par.getPlayer());
 				if (reason != null)
 				{
-					par.defaulted = true;
+					par.setDefaulted(true);
 					if (!_teamOneDefaulted)
 					{
 						_teamOneDefaulted = true;
 						for (Participant t : _teamTwo)
 						{
-							if (t.player != null)
-								t.player.sendPacket(reason);
+							if (t.getPlayer() != null)
+								t.getPlayer().sendPacket(reason);
 						}
 					}
 				}
@@ -892,17 +893,17 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 			{
 				par = _teamTwo[i];
 				par.updatePlayer();
-				reason = checkDefaulted(par.player);
+				reason = checkDefaulted(par.getPlayer());
 				if (reason != null)
 				{
-					par.defaulted = true;
+					par.setDefaulted(true);
 					if (!_teamTwoDefaulted)
 					{
 						_teamTwoDefaulted = true;
 						for (Participant t : _teamOne)
 						{
-							if (t.player != null)
-								t.player.sendPacket(reason);
+							if (t.getPlayer() != null)
+								t.getPlayer().sendPacket(reason);
 						}
 					}
 				}
@@ -928,7 +929,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 	{
 		for (int i = _teamOneSize; --i >= 0;)
 		{
-			if (!_teamOne[i].disconnected)
+			if (!_teamOne[i].isDisconnected())
 				return false;
 		}
 
@@ -939,7 +940,7 @@ public class OlympiadGameTeams extends AbstractOlympiadGame
 	{
 		for (int i = _teamTwoSize; --i >= 0;)
 		{
-			if (!_teamTwo[i].disconnected)
+			if (!_teamTwo[i].isDisconnected())
 				return false;
 		}
 

+ 116 - 17
L2J_Server_BETA/java/com/l2jserver/gameserver/model/olympiad/Participant.java

@@ -19,19 +19,19 @@ import com.l2jserver.gameserver.model.StatsSet;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 
 /**
- * @author DS
+ * @author DS, Zoey76
  */
 public final class Participant
 {
-	public final int objectId;
-	public L2PcInstance player;
-	public final String name;
-	public final int side;
-	public final int baseClass;
-	public boolean disconnected = false;
-	public boolean defaulted = false;
-	public final StatsSet stats;
-
+	private final int objectId;
+	private L2PcInstance player;
+	private final String name;
+	private final int side;
+	private final int baseClass;
+	private boolean disconnected = false;
+	private boolean defaulted = false;
+	private final StatsSet stats;
+	
 	public Participant(L2PcInstance plr, int olympiadSide)
 	{
 		objectId = plr.getObjectId();
@@ -39,9 +39,9 @@ public final class Participant
 		name = plr.getName();
 		side = olympiadSide;
 		baseClass = plr.getBaseClass();
-		stats = Olympiad.getNobleStats(objectId);
+		stats = Olympiad.getNobleStats(getObjectId());
 	}
-
+	
 	public Participant(int objId, int olympiadSide)
 	{
 		objectId = objId;
@@ -51,15 +51,114 @@ public final class Participant
 		baseClass = 0;
 		stats = null;
 	}
-
-	public final void updatePlayer()
+	
+	/**
+	 * Updates the reference to {@link #player}, if it's null or appears off-line.
+	 * @return {@code true} if after the update the player isn't null, {@code false} otherwise.
+	 */
+	public final boolean updatePlayer()
 	{
-		if (player == null || !player.isOnline())
-			player = L2World.getInstance().getPlayer(objectId);
+		if ((player == null) || !player.isOnline())
+		{
+			player = L2World.getInstance().getPlayer(getObjectId());
+		}
+		return (player != null);
 	}
-
+	
+	/**
+	 * @param statName
+	 * @param increment
+	 */
 	public final void updateStat(String statName, int increment)
 	{
 		stats.set(statName, Math.max(stats.getInteger(statName) + increment, 0));
 	}
+	
+	/**
+	 * @return the name the player's name.
+	 */
+	public String getName()
+	{
+		return name;
+	}
+	
+	/**
+	 * @return the player
+	 */
+	public L2PcInstance getPlayer()
+	{
+		return player;
+	}
+
+	/**
+	 * @return the objectId
+	 */
+	public int getObjectId()
+	{
+		return objectId;
+	}
+
+	/**
+	 * @return the stats
+	 */
+	public StatsSet getStats()
+	{
+		return stats;
+	}
+
+	/**
+	 * @param noble the player to set
+	 */
+	public void setPlayer(L2PcInstance noble)
+	{
+		player = noble;
+	}
+
+	/**
+	 * @return the side
+	 */
+	public int getSide()
+	{
+		return side;
+	}
+	
+	/**
+	 * @return the baseClass
+	 */
+	public int getBaseClass()
+	{
+		return baseClass;
+	}
+	
+	/**
+	 * @return the disconnected
+	 */
+	public boolean isDisconnected()
+	{
+		return disconnected;
+	}
+	
+	/**
+	 * @param val the disconnected to set
+	 */
+	public void setDisconnected(boolean val)
+	{
+		disconnected = val;
+	}
+	
+	/**
+	 * @return the defaulted
+	 */
+	public boolean isDefaulted()
+	{
+		return defaulted;
+	}
+	
+	/**
+	 * @param val the value to set.
+	 */
+	public void setDefaulted(boolean val)
+	{
+		defaulted = val;
+	}
 }

Plik diff jest za duży
+ 487 - 33
L2J_Server_BETA/java/com/l2jserver/gameserver/model/quest/Quest.java


+ 0 - 10
L2J_Server_BETA/java/com/l2jserver/gameserver/model/quest/QuestState.java

@@ -674,16 +674,6 @@ public final class QuestState
 		getQuest().addExpAndSp(getPlayer(), exp, sp);
 	}
 	
-	/**
-	 * Return random value
-	 * @param max : max value for randomisation
-	 * @return int
-	 */
-	public int getRandom(int max)
-	{
-		return getQuest().getRandom(max);
-	}
-	
 	/**
 	 * @param loc 
 	 * @return number of ticks from GameTimeController

+ 122 - 42
L2J_Server_BETA/java/com/l2jserver/gameserver/network/SystemMessageId.java

@@ -1399,7 +1399,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 233<br>
-	 * Message:
+	 * Message: The Academy/Royal Guard/Order of Knights is full and cannot accept new members at this time.
 	 */
 	public static final SystemMessageId SUBCLAN_IS_FULL;
 	
@@ -1835,7 +1835,23 @@ public final class SystemMessageId
 	 */
 	public static final SystemMessageId PLAYER_DECLINED;
 	
-	// 306 - 308 empty
+	/**
+	 * ID: 306<br>
+	 * Message: You have failed to delete the character.
+	 */
+	public static final SystemMessageId FAILED_TO_DELETE_CHAR;
+	
+	/**
+	 * ID: 307<br>
+	 * Message: You cannot trade with a warehouse keeper.
+	 */
+	public static final SystemMessageId CANNOT_TRADE_WAREHOUSE_KEEPER;
+	
+	/**
+	 * ID: 308<br>
+	 * Message: The player declined your clan invitation.
+	 */
+	public static final SystemMessageId PLAYER_DECLINED_CLAN_INVITATION;
 	
 	/**
 	 * ID: 309<br>
@@ -1843,7 +1859,11 @@ public final class SystemMessageId
 	 */
 	public static final SystemMessageId YOU_HAVE_SUCCEEDED_IN_EXPELLING_CLAN_MEMBER;
 	
-	// 310 empty
+	/**
+	 * ID: 310<br>
+	 * Message: You have failed to expel the clan member.
+	 */
+	public static final SystemMessageId FAILED_TO_EXPEL_CLAN_MEMBER;
 	
 	/**
 	 * ID: 311<br>
@@ -2091,7 +2111,17 @@ public final class SystemMessageId
 	 */
 	public static final SystemMessageId NOT_ENOUGH_ITEMS;
 	
-	// 352 - 353: empty
+	/**
+	 * ID: 352<br>
+	 * Message: Incorrect item.
+	 */
+	public static final SystemMessageId INCORRECT_ITEM;
+	
+	/**
+	 * ID: 353<br>
+	 * Message: Cannot purchase.
+	 */
+	public static final SystemMessageId CANNOT_PURCHASE;
 	
 	/**
 	 * ID: 354<br>
@@ -2119,13 +2149,13 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 358<br>
-	 * Message: $s1 hour(s) until catle siege conclusion.
+	 * Message: $s1 hour(s) until castle siege conclusion.
 	 */
 	public static final SystemMessageId S1_HOURS_UNTIL_SIEGE_CONCLUSION;
 	
 	/**
 	 * ID: 359<br>
-	 * Message: $s1 minute(s) until catle siege conclusion.
+	 * Message: $s1 minute(s) until castle siege conclusion.
 	 */
 	public static final SystemMessageId S1_MINUTES_UNTIL_SIEGE_CONCLUSION;
 	
@@ -2363,7 +2393,11 @@ public final class SystemMessageId
 	 */
 	public static final SystemMessageId NO_TIME_LEFT_ON_ACCOUNT;
 	
-	// 399: empty
+	/**
+	 * ID: 399<br>
+	 * Message: System error.
+	 */
+	public static final SystemMessageId SYSTEM_ERROR;
 	
 	/**
 	 * ID: 400<br>
@@ -3613,17 +3647,27 @@ public final class SystemMessageId
 	 */
 	public static final SystemMessageId APPLICATION_DENIED_BECAUSE_ALREADY_SUBMITTED_A_REQUEST_FOR_ANOTHER_SIEGE_BATTLE;
 	
-	// 640 - 641: empty
+	/**
+	 * ID: 640<br>
+	 * Message: You have failed to refuse castle defense aid.
+	 */
+	public static final SystemMessageId FAILED_TO_REFUSE_CASTLE_DEFENSE_AID;
+	
+	/**
+	 * ID: 641<br>
+	 * Message: You have failed to approve castle defense aid.
+	 */
+	public static final SystemMessageId FAILED_TO_APPROVE_CASTLE_DEFENSE_AID;
 	
 	/**
 	 * ID: 642<br>
-	 * Message: You are already registered to the attacker side and must not cancel your registration before submitting your request
+	 * Message: You are already registered to the attacker side and must cancel your registration before submitting your request.
 	 */
 	public static final SystemMessageId ALREADY_ATTACKER_NOT_CANCEL;
 	
 	/**
 	 * ID: 643<br>
-	 * Message: You are already registered to the defender side and must not cancel your registration before submitting your request
+	 * Message: You have already registered to the defender side and must cancel your registration before submitting your request.
 	 */
 	public static final SystemMessageId ALREADY_DEFENDER_NOT_CANCEL;
 	
@@ -3639,7 +3683,17 @@ public final class SystemMessageId
 	 */
 	public static final SystemMessageId ONLY_CLAN_LEVEL_5_ABOVE_MAY_SIEGE;
 	
-	// 646 - 647: empty
+	/**
+	 * ID: 646<br>
+	 * Message: You do not have the authority to modify the castle defender list.
+	 */
+	public static final SystemMessageId DO_NOT_HAVE_AUTHORITY_TO_MODIFY_CASTLE_DEFENDER_LIST;
+	
+	/**
+	 * ID: 647<br>
+	 * Message: You do not have the authority to modify the siege time.
+	 */
+	public static final SystemMessageId DO_NOT_HAVE_AUTHORITY_TO_MODIFY_SIEGE_TIME;
 	
 	/**
 	 * ID: 648<br>
@@ -3731,7 +3785,11 @@ public final class SystemMessageId
 	 */
 	public static final SystemMessageId THE_PLAYER_IS_REJECTING_FRIEND_INVITATIONS;
 	
-	// 663 will crash client
+	/**
+	 * ID: 663<br>
+	 * Message: The siege time has been declared for $s. It is not possible to change the time after a siege time has been declared. Do you want to continue?
+	 */
+	public static final SystemMessageId SIEGE_TIME_DECLARED_FOR_S1;
 	
 	/**
 	 * ID: 664<br>
@@ -3831,7 +3889,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 680<br>
-	 * You cannot participate in an auction.
+	 * Message: You cannot participate in an auction.
 	 */
 	public static final SystemMessageId CANNOT_PARTICIPATE_IN_AN_AUCTION;
 	
@@ -3839,7 +3897,13 @@ public final class SystemMessageId
 	 * ID: 681<br>
 	 * Message: The clan does not own a clan hall.
 	 */
-	// CLAN_HAS_NO_CLAN_HALL(681) // Doesn't exist in Hellbound anymore
+	public static final SystemMessageId CLAN_HAS_NO_CLAN_HALL;
+	
+	/**
+	 * ID: 682<br>
+	 * Message: You are moving to another village. Do you want to continue?
+	 */
+	public static final SystemMessageId MOVING_TO_ANOTHER_VILLAGE;
 	
 	/**
 	 * ID: 683<br>
@@ -4119,7 +4183,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 730<br>
-	 * Message: - You have submitted your $s1th petition. - You may submit $s2 more petition(s) today.
+	 * Message: You have submitted $s1 petition(s). - You may submit $s2 more petition(s) today.
 	 */
 	public static final SystemMessageId SUBMITTED_YOU_S1_TH_PETITION_S2_LEFT;
 	
@@ -5061,13 +5125,13 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 896<br>
-	 * Message:The ferry has arrived at Gludin Harbor.
+	 * Message: The ferry has arrived at Gludin Harbor.
 	 */
 	public static final SystemMessageId FERRY_AT_GLUDIN;
 	
 	/**
 	 * ID: 897<br>
-	 * Message:The ferry will leave for Talking Island Harbor after anchoring for ten minutes.
+	 * Message: The ferry will leave for Talking Island Harbor after anchoring for ten minutes.
 	 */
 	public static final SystemMessageId FERRY_LEAVE_TALKING;
 	
@@ -6747,19 +6811,19 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1178<br>
-	 * <Seal of Avarice description>
+	 * Message: <Seal of Avarice description>
 	 */
 	public static final SystemMessageId AVARICE_DESCRIPTION;
 	
 	/**
 	 * ID: 1179<br>
-	 * <Seal of Gnosis description>
+	 * Message: <Seal of Gnosis description>
 	 */
 	public static final SystemMessageId GNOSIS_DESCRIPTION;
 	
 	/**
 	 * ID: 1180<br>
-	 * <Seal of Strife description>
+	 * Message: <Seal of Strife description>
 	 */
 	public static final SystemMessageId STRIFE_DESCRIPTION;
 	
@@ -7185,7 +7249,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1251<br>
-	 * you will not be able to accept another clan to your alliance for one day.
+	 * Message: Are you sure you want to dismiss the alliance? If you use the /allydismiss command, you will not be able to accept another clan to your alliance for one day.
 	 */
 	public static final SystemMessageId DISMISS_ALLY_CONFIRM;
 	
@@ -7425,13 +7489,13 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1291<br>
-	 * because less than 10 percent of people have voted.
+	 * Message: Although the seal was owned during the previous period, less than 10% of people have voted.
 	 */
 	public static final SystemMessageId SEAL_OWNED_10_LESS_VOTED;
 	
 	/**
 	 * ID: 1292<br>
-	 * and since less than 35 percent of people have voted.
+	 * Message: Since the seal was not owned during the previous period, and since less than 35 percent of people have voted.
 	 */
 	public static final SystemMessageId SEAL_NOT_OWNED_35_LESS_VOTED;
 	
@@ -7503,7 +7567,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1304<br>
-	 * except for an Alliance with a castle owning clan.
+	 * Message: The influence of the Seal of Strife has caused all defensive registrations to be canceled.
 	 */
 	public static final SystemMessageId STRIFE_CANCELED_DEFENSIVE_REGISTRATION;
 	
@@ -7533,7 +7597,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1309<br>
-	 * Message:To use this option, you must have the lastest version of MSN Messenger installed on your computer.
+	 * Message: To use this option, you must have the lastest version of MSN Messenger installed on your computer.
 	 */
 	public static final SystemMessageId LATEST_MSN_REQUIRED;
 	
@@ -9519,7 +9583,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1641<br>
-	 * and make haste to a Grand Olympiad Manager! Battles in the Grand Olympiad Games are now taking place!
+	 * Message: Sharpen your swords, tighten the stitching in your armor, and make haste to a Grand Olympiad Manager! Battles in the Grand Olympiad Games are now taking place!
 	 */
 	public static final SystemMessageId THE_OLYMPIAD_GAME_HAS_STARTED;
 	
@@ -9935,7 +9999,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1715<br>
-	 * Message: This is a Peaceful Zone
+	 * Message: This is a Peaceful Zone - PvP is not allowed in this area.
 	 */
 	public static final SystemMessageId PEACEFUL_ZONE;
 	
@@ -9947,7 +10011,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1717<br>
-	 * Message: Siege War Zone
+	 * Message: Siege War Zone - A siege is currently in progress in this area. If a character dies in this zone, their resurrection ability may be restricted.
 	 */
 	public static final SystemMessageId SIEGE_ZONE;
 	
@@ -9959,7 +10023,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1719<br>
-	 * Message: Seven Signs Zone
+	 * Message: Seven Signs Zone - Although a character's level may increase while in this area, HP and MP will not be regenerated.
 	 */
 	public static final SystemMessageId SEVENSIGNS_ZONE;
 	
@@ -10499,7 +10563,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1809<br>
-	 * please visit the PlayNC website (http://www.plaync.com/us/support/)
+	 * Message: Your account must be verified. For information on verification procedures, please visit the PlayNC website (http://us.ncsoft.com/support/).
 	 */
 	public static final SystemMessageId ACCOUNT_MUST_VERIFIED;
 	
@@ -10679,7 +10743,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1840<br>
-	 * Message: 3. If you enter the incorrect serial number more than 5 times, ...
+	 * Message: 3. If you enter the incorrect serial number more than 5 times, you may use it again after a certain amount of time passes.
 	 */
 	public static final SystemMessageId SERIAL_INPUT_INCORRECT;
 	
@@ -11057,7 +11121,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 1903<br>
-	 * Message: Those of you who have requested NCOTP should run NCOTP by using your cell phone [...]
+	 * Message: Those of you who have requested NCOTP should run NCOTP by using your cell phone to get the NCOTP password and enter it within 1 minute. If you have not requested NCOTP, leave this field blank and click the Login button.
 	 */
 	public static final SystemMessageId NCOTP;
 	
@@ -11416,7 +11480,7 @@ public final class SystemMessageId
 	public static final SystemMessageId THE_ITEM_WAS_SUCCESSFULLY_AUGMENTED;
 	
 	/**
-	 * ID : 1963<br>
+	 * ID: 1963<br>
 	 * Message: Select the item from which you wish to remove augmentation.
 	 */
 	public static final SystemMessageId SELECT_THE_ITEM_FROM_WHICH_YOU_WISH_TO_REMOVE_AUGMENTATION;
@@ -11885,7 +11949,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 2042<br>
-	 * Message: This account has been suspended for non-payment based on the cell phone payment agreement.\\n Please submit proof of payment by fax (02-2186-3499) and contact customer service at 1600-0020.
+	 * Message: This account has been suspended for non-payment based on the cell phone payment agreement. Please submit proof of payment by fax (02-2186-3499) and contact customer service at 1600-0020.
 	 */
 	public static final SystemMessageId ILLEGAL_USE23;
 	
@@ -12779,7 +12843,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 2191<br>
-	 * it will applied when you start the game next time. Will you apply now?
+	 * Message: To apply selected options, the game needs to be reloaded. If you don't apply now, it will be applied when you start the game next time. Will you apply now?
 	 */
 	public static final SystemMessageId CONFIRM_APPLY_SELECTIONS;
 	
@@ -13091,7 +13155,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 2243<br>
-	 * the previous clan lord rather than the new clan lord participates in the clan hall battle.
+	 * Message: During the Bandit Stronghold or Wild Beast Reserve clan hall war, the previous clan lord rather than the new clan lord participates in battle.
 	 */
 	public static final SystemMessageId WHEN_BANDITSTRONGHOLD_WILDBEASTRESERVRE_CLANLORD_IN_DANGER_PREVIOUS_LORD_PARTICIPATES_IN_BATTLE;
 	
@@ -13505,7 +13569,7 @@ public final class SystemMessageId
 	
 	/**
 	 * ID: 2373<br>
-	 * The hunting helper pet is now leaving.
+	 * Message: The hunting helper pet is now leaving.
 	 */
 	public static final SystemMessageId THE_HELPER_PET_LEAVING;
 	
@@ -13684,19 +13748,19 @@ public final class SystemMessageId
 	public static final SystemMessageId THE_AIRSHIP_SUMMON_LICENSE_ALREADY_ACQUIRED;
 	
 	/**
-	 * ID:2460<br>
+	 * ID: 2460<br>
 	 * Message: The clan owned airship already exists.
 	 */
 	public static final SystemMessageId THE_AIRSHIP_IS_ALREADY_EXISTS;
 	
 	/**
-	 * ID:2461<br>
+	 * ID: 2461<br>
 	 * Message: The airship owned by the clan can only be purchased by the clan lord.
 	 */
 	public static final SystemMessageId THE_AIRSHIP_NO_PRIVILEGES;
 	
 	/**
-	 * ID:2462<br>
+	 * ID: 2462<br>
 	 * Message: The airship cannot be summoned because you don't have enough $s1%.
 	 */
 	public static final SystemMessageId THE_AIRSHIP_NEED_MORE_S1;
@@ -14721,12 +14785,14 @@ public final class SystemMessageId
 	public static final SystemMessageId MAX_OLY_WEEKLY_MATCHES_REACHED;
 	
 	/***
-	 * ID: 3225 Message: The total number of matches that can be entered in 1 week is 60 class irrelevant individual matches, 30 specific matches, and 10 team matches.
+	 * ID: 3225<br>
+	 * Message: The total number of matches that can be entered in 1 week is 60 class irrelevant individual matches, 30 specific matches, and 10 team matches.
 	 */
 	public static final SystemMessageId MAX_OLY_WEEKLY_MATCHES_REACHED_60_NON_CLASSED_30_CLASSED_10_TEAM;
 	
 	/***
-	 * ID: 3226 Message: You cannot move while speaking to an NPC. One moment please.
+	 * ID: 3226<br>
+	 * Message: You cannot move while speaking to an NPC. One moment please.
 	 */
 	public static final SystemMessageId CANNOT_MOVE_WHILE_SPEAKING_TO_AN_NPC;
 	
@@ -15091,7 +15157,11 @@ public final class SystemMessageId
 		SELECT_ITEM_TO_ENCHANT = new SystemMessageId(303);
 		CLAN_MEMBER_S1_LOGGED_IN = new SystemMessageId(304);
 		PLAYER_DECLINED = new SystemMessageId(305);
+		FAILED_TO_DELETE_CHAR = new SystemMessageId(306);
+		CANNOT_TRADE_WAREHOUSE_KEEPER = new SystemMessageId(307);
+		PLAYER_DECLINED_CLAN_INVITATION = new SystemMessageId(308);
 		YOU_HAVE_SUCCEEDED_IN_EXPELLING_CLAN_MEMBER = new SystemMessageId(309);
+		FAILED_TO_EXPEL_CLAN_MEMBER = new SystemMessageId(310);
 		CLAN_WAR_DECLARATION_ACCEPTED = new SystemMessageId(311);
 		CLAN_WAR_DECLARATION_REFUSED = new SystemMessageId(312);
 		CEASE_WAR_REQUEST_ACCEPTED = new SystemMessageId(313);
@@ -15133,6 +15203,8 @@ public final class SystemMessageId
 		PRIVATE_STORE_ALREADY_CLOSED = new SystemMessageId(349);
 		ITEM_OUT_OF_STOCK = new SystemMessageId(350);
 		NOT_ENOUGH_ITEMS = new SystemMessageId(351);
+		INCORRECT_ITEM = new SystemMessageId(352);
+		CANNOT_PURCHASE = new SystemMessageId(353);
 		CANCEL_ENCHANT = new SystemMessageId(354);
 		INAPPROPRIATE_ENCHANT_CONDITION = new SystemMessageId(355);
 		REJECT_RESURRECTION = new SystemMessageId(356);
@@ -15178,6 +15250,7 @@ public final class SystemMessageId
 		TRY_AGAIN_AFTER_CHANGING_PASSWORD = new SystemMessageId(396);
 		NO_PAID_ACCOUNT = new SystemMessageId(397);
 		NO_TIME_LEFT_ON_ACCOUNT = new SystemMessageId(398);
+		SYSTEM_ERROR = new SystemMessageId(399);
 		WISH_TO_DROP_S1 = new SystemMessageId(400);
 		TOO_MANY_QUESTS = new SystemMessageId(401);
 		NOT_CORRECT_BOAT_TICKET = new SystemMessageId(402);
@@ -15386,10 +15459,14 @@ public final class SystemMessageId
 		ALLY_REGISTERED_SELF_TO_OPPONENT = new SystemMessageId(637);
 		ALREADY_REQUESTED_SIEGE_BATTLE = new SystemMessageId(638);
 		APPLICATION_DENIED_BECAUSE_ALREADY_SUBMITTED_A_REQUEST_FOR_ANOTHER_SIEGE_BATTLE = new SystemMessageId(639);
+		FAILED_TO_REFUSE_CASTLE_DEFENSE_AID = new SystemMessageId(640);
+		FAILED_TO_APPROVE_CASTLE_DEFENSE_AID = new SystemMessageId(641);
 		ALREADY_ATTACKER_NOT_CANCEL = new SystemMessageId(642);
 		ALREADY_DEFENDER_NOT_CANCEL = new SystemMessageId(643);
 		NOT_REGISTERED_FOR_SIEGE = new SystemMessageId(644);
 		ONLY_CLAN_LEVEL_5_ABOVE_MAY_SIEGE = new SystemMessageId(645);
+		DO_NOT_HAVE_AUTHORITY_TO_MODIFY_CASTLE_DEFENDER_LIST = new SystemMessageId(646);
+		DO_NOT_HAVE_AUTHORITY_TO_MODIFY_SIEGE_TIME = new SystemMessageId(647);
 		ATTACKER_SIDE_FULL = new SystemMessageId(648);
 		DEFENDER_SIDE_FULL = new SystemMessageId(649);
 		YOU_MAY_NOT_SUMMON_FROM_YOUR_CURRENT_LOCATION = new SystemMessageId(650);
@@ -15405,6 +15482,7 @@ public final class SystemMessageId
 		NOT_SIEGE_REGISTRATION_TIME2 = new SystemMessageId(660);
 		SPOIL_CANNOT_USE = new SystemMessageId(661);
 		THE_PLAYER_IS_REJECTING_FRIEND_INVITATIONS = new SystemMessageId(662);
+		SIEGE_TIME_DECLARED_FOR_S1 = new SystemMessageId(663);
 		CHOOSE_PERSON_TO_RECEIVE = new SystemMessageId(664);
 		APPLYING_ALLIANCE_WAR = new SystemMessageId(665);
 		REQUEST_FOR_CEASEFIRE = new SystemMessageId(666);
@@ -15422,6 +15500,8 @@ public final class SystemMessageId
 		SUBMITTED_A_BID = new SystemMessageId(678);
 		CANCELED_BID = new SystemMessageId(679);
 		CANNOT_PARTICIPATE_IN_AN_AUCTION = new SystemMessageId(680);
+		CLAN_HAS_NO_CLAN_HALL = new SystemMessageId(681);
+		MOVING_TO_ANOTHER_VILLAGE = new SystemMessageId(681);
 		SWEEP_NOT_ALLOWED = new SystemMessageId(683);
 		CANNOT_POSITION_MERCS_DURING_SIEGE = new SystemMessageId(684);
 		CANNOT_DECLARE_WAR_ON_ALLY = new SystemMessageId(685);

+ 16 - 4
L2J_Server_BETA/java/com/l2jserver/gameserver/network/clientpackets/RequestMagicSkillUse.java

@@ -22,6 +22,7 @@ import com.l2jserver.gameserver.datatables.SkillTable;
 import com.l2jserver.gameserver.model.L2CharPosition;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 import com.l2jserver.gameserver.model.actor.position.PcPosition;
+import com.l2jserver.gameserver.model.holders.SkillHolder;
 import com.l2jserver.gameserver.model.skills.L2Skill;
 import com.l2jserver.gameserver.model.skills.L2SkillType;
 import com.l2jserver.gameserver.model.skills.targets.L2TargetType;
@@ -53,17 +54,28 @@ public final class RequestMagicSkillUse extends L2GameClientPacket
 	protected void runImpl()
 	{
 		// Get the current L2PcInstance of the player
-		L2PcInstance activeChar = getClient().getActiveChar();
-		
+		final L2PcInstance activeChar = getClient().getActiveChar();
 		if (activeChar == null)
+		{
 			return;
+		}
 		
 		// Get the level of the used skill
 		int level = activeChar.getSkillLevel(_magicId);
 		if (level <= 0)
 		{
-			activeChar.sendPacket(ActionFailed.STATIC_PACKET);
-			return;
+			// Player doesn't know this skill, maybe it's the display Id.
+			final SkillHolder customSkill = activeChar.getCustomSkills().get(_magicId);
+			if (customSkill != null)
+			{
+				_magicId = customSkill.getSkillId();
+				level = customSkill.getSkillLvl();
+			}
+			else
+			{
+				activeChar.sendPacket(ActionFailed.STATIC_PACKET);
+				return;
+			}
 		}
 		
 		// Get the L2Skill template corresponding to the skillID received from the client

+ 5 - 5
L2J_Server_BETA/java/com/l2jserver/gameserver/network/serverpackets/ExOlympiadUserInfo.java

@@ -58,7 +58,7 @@ public class ExOlympiadUserInfo extends L2GameServerPacket
 	public ExOlympiadUserInfo(Participant par)
 	{
 		_par = par;
-		_player = par.player;
+		_player = par.getPlayer();
 		if (_player != null)
 		{
 			_curHp = (int)_player.getCurrentHp();
@@ -89,10 +89,10 @@ public class ExOlympiadUserInfo extends L2GameServerPacket
 		}
 		else
 		{
-			writeC(_par.side);
-			writeD(_par.objectId);
-			writeS(_par.name);
-			writeD(_par.baseClass);
+			writeC(_par.getSide());
+			writeD(_par.getObjectId());
+			writeS(_par.getName());
+			writeD(_par.getBaseClass());
 		}
 
 		writeD(_curHp);

+ 1 - 1
L2J_Server_BETA/java/com/l2jserver/gameserver/network/serverpackets/SkillCoolTime.java

@@ -32,7 +32,7 @@ public class SkillCoolTime extends L2GameServerPacket
 	{
 		for (TimeStamp ts : cha.getSkillReuseTimeStamps().values())
 		{
-			if (!ts.hasNotPassed())
+			if (ts.hasNotPassed())
 			{
 				_skillReuseTimeStamps.add(ts);
 			}

+ 17 - 20
L2J_Server_BETA/java/com/l2jserver/gameserver/network/serverpackets/SkillList.java

@@ -19,28 +19,25 @@ import java.util.List;
 import javolution.util.FastList;
 
 /**
- *
- *
- * sample
- * 0000: 6d 0c 00 00 00 00 00 00 00 03 00 00 00 f3 03 00    m...............
- * 0010: 00 00 00 00 00 01 00 00 00 f4 03 00 00 00 00 00    ................
- * 0020: 00 01 00 00 00 10 04 00 00 00 00 00 00 01 00 00    ................
- * 0030: 00 2c 04 00 00 00 00 00 00 03 00 00 00 99 04 00    .,..............
- * 0040: 00 00 00 00 00 02 00 00 00 a0 04 00 00 00 00 00    ................
- * 0050: 00 01 00 00 00 c0 04 00 00 01 00 00 00 01 00 00    ................
- * 0060: 00 76 00 00 00 01 00 00 00 01 00 00 00 a3 00 00    .v..............
- * 0070: 00 01 00 00 00 01 00 00 00 c2 00 00 00 01 00 00    ................
- * 0080: 00 01 00 00 00 d6 00 00 00 01 00 00 00 01 00 00    ................
- * 0090: 00 f4 00 00 00
- *
- * format   d (ddd)
- *
+ * Sample:<br>
+ * 0000: 6d 0c 00 00 00 00 00 00 00 03 00 00 00 f3 03 00 m...............<br>
+ * 0010: 00 00 00 00 00 01 00 00 00 f4 03 00 00 00 00 00 ................<br>
+ * 0020: 00 01 00 00 00 10 04 00 00 00 00 00 00 01 00 00 ................<br>
+ * 0030: 00 2c 04 00 00 00 00 00 00 03 00 00 00 99 04 00 .,..............<br>
+ * 0040: 00 00 00 00 00 02 00 00 00 a0 04 00 00 00 00 00 ................<br>
+ * 0050: 00 01 00 00 00 c0 04 00 00 01 00 00 00 01 00 00 ................<br>
+ * 0060: 00 76 00 00 00 01 00 00 00 01 00 00 00 a3 00 00 .v..............<br>
+ * 0070: 00 01 00 00 00 01 00 00 00 c2 00 00 00 01 00 00 ................<br>
+ * 0080: 00 01 00 00 00 d6 00 00 00 01 00 00 00 01 00 00 ................<br>
+ * 0090: 00 f4 00 00 00<br>
+ * <br>
+ * format d (ddd)
  * @version $Revision: 1.3.2.1.2.5 $ $Date: 2005/03/27 15:29:39 $
  */
 public final class SkillList extends L2GameServerPacket
 {
-	private static final String _S__6D_SKILLLIST = "[S] 5f SkillList";
-	private List<Skill> _skills;
+	private static final String _S__5F_SKILLLIST = "[S] 5F SkillList";
+	private final List<Skill> _skills;
 	
 	static class Skill
 	{
@@ -73,7 +70,7 @@ public final class SkillList extends L2GameServerPacket
 	@Override
 	protected final void writeImpl()
 	{
-		writeC(0x5f);
+		writeC(0x5F);
 		writeD(_skills.size());
 		
 		for (Skill temp : _skills)
@@ -89,6 +86,6 @@ public final class SkillList extends L2GameServerPacket
 	@Override
 	public String getType()
 	{
-		return _S__6D_SKILLLIST;
+		return _S__5F_SKILLLIST;
 	}
 }

+ 1 - 1
L2J_Server_BETA/java/com/l2jserver/gameserver/scripting/ManagedScript.java

@@ -40,7 +40,7 @@ public abstract class ManagedScript
 	 * Attempts to reload this script and to refresh the necessary bindings with it ScriptControler.<BR>
 	 * Subclasses of this class should override this method to properly refresh their bindings when necessary.
 	 * 
-	 * @return true if and only if the scrip was reloaded, false otherwise.
+	 * @return true if and only if the script was reloaded, false otherwise.
 	 */
 	public boolean reload()
 	{

+ 7 - 18
L2J_Server_BETA/java/com/l2jserver/gameserver/taskmanager/tasks/TaskDailySkillReuseClean.java

@@ -29,25 +29,19 @@ public class TaskDailySkillReuseClean extends Task
 {
 	private static final Logger _log = Logger.getLogger(TaskDailySkillReuseClean.class.getName());
 	
-	private static final String NAME = "daily_skill_clearn";
+	private static final String NAME = "daily_skill_clean";
 	
-	private static final int[] _daily_skills = {
-		2510
+	private static final int[] _daily_skills =
+	{
+		2510, 22180
 	};
-	/**
-	 * 
-	 * @see com.l2jserver.gameserver.taskmanager.Task#getName()
-	 */
+	
 	@Override
 	public String getName()
 	{
 		return NAME;
 	}
 	
-	/**
-	 * 
-	 * @see com.l2jserver.gameserver.taskmanager.Task#onTimeElapsed(com.l2jserver.gameserver.taskmanager.TaskManager.ExecutedTask)
-	 */
 	@Override
 	public void onTimeElapsed(ExecutedTask task)
 	{
@@ -55,7 +49,7 @@ public class TaskDailySkillReuseClean extends Task
 		try
 		{
 			con = L2DatabaseFactory.getInstance().getConnection();
-			for(int skill_id : _daily_skills)
+			for (int skill_id : _daily_skills)
 			{
 				PreparedStatement statement = con.prepareStatement("DELETE FROM character_skills_save WHERE skill_id=?;");
 				statement.setInt(1, skill_id);
@@ -71,18 +65,13 @@ public class TaskDailySkillReuseClean extends Task
 		{
 			L2DatabaseFactory.close(con);
 		}
-		_log.config("Daily skill reuse cleared");
+		_log.config("Daily skill reuse cleaned.");
 	}
 	
-	/**
-	 * 
-	 * @see com.l2jserver.gameserver.taskmanager.Task#initializate()
-	 */
 	@Override
 	public void initializate()
 	{
 		super.initializate();
 		TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
 	}
-	
 }

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików