static void MainSequence() { Console.WriteLine("MAIN SEQUENECE STARTED"); List <string> windowTitles = Function.GetWindowTitles(); //Mouse Shake Task mouseShakeTask = Task.Run(() => { Thread.Sleep(MOUSE_SHAKE_DELAY * 1000); Function.ShakeMouse(MOUSE_SHAKE_TIME * 1000, 1, 35); }); //Window Shake List <Task> windowShakeTasks = new List <Task>(); foreach (String s in windowTitles) { Task windowShakeInstance = Task.Run(() => { Thread.Sleep(WINDOW_SHAKE_DELAY * 1000); Function.WindowShaker(s, WINDOW_SHAKE_TIME * 1000, 1, 35); }); windowShakeTasks.Add(windowShakeInstance); } //Window Titles List <Task> windowNameTasks = new List <Task>(); foreach (String s in windowTitles) { Task windowNameInstance = Task.Run(() => { Thread.Sleep(WINDOW_NAME_DELAY * 1000); Function.ScrambleWindowTitle(s, WINDOW_NAME_TIME * 1000, WINDOW_NAME_LENGTH); }); windowNameTasks.Add(windowNameInstance); } //Screen Bleed Task screenBleedTask = Task.Run(() => { Thread.Sleep(SCREEN_BLEED_DELAY * 1000); ScreenBleedHoleOptimised.Run(SCREEN_BLEED_FRAMES); }); mouseShakeTask.Wait(); Task.WaitAll(windowShakeTasks.ToArray()); Task.WaitAll(windowNameTasks.ToArray()); screenBleedTask.Wait(); Quit(); }
private static void SpeedTest() { Stopwatch s = new Stopwatch(); s.Start(); ScreenBleedHoleOptimised.Run(100); s.Stop(); Console.WriteLine("ScreenBleedHoleOptimised: " + s.ElapsedMilliseconds); s.Reset(); s.Start(); ScreenBleedHoleOld.Run(100); s.Stop(); Console.WriteLine("ScreenBleedHoleOld: " + s.ElapsedMilliseconds); s.Reset(); s.Start(); ScreenBleedHoleStep.Run(100); s.Stop(); Console.WriteLine("ScreenBleedHoleStep: " + s.ElapsedMilliseconds); Console.Read(); }