private int FindSelectedPartyMemberIndex() { int index = -1; if (partyBarLocation.X == 0 || partyBarLocation.Y == 0) { return(index); } DiffFinder finder = new DiffFinder(partyBarLocation.X, partyBarLocation.Y, 1, Constants.SCREEEN_HEIGHT - partyBarLocation.Y); Point point0 = new Point(0, 0); Point point1 = new Point(0, 10); Point point2 = new Point(0, 24); Point point3 = new Point(0, 48); finder.AddDiff(point0, point3, 4); finder.AddDiff(point1, point2, 0); finder.AddDiff(point0, point1, 19); var points = finder.ProcessImage(); if (points.Count == 1 && points[0].Y > 0) { var point = points[0]; int diff = point.Y - partyBarLocation.Y; index = diff / 53; } return(index); }
private int FindPartySize() { if (partyBarLocation.X == 0 || partyBarLocation.Y == 0) { return(0); } DiffFinder finder = new DiffFinder(partyBarLocation.X, partyBarLocation.Y, 1, Constants.SCREEEN_HEIGHT - partyBarLocation.Y); finder.AddDiff(new Point(0, 0), new Point(0, 1), 9); finder.AddDiff(new Point(0, 1), new Point(0, 15), 0); var points = finder.ProcessImage(Constants.MAX_PARTY_SIZE); _partyBarPoints.Clear(); foreach (var point in points) { _partyBarPoints.Add(new Point(point.X + PARTY_BAR_CLICK_POSITION_OFFSET, point.Y)); } return(points.Count); }
private Point GetPartyBarLocation() { var points = partyBarFinder.ProcessImage(); return(points.Count > 0 ? points[0] : new Point(0, 0)); }