Exemplo n.º 1
0
        private async void Craft()
        {
            #region Fields
            Random rng;

            totalProgressBar.Value   = 0;
            totalProgressBar.Maximum = Utilities.numOfLoops * (Utilities.durationOfLoop + Utilities.numOfClicks * (Utilities.minClickDelay + Utilities.maxClickDelay) / 2);
            totalProgressBar.Step    = inaccuracyIncrement;
            totalProgressBarTimer.Start();

            int hours   = totalProgressBar.Maximum / 3600000;
            int minutes = (totalProgressBar.Maximum - 3600000 * hours) / 60000;
            int seconds = (totalProgressBar.Maximum - 3600000 * hours - 60000 * minutes) / 1000;

            estimatedTotalLabel.Text = ("Estimated Total Time:\n" + $"{hours} h, {minutes} min, {seconds} sec.");
            #endregion

            for (int t = 0; t < Utilities.numOfLoops; t++)
            {
                rng = new Random();

                VirtualMouse.LeftUp();
                Utilities.prevMousePosition = VirtualMouse.GetPosition() * Utilities.scaleMultiplier;

                for (int l = 0; l < Utilities.numOfClicks; l++)
                {
                    delayTime = rng.Next(Utilities.minClickDelay, Utilities.maxClickDelay + 1);
                    VirtualMouse.MoveTo(Utilities.buttonPositionX * Utilities.scaleMultiplier, Utilities.buttonPositionY * Utilities.scaleMultiplier);
                    VirtualMouse.LeftDown();
                    VirtualMouse.LeftUp();

                    currentProgressBar.Value   = 0;
                    currentProgressBar.Maximum = delayTime;
                    currentProgressBar.Step    = inaccuracyIncrement;


                    currentProgressBarTimer.Start();
                    await Delayer(delayTime).ConfigureAwait(true);

                    currentProgressBarTimer.Stop();

                    UpdateEventLog("Clicked with delay of " + delayTime + " ms");
                }

                delayTime = rng.Next(Utilities.durationOfLoop, Utilities.durationOfLoop + Utilities.extraDurationOfLoop + 1);

                VirtualMouse.MoveTo(Utilities.prevMousePosition.X, Utilities.prevMousePosition.Y);


                currentProgressBar.Value   = 0;
                currentProgressBar.Maximum = delayTime;
                currentProgressBar.Step    = inaccuracyIncrement;

                currentProgressBarTimer.Start();
                UpdateEventLog("Job will perform for " + delayTime + " more ms");

                await Delayer(delayTime).ConfigureAwait(true);

                currentProgressBarTimer.Stop();
            }

            UpdateEventLog("Task completed");
            totalProgressBarTimer.Stop();
            totalProgressBar.Value   = totalProgressBar.Maximum;
            currentProgressBar.Value = currentProgressBar.Maximum;
        }
Exemplo n.º 2
0
 private void MousePosRefreshTimer_Tick(object sender, EventArgs e)
 {
     CurrentMousePositionLabel2.Text = VirtualMouse.GetPosition().ToString();
 }