Пример #1
0
        static void Main(string[] args)
        {
            var pid  = Process.GetProcessesByName("ARAD").First().Id;
            var hWnd = Process.GetProcessesByName("ARAD").First().MainWindowHandle;

            if (hWnd != IntPtr.Zero)
            {
                GetClientRect(hWnd, out var rect);

                if (rect.Width != 1600 || rect.Height != 900)
                {
                    Console.WriteLine("アラド戦記の解像度を1600x900に設定して下さい。");
                    return;
                }

                MoveWindow(hWnd, 0, 0, rect.Width, rect.Height, true);
            }

            var autoBurger = new AutoBurger();
            var simulator  = new InputSimulator();

            Microsoft.VisualBasic.Interaction.AppActivate(pid);

            while (true)
            {
                var img     = TakeScreenShot(547, 188, 160, 220);
                var results = autoBurger.GetMaterials(img);

                foreach (var result in results)
                {
                    switch (result)
                    {
                    case TomatoMaterial x:
                        PressKey(simulator, VirtualKeyCode.LEFT);
                        break;

                    case PattyMaterial x:
                        PressKey(simulator, VirtualKeyCode.UP);
                        break;

                    case LettuceMaterial x:
                        PressKey(simulator, VirtualKeyCode.DOWN);
                        break;

                    case CheeseMaterial x:
                        PressKey(simulator, VirtualKeyCode.RIGHT);
                        break;
                    }
                    Thread.Sleep(100);
                }

                if (results.Any())
                {
                    PressKey(simulator, VirtualKeyCode.SPACE);
                }

                Thread.Sleep(1000);
            }
        }
Пример #2
0
        public void TestMethod1()
        {
            var autoBurger = new AutoBurger();

            Assert.AreEqual(File.Exists("imgs/001.png"), true);

            var results = autoBurger.GetMaterials("imgs/001.png").ToArray();

            Assert.AreEqual(results[0].GetType(), typeof(TomatoMaterial));
            Assert.AreEqual(results[1].GetType(), typeof(LettuceMaterial));
            Assert.AreEqual(results[2].GetType(), typeof(CheeseMaterial));
            Assert.AreEqual(results[3].GetType(), typeof(PattyMaterial));
        }