/// <summary> /// /// </summary> /// <param name="pos"></param> /// <param name="IsFake"></param> /// <returns></returns>s public bool TryGotoTarget(SimPosition pos, out bool IsFake) { IsFake = false; SimMoverState state = SimMoverState.TRYAGAIN; while (state == SimMoverState.TRYAGAIN) { SimWaypoint target = (SimWaypoint)pos; IList <SimRoute> routes = (IList <SimRoute>)GetRouteList(target, out IsFake); if (routes == null) { return(false); } SimRouteMover ApproachPlan = new SimRouteMover(Mover, routes, pos.GlobalPosition, pos.GetSizeDistance()); state = ApproachPlan.Goto(); if (state == SimMoverState.COMPLETE) { return(true); } } return(false); //== SimMoverState.COMPLETE; }
/// <summary> /// /// </summary> /// <param name="pos"></param> /// <param name="IsFake"></param> /// <returns></returns>s public bool TryGotoTarget(SimPosition pos, out bool IsFake) { IsFake = false; SimMoverState state = SimMoverState.TRYAGAIN; while (state == SimMoverState.TRYAGAIN) { SimWaypoint target = (SimWaypoint)pos; IList<SimRoute> routes = (IList<SimRoute>)GetRouteList(target, out IsFake); if (routes == null) return false; SimRouteMover ApproachPlan = new SimRouteMover(Mover, routes, pos.GlobalPosition, pos.GetSizeDistance()); state = ApproachPlan.Goto(); if (state == SimMoverState.COMPLETE) return true; } return false; //== SimMoverState.COMPLETE; }