//沿着指定方向行走 结束 public static void ReceiveWalkEnd(byte[] data) { S2CNwarMoveStop playerWalkStop = S2CPackBase.DeserializePack <S2CNwarMoveStop>(data); if (playerWalkStop.stop.id.Equals(Game.GetInstance().LocalPlayerID.obj_idx)) { return; } Actor actor = ActorManager.Instance.GetPlayer(playerWalkStop.stop.id); if (null == actor) { return; } MoveCtrl ctrl = actor.MoveCtrl; if (null != ctrl) { ctrl.ReceiveWalkEnd(playerWalkStop); } }
public void ReceiveWalkEnd(S2CNwarMoveStop walk) { if (false == mIsRecvMsg) { return; } Vector3 pos = Vector3.zero; Vector3 dir = Vector3.zero; pos.x = walk.stop.pos.px * GlobalConst.UnitScale; pos.z = walk.stop.pos.py * GlobalConst.UnitScale; Maths.Util.AngleToVector(walk.stop.dir, ref dir);// 停止移动时,默认z轴方向为0 MoveStep step = new MoveStep(); step.type = EActorStepType.AT_WALK_END; step.pos = pos; step.dir = dir; step.speed = 0.0f; mCurStep = step; mbDirty = true; }