示例#1
0
        // [Menu] event. Click on 'ScreenshotToolStripMenuItem'
        private void ScreenshotToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SaveFileDialog saveFileDialog1 = new SaveFileDialog();

            saveFileDialog1.InitialDirectory = App.CurrentPath;
            saveFileDialog1.RestoreDirectory = true;
            saveFileDialog1.FileName         = "Screenshot_" + DateTime.Now.ToString("dd-MM-yy_HH-mm-ss");
            saveFileDialog1.Title            = "Capturer une image";
            saveFileDialog1.DefaultExt       = "bmp";
            saveFileDialog1.Filter           = "Image BMP (*.bmp)|*.bmp";
            if (saveFileDialog1.ShowDialog() == DialogResult.OK)
            {
                // capture de l'image et sauvegarde dans le fichier spécifié
                Bitmap image = EmbedWindow.GetWindowImage(GameProcess.MainWindowHandle);
                image.Save(saveFileDialog1.FileName);
                MessageBox.Show("Image Capturée !", App.Name, MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
示例#2
0
文件: Bot.cs 项目: Aursen/Pixus-Bot
        // GetPod() : récupère le pod en pourcentage et fait avancé la progressbar
        public void GetPod()
        {
            Log.Title(Log.Level.Debug, "GetPod");

            try
            {
                // Click sur l'inventaire pour l'ouvrir
                FakeClick.ClickOnPoint(GameHandle, Settings.InventoryPosition);
                Wait();

                // Nouvelle Image de la Map
                Bitmap MapImage = EmbedWindow.GetWindowImage(GameHandle);

                // MapBitmap
                LockBitmap MapBitmap = new LockBitmap(MapImage);
                MapBitmap.LockBits();

                Color?PodBarColor = null;
                int   PodValue    = 0;

                // Get PodValue
                for (int x = Pod.PodBarX; x < Pod.PodBarEndX; x++)
                {
                    _pauseEvent.WaitOne();
                    if (_shutdownEvent.WaitOne(0))
                    {
                        break;
                    }

                    if (PodBarColor == null) // on récupère la couleur dominente
                    {
                        PodBarColor = MapBitmap.GetPixel(x, Pod.PodBarY);
                    }

                    // si la couleur est toujours dominente on continue
                    if (MapBitmap.GetPixel(x, Pod.PodBarY) == PodBarColor)
                    {
                        PodValue++;
                    }
                    else // si nn on s'arrete
                    {
                        break;
                    }
                }

                MapBitmap.UnlockBits();

                if (!_shutdownEvent.WaitOne(0)) // si le bot n'a pas été arrêté
                {
                    // Set Pod PercentValue (%)
                    Pod.PercentValue = (int)((float)((float)PodValue / Pod.PodBarWidth) * 100);
                    Log.Debug("Pod PodValue: " + PodValue + " PercentValue: " + Pod.PercentValue + "%");

                    // Set Progressbar FillProcent
                    PodProgressBar.BarFillProcent = Pod.PercentValue;

                    // ReClick sur l'inventaire pour le fermer
                    FakeClick.ClickOnPoint(GameHandle, Settings.InventoryPosition);
                    Wait();
                }
            }
            catch (Exception ex)
            {
                Log.Debug("Execption occured : " + ex.Message);
            }
            finally
            {
                Log.Divider(Log.Level.Debug);
            }
        }