Example #1
0
    void Start()
    {
        shooter = FindObjectOfType(typeof(Screenshooter)) as Screenshooter;

        prefabCount = starPrefabs.Length;
        GenerateStars();
    }
        private void Start()
        {
            const int    rateMs     = 150;
            const string windowName = "One Finger Death Punch 2";

            try
            {
                var window = new WindowManager(windowName);
                var rect   = window.Rectangle;
                Console.WriteLine($"{windowName} window: {rect}");

                var tracking = GetPoints(rect);
                Console.WriteLine($"Tracking: {tracking}");

                var screen = new Screenshooter(rect);
                using var recognizer = new Recognizer(tracking);

                Console.Write("Press Enter to start");
                Console.ReadLine();
                bool wasBrawler = false;
                while (true)
                {
                    var timeout = wasBrawler ? rateMs - 50: rateMs + 50;
                    Thread.Sleep(timeout);

                    using Bitmap bmp            = screen.MakeScreenshot();
                    (bool isLeft, bool isRight) = recognizer.Recognize(bmp, out wasBrawler);
                    if (isLeft)
                    {
                        window.TrySendClick(true);
                    }
                    if (isRight)
                    {
                        window.TrySendClick(false);
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("ERROR: " + ex);
            }
            finally
            {
                Console.WriteLine("END");
            }
        }