public static void CheckButtonAndClick(Bmp bmp, PokerStarsButton button, IntPtr handle) { Rectangle rect = new Rectangle( (int)Math.Round(button.LocationX * bmp.Width), (int)Math.Round(button.LocationY * bmp.Height), (int)Math.Round(button.Width * bmp.Width), (int)Math.Round(button.Height * bmp.Height)); double r, g, b; AverageColor(bmp, rect, out r, out g, out b); //Debug.WriteLine(string.Format("{0:0.000} {1:0.000} {2:0.000}", r - button.AvgR, g - button.AvgG, b - button.AvgB)); return; if (CompareColors(r, g, b, button.AvgR, button.AvgG, button.AvgB, button.MaxDiffR, button.MaxDiffG, button.MaxDiffB)) { if (button.ButtonSecondaryCheck != null)// secondary check for some buggy themes { //CheckButtonAndClick(bmp, button.ButtonSecondaryCheck, handle); } else { LeftMouseClickRelativeScaled(handle, button.ClickX, button.ClickY, true); } } }
public static void CheckButtonAndClick(Bmp bmp, PokerStarsButton button, IntPtr handle) { Rectangle rect = new Rectangle( (int)Math.Round(button.LocationX * bmp.Width), (int)Math.Round(button.LocationY * bmp.Height), (int)Math.Round(button.Width * bmp.Width), (int)Math.Round(button.Height * bmp.Height)); double r, g, b; AverageColor(bmp, rect, out r, out g, out b); //Debug.WriteLine(string.Format("{0:0.000} {1:0.000} {2:0.000}", r - button.AvgR, g - button.AvgG, b - button.AvgB)); return; if (CompareColors(r, g, b, button.AvgR, button.AvgG, button.AvgB, button.MaxDiffR, button.MaxDiffG, button.MaxDiffB)) { if (button.ButtonSecondaryCheck != null)// secondary check for some buggy themes { //CheckButtonAndClick(bmp, button.ButtonSecondaryCheck, handle); } else { LeftMouseClickRelativeScaled(handle, button.ClickX, button.ClickY, true); } } }