/**移动并发送目标点给服务器**/ public void MoveToAndTellServer(float x, float y, MoveEndCallback callback = null) { x = (float)Math.Round(x, 2); y = (float)Math.Round(y, 2); MoveTo(x, y, callback); AppMap.Instance.tellServer(x, y); }
/**停止移动**/ public void StopWalk() { IsWalking = false; if (StatuController != null && StatuController.CurrentStatu == Status.RUN) { StatuController.SetStatu(Status.IDLE); } if (_moveEndCallback != null) { _moveEndCallback(this); } _moveEndCallback = null; Me.SetSortingOrder(false); }
/// <summary> /// 移动到某一个位置 /// </summary> /// <param name="x">X坐标</param> /// <param name="y">Y坐标</param> /// <param name="callback">移动完后的回调处理</param> public override void MoveTo(float x, float y, MoveEndCallback callback = null) { if (CanMove) { Target.x = x; Target.y = y; Target = AdjustVector3(Target); _moveEndCallback = callback; if (StatuController != null) { StatuController.SetStatu(Status.RUN); } IsWalking = true; } }
/**执行移动**/ private bool moveTo(BaseDisplay display, MoveEndCallback callback = null) { if (display == null) { return(false); } //if (display.goCloth == null) return false; Transform transform = display.GoBase.transform; AppMap.Instance.clickVo.SaveClicker(display); (AppMap.Instance.me.Controller as MeControler).MoveToAndTellServer(transform.position.x, transform.position.y, callback); transform = null; return(true); }
/**当前移动速度**/ /**销毁方法**/ public override void Dispose() { _moveEndCallback = null; base.Dispose(); }
/**移动**/ public virtual void MoveTo(float x, float y, MoveEndCallback callback = null) { }