//This simulates a left mouse click public static void LeftMouseClick(int xpos, int ypos) { var rect = new Helper.Rect(); GetWindowRect(_hWnd, ref rect); xpos = xpos + rect.left; ypos = ypos + rect.top; SetCursorPos(xpos, ypos); Thread.Sleep(200); mouse_event(MOUSEEVENTF_LEFTDOWN, xpos, ypos, 0, 0); Thread.Sleep(200); mouse_event(MOUSEEVENTF_LEFTUP, xpos, ypos, 0, 0); Thread.Sleep(200); SetCursorPos(xpos, ypos); mouse_event(MOUSEEVENTF_LEFTDOWN, xpos, ypos, 0, 0); Thread.Sleep(200); mouse_event(MOUSEEVENTF_LEFTUP, xpos, ypos, 0, 0); Thread.Sleep(200); PostMessage(_hWnd, WM_KEYDOWN, VK_F5, 0); Thread.Sleep(400); while (true) { var hp = Helper.GetHp(_hWnd); var pixel = hp.GetPixel(2, 2); if (pixel.R > 80) { Console.WriteLine("Alive!"); } else { Console.WriteLine("Dead! time to find next target!"); break; } Thread.Sleep(100); } }
private static void SpinCamera() { SetForegroundWindow(_hWnd); var rect = new Helper.Rect(); GetWindowRect(_hWnd, ref rect); SetCursorPos(rect.left + 100, rect.top + 100); mouse_event(MOUSEEVENTF_LEFTDOWN, rect.left + 400, rect.top + 400, 0, 0); mouse_event(MOUSEEVENTF_LEFTUP, rect.left + 400, rect.top + 400, 0, 0); Thread.Sleep(500); for (var i = 0; i < 20; i++) { PostMessage(_hWnd, WM_KEYDOWN, VK_RIGHT, 0); Thread.Sleep(100); } }
static extern bool GetWindowRect(IntPtr hWnd, ref Helper.Rect lpRect);