Browse Source

BETA: Fixing wrong heading when character is casting a skill, it must be looking at the target he is casting at.

Rumen Nikiforov 11 years ago
parent
commit
2250cfbfe2

+ 2 - 0
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/L2Character.java

@@ -127,6 +127,7 @@ import com.l2jserver.gameserver.network.serverpackets.ActionFailed;
 import com.l2jserver.gameserver.network.serverpackets.Attack;
 import com.l2jserver.gameserver.network.serverpackets.ChangeMoveType;
 import com.l2jserver.gameserver.network.serverpackets.ChangeWaitType;
+import com.l2jserver.gameserver.network.serverpackets.ExRotation;
 import com.l2jserver.gameserver.network.serverpackets.L2GameServerPacket;
 import com.l2jserver.gameserver.network.serverpackets.MagicSkillCanceld;
 import com.l2jserver.gameserver.network.serverpackets.MagicSkillLaunched;
@@ -1871,6 +1872,7 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
 		if (target != this)
 		{
 			setHeading(Util.calculateHeadingFrom(this, target));
+			broadcastPacket(new ExRotation(getObjectId(), getHeading()));
 		}
 		
 		if (isPlayable())

+ 6 - 6
L2J_Server_BETA/java/com/l2jserver/gameserver/network/serverpackets/ExRotation.java

@@ -23,12 +23,12 @@ package com.l2jserver.gameserver.network.serverpackets;
  */
 public class ExRotation extends L2GameServerPacket
 {
-	private final int _charObjId, _degree;
+	private final int _charId, _heading;
 	
-	public ExRotation(int charId, int degree)
+	public ExRotation(int charId, int heading)
 	{
-		_charObjId = charId;
-		_degree = degree;
+		_charId = charId;
+		_heading = heading;
 	}
 	
 	@Override
@@ -36,7 +36,7 @@ public class ExRotation extends L2GameServerPacket
 	{
 		writeC(0xFE);
 		writeH(0xC1);
-		writeD(_charObjId);
-		writeD(_degree);
+		writeD(_charId);
+		writeD(_heading);
 	}
 }