private void SolveMiniGame(EventHandler <KeysEventArgs> fishingStep4Callback) { var gameArea = new Rectangle { X = 620, Y = 310, Width = 180, Height = 170 }; var img = _screenHelper.ScreenArea(gameArea); DebugWindow.SetImageFishingGameRaw(img); var startPointOfTimeGauge = FindTimeGauge(img); var colorFilter = GetColorNoise(img, startPointOfTimeGauge); var filteredImage = RegonizeEngine.FilterImage(new Image <Bgr, byte>(img), new RegonizeEngine.FilterParam(colorFilter, 100)); DebugWindow.SetImageFishingGameFiltered(filteredImage.Bitmap); var keys = _xCoordOfFishingKeyIndicators .Select(x => new RegonizeEngine.FishTriangle(filteredImage, new Point(x, 8))) .Select(t => t.GetOrientation()) .Where(o => o != RegonizeEngine.FishTriangle.Orientation.None) .Select(GetKeyFromOrientedTriangle) .ToList(); fishingStep4Callback(this, new KeysEventArgs(keys)); }
private void Button_OnClick(object sender, RoutedEventArgs e) { var img = _screenHelper.ScreenArea(new Rectangle { X = 800, Y = 130, Width = 400, Height = 300 }); imgWaitStartFishingRaw.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(delegate { imgWaitStartFishingRaw.Source = BitmapToImageSource(img); })); }
private bool MarketRowAvailable() { return(_regonizeArea .HaveRectangle(_screenHelper.ScreenArea(_windowAttacher.Config.Market.MarketRowAvailable.Area.ToRectange()), _windowAttacher.Config.Market.MarketRowAvailable)); }