Example #1
0
 /// <summary>
 /// Stops AutoPilot. Will trigger the given status if not already in that state.
 /// </summary>
 /// <param name="newStatus">The new status for AutoPilot. Cannot be Moving</param>
 /// <exception cref="ArgumentOutOfRangeException">newStatus cannot be Moving</exception>
 public void Stop(AutoPilotStatus newStatus)
 {
     if (newStatus != AutoPilotStatus.Moving)
     {
         ticker.Stop();
         Client.Self.AutoPilotCancel();
         SetStatus(newStatus);
         lastDistanceChanged = -1;
         waypointIndex       = 0;
     }
     else
     {
         throw new ArgumentOutOfRangeException("newStatus", "Value cannot be Moving");
     }
 }
Example #2
0
 //convert status to color
 public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
 {
     if (value is AutoPilotStatus)
     {
         AutoPilotStatus status = (AutoPilotStatus)value;
         if (status == AutoPilotStatus.Busy)
         {
             return(busyColor);
         }
         else if (status == AutoPilotStatus.Free)
         {
             return(freeColor);
         }
     }
     return(null);
 }
Example #3
0
        /// <summary>
        /// Sets AutoPilot's Status. If newStatus is different from current Status than it will cause OnStatusChange event trigger.
        /// </summary>
        /// <param name="newStatus">The new Status AutoPilot is to be changed to</param>
        /// <returns>True if OnStatusChanged triggered</returns>
        private bool SetStatus(AutoPilotStatus newStatus)
        {
            AutoPilotStatus oldStatus = status;

            if (oldStatus != newStatus)
            {
                status = newStatus;
                if (OnStatusChange != null)
                {
                    OnStatusChange(status, NextWaypoint);
                }
                return(true);
            }
            else
            {
                return(false);
            }
        }
Example #4
0
 /// <summary>
 /// Sets AutoPilot's Status. If newStatus is different from current Status than it will cause OnStatusChange event trigger.
 /// </summary>
 /// <param name="newStatus">The new Status AutoPilot is to be changed to</param>
 /// <returns>True if OnStatusChanged triggered</returns>
 private bool SetStatus(AutoPilotStatus newStatus)
 {
     AutoPilotStatus oldStatus = status;
     if (oldStatus != newStatus)
     {
         status = newStatus;
         if (OnStatusChange != null)
         {
             OnStatusChange(status, NextWaypoint);
         }
         return true;
     }
     else
     {
         return false;
     }
 }
Example #5
0
 /// <summary>
 /// Stops AutoPilot. Will trigger the given status if not already in that state.
 /// </summary>
 /// <param name="newStatus">The new status for AutoPilot. Cannot be Moving</param>
 /// <exception cref="ArgumentOutOfRangeException">newStatus cannot be Moving</exception>
 public void Stop(AutoPilotStatus newStatus)
 {
     if (newStatus != AutoPilotStatus.Moving)
     {
         ticker.Stop();
         Client.Self.AutoPilotCancel();
         SetStatus(newStatus);
         lastDistanceChanged = -1;
         waypointIndex = 0;
     }
     else
     {
         throw new ArgumentOutOfRangeException("newStatus", "Value cannot be Moving");
     }
 }