Browse Source

few tweaks & fixes.

JIV 15 years ago
parent
commit
20468e83db

+ 2 - 2
L2_GameServer/java/com/l2jserver/gameserver/model/L2NpcAIData.java

@@ -175,7 +175,7 @@ public class L2NpcAIData
 	public void setClan(String clan)
 	{
 		if (clan != null && !clan.equals("") && !clan.equalsIgnoreCase("null"))
-			_clan = clan;
+			_clan = clan.intern();
 	}
 	
 	public void setClanRange(int clanRange)
@@ -186,7 +186,7 @@ public class L2NpcAIData
 	public void setEnemyClan(String enemyClan)
 	{
 		if (enemyClan != null && !enemyClan.equals("") && !enemyClan.equalsIgnoreCase("null"))
-			_enemyClan = enemyClan;
+			_enemyClan = enemyClan.intern();
 	}
 	
 	public void setEnemyRange(int enemyRange)

+ 0 - 41
L2_GameServer/java/com/l2jserver/gameserver/model/actor/L2Character.java

@@ -3534,12 +3534,6 @@ public abstract class L2Character extends L2Object
 	protected Future<?> _skillCast;
 	protected Future<?> _skillCast2;
 
-	/** Char Coords from Client */
-	private int _clientX;
-	private int _clientY;
-	private int _clientZ;
-	private int _clientHeading;
-
 	/**
 	 * Add a Func to the Calculator set of the L2Character.<BR><BR>
 	 *
@@ -3896,41 +3890,6 @@ public abstract class L2Character extends L2Object
 		_heading = heading;
 	}
 
-	/**
-	 * Return the X destination of the L2Character or the X position if not in movement.<BR><BR>
-	 */
-	public final int getClientX()
-	{
-		return _clientX;
-	}
-	public final int getClientY()
-	{
-		return _clientY;
-	}
-	public final int getClientZ()
-	{
-		return _clientZ;
-	}
-	public final int getClientHeading()
-	{
-		return _clientHeading;
-	}
-	public final void setClientX(int val)
-	{
-		_clientX=val;
-	}
-	public final void setClientY(int val)
-	{
-		_clientY=val;
-	}
-	public final void setClientZ(int val)
-	{
-		_clientZ=val;
-	}
-	public final void setClientHeading(int val)
-	{
-		_clientHeading=val;
-	}
 	public final int getXdestination()
 	{
 		MoveData m = _move;

+ 38 - 0
L2_GameServer/java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java

@@ -790,6 +790,12 @@ public final class L2PcInstance extends L2Playable
 	*/
 	private boolean _isRidingStrider = false;
 	private boolean _isFlyingMounted = false;
+	
+	/** Char Coords from Client */
+	private int _clientX;
+	private int _clientY;
+	private int _clientZ;
+	private int _clientHeading;
 
 	/** Herbs Task Time **/
 	private int _herbstask = 0;
@@ -14599,4 +14605,36 @@ public final class L2PcInstance extends L2Playable
 			return getBaseTemplate().fCollisionHeight;
 	}
 	
+	public final int getClientX()
+	{
+		return _clientX;
+	}
+	public final int getClientY()
+	{
+		return _clientY;
+	}
+	public final int getClientZ()
+	{
+		return _clientZ;
+	}
+	public final int getClientHeading()
+	{
+		return _clientHeading;
+	}
+	public final void setClientX(int val)
+	{
+		_clientX=val;
+	}
+	public final void setClientY(int val)
+	{
+		_clientY=val;
+	}
+	public final void setClientZ(int val)
+	{
+		_clientZ=val;
+	}
+	public final void setClientHeading(int val)
+	{
+		_clientHeading=val;
+	}
 }

+ 24 - 0
L2_GameServer/java/com/l2jserver/gameserver/network/clientpackets/CharacterCreate.java

@@ -109,6 +109,30 @@ public final class CharacterCreate extends L2GameClientPacket
 			return;
 		}
 		
+		if (_face > 2 || _face < 0)
+		{
+			_log.warning("Character Creation Failure: Character face " + _face + " is invalid. Possible client hack. "+getClient());
+			
+			sendPacket(new CharCreateFail(CharCreateFail.REASON_CREATION_FAILED));
+			return;
+		}
+		
+		if (_hairStyle < 0 || (_sex == 0 && _hairStyle > 4) || (_sex != 0 && _hairStyle > 6))
+		{
+			_log.warning("Character Creation Failure: Character hair style " + _hairStyle + " is invalid. Possible client hack. "+getClient());
+			
+			sendPacket(new CharCreateFail(CharCreateFail.REASON_CREATION_FAILED));
+			return;
+		}
+		
+		if (_hairColor > 3 || _hairColor < 0)
+		{
+			_log.warning("Character Creation Failure: Character hair color " + _hairColor + " is invalid. Possible client hack. "+getClient());
+			
+			sendPacket(new CharCreateFail(CharCreateFail.REASON_CREATION_FAILED));
+			return;
+		}
+		
 		L2PcInstance newChar = null;
 		L2PcTemplate template = null;
 		

+ 0 - 6
L2_GameServer/java/com/l2jserver/gameserver/network/clientpackets/RequestRestart.java

@@ -69,12 +69,6 @@ public final class RequestRestart extends L2GameClientPacket
 			return;
 		}
 
-		if (player.isTeleporting())
-		{
-			player.abortCast();
-			player.setIsTeleporting(false);
-		}
-
 		if (player.getPrivateStoreType() != 0)
 		{
 			player.sendMessage("Cannot restart while trading");

+ 2 - 2
L2_GameServer/java/com/l2jserver/gameserver/network/clientpackets/UseItem.java

@@ -223,9 +223,9 @@ public final class UseItem extends L2GameClientPacket
 				if (activeChar.isStunned()
 						|| activeChar.isSleeping()
 						|| activeChar.isParalyzed()
-						|| activeChar.isAlikeDead())
+						|| activeChar.isAlikeDead()
+						|| activeChar.isCastingNow())
 				{
-					activeChar.sendMessage("Your status does not allow you to do that.");
 					return;
 				}