예제 #1
0
        private void PulseTasks()
        {
            if (!Tasks.Any())
            {
                return;
            }

            // reset tasks if they're all complete
            if (Tasks.All(t => t.IsDone))
            {
                foreach (var task in Tasks)
                {
                    task.Reset();
                }
            }

            // get the 1st task that isn't done and pulse it.
            CurrentTask = Tasks.FirstOrDefault(t => !t.IsDone);
            if (CurrentTask != null)
            {
                if (!CurrentTask.IsRunning)
                {
                    CurrentTask.Start();
                }
                CurrentTask.Pulse();
                if (CurrentTask is WaitTask && CurrentTask.IsRunning)
                {
                    Profile.TaskTooltip = CurrentTask.ToolTip;
                }
                else if (!string.IsNullOrEmpty(Profile.TaskTooltip))
                {
                    Profile.TaskTooltip = null;
                }
            }
        }
 public void Pulse()
 {
     if (WowManager.IsRunning)
     {
         WowManager.Pulse();
         if (WowManager.InGame && !HonorbuddyManager.IsRunning)
         {
             if (!StartupSequenceIsComplete)
             {
                 HonorbuddyManager.SetSettings(Profile.Settings.HonorbuddySettings);
             }
             HonorbuddyManager.Start();
         }
         if (HonorbuddyManager.IsRunning)
         {
             HonorbuddyManager.Pulse();
         }
     }
     // only pulse tasks if StartupSequenceIsComplete is true.
     if (StartupSequenceIsComplete)
     {
         // reset tasks if they're all complete
         if (Tasks.Count > 0 && Tasks.All(t => t.IsDone))
         {
             foreach (var task in Tasks)
             {
                 task.Reset();
             }
         }
         // get the 1st task that isn't done and pulse it.
         BMTask currentTask = Tasks.FirstOrDefault(t => !t.IsDone);
         if (currentTask != null)
         {
             if (!currentTask.IsRunning)
             {
                 currentTask.Start();
             }
             currentTask.Pulse();
             if (currentTask is WaitTask && currentTask.IsRunning)
             {
                 Profile.TaskTooltip = currentTask.ToolTip;
             }
             else if (!string.IsNullOrEmpty(Profile.TaskTooltip))
             {
                 Profile.TaskTooltip = null;
             }
         }
     }
 }