コード例 #1
0
        private async void ImageRecognitionAcceptMatchButton()
        {
            bool championSearchbox = false;
            bool acceptButton      = false;

            while (!championSearchbox || Options.ContiuouslyMonitorAcceptMatch || CancelAutoAcceptMatch)
            {
                TakeFullDesktopScreenShot();
                if (!championSearchbox)
                {
                    championSearchbox = await ImageRecognition.AutoFindBoostButtonImageRecognition();
                }

                TakeFullDesktopScreenShot();
                if (!acceptButton)
                {
                    acceptButton = await ImageRecognition.AutoAcceptImageRecognition();
                }
                if (acceptButton)
                {
                    Actions.ClickAcceptButton();
                    SetLiveStatusText("Accepted Match", Color.Green);
                    if (Options.ContiuouslyMonitorAcceptMatch)
                    {
                        acceptButton = false;
                    }
                }
            }
        }
コード例 #2
0
        private async void ImageRecognitionSelectChampion()
        {
            bool selectChampion    = false;
            bool randomChampionBox = false;

            while (!selectChampion || CancelAutoSelectChampion)
            {
                TakeFullDesktopScreenShot();
                if (!randomChampionBox)
                {
                    randomChampionBox = await ImageRecognition.AutoFindRandomChampionBoxImageRecognition();
                }
                if (randomChampionBox)
                {
                    Actions.ClickChamptionSearchTextbox();

                    Actions.PasteChampionName();

                    Actions.ClickFirstChamptionBox();

                    selectChampion = true;
                    SetLiveStatusText(Options.ChampionName + " was selected.", Color.Green);
                }
            }
        }
コード例 #3
0
        private async void AcceptMatchButton()
        {
            bool championSearchbox = false;
            bool accepted          = false;

            while (!championSearchbox)
            {
                TakeFullDesktopScreenShot();
                if (!championSearchbox)
                {
                    championSearchbox = await ImageRecognition.AutoFindChampionSearchTextboxImageRecognition();
                }

                TakeFullDesktopScreenShot();
                if (!accepted)
                {
                    accepted = await ImageRecognition.AutoAcceptImageRecognition();
                }
                if (accepted)
                {
                    int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.AutoAcceptButtonCoordinates);
                    MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                    HelpFile.Log("Auto Accept: Clicked Accept Button X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");

                    SetLiveStatusText("Accepted Match", Color.Green);
                }
            }
        }
コード例 #4
0
        private async void CoordinatesAcceptMatchButton()
        {
            bool championSearchbox = false;
            bool acceptButton      = false;

            while (!championSearchbox)
            {
                TakeFullDesktopScreenShot();
                if (!championSearchbox)
                {
                    championSearchbox = await ImageRecognition.AutoFindChampionSearchTextboxImageRecognition();
                }

                TakeFullDesktopScreenShot();
                if (!acceptButton)
                {
                    acceptButton = await ImageRecognition.AutoAcceptImageRecognition();
                }
                if (acceptButton)
                {
                    Actions.ClickAcceptButton();
                    SetLiveStatusText("Accepted Match", Color.Green);
                }
            }
        }
コード例 #5
0
        private async void ImageRecognitionCreateARAMLobby()
        {
            bool clickedPlayButton    = false;
            bool selectedARAM         = false;
            bool clickedConfirmButton = false;

            while (!clickedConfirmButton || CancelAutoCreateMatch)
            {
                if (!string.IsNullOrEmpty(Options.PlayButtonCoordinates))
                {
                    Actions.ClickPlayButton();
                }
                else
                {
                    TakeFullDesktopScreenShot();
                    if (!clickedPlayButton)
                    {
                        clickedPlayButton = await ImageRecognition.AutoClickPlayButtonImageRecognition();
                    }
                    if (clickedPlayButton)
                    {
                        Actions.ClickPlayButton();
                    }
                }

                TakeFullDesktopScreenShot();
                if (!selectedARAM)
                {
                    selectedARAM = await ImageRecognition.AutoChooseARAMModeImageRecognition();
                }
                if (selectedARAM)
                {
                    Actions.ClickARAMMatch();
                }

                if (selectedARAM)
                {
                    TakeFullDesktopScreenShot();
                    if (!clickedConfirmButton)
                    {
                        clickedConfirmButton = await ImageRecognition.AutoClickConfirmButtonImageRecognition();
                    }
                    if (clickedConfirmButton)
                    {
                        Actions.ClickConfirmButton();
                        SetLiveStatusText("Created an ARAM room.", Color.Green);
                    }
                }
            }
        }
コード例 #6
0
        private async void CreateARAMLobby()
        {
            bool clickedPlayButton    = false;
            bool selectedARAM         = false;
            bool clickedConfirmButton = false;

            while (!clickedConfirmButton)
            {
                TakeFullDesktopScreenShot();
                if (!clickedPlayButton)
                {
                    clickedPlayButton = await ImageRecognition.AutoClickPlayButtonImageRecognition();
                }
                if (clickedPlayButton)
                {
                    int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.PlayButtonCoordinates);
                    MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                    HelpFile.Log("Click Play Button: Clicked Play Button X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");
                }

                TakeFullDesktopScreenShot();
                if (!selectedARAM)
                {
                    selectedARAM = await ImageRecognition.AutoChooseARAMModeImageRecognition();
                }
                if (selectedARAM)
                {
                    int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.ARAMMatchCoordinates);
                    MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                    HelpFile.Log("Pick ARAM Mode X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");
                }

                TakeFullDesktopScreenShot();
                if (!clickedConfirmButton)
                {
                    clickedConfirmButton = await ImageRecognition.AutoClickConfirmButtonImageRecognition();
                }
                if (clickedConfirmButton)
                {
                    int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.ConfirmButtonCoordinates);
                    MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                    HelpFile.Log("Confirm Button: Clicked Confirm Button X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");

                    AutoCreateSummonerRift = true;
                    SetLiveStatusText("Created an ARAM room.", Color.Green);
                }
            }
        }
コード例 #7
0
        private async void ImageRecognitionLockChampion()
        {
            bool lockChampion = false;

            while (!lockChampion || CancelAutoLockChampion)
            {
                TakeFullDesktopScreenShot();
                if (!lockChampion)
                {
                    lockChampion = await ImageRecognition.AutoLockChampionImageRecognition();
                }
                if (lockChampion)
                {
                    Actions.ClickLockButton();
                    SetLiveStatusText("Champion has been locked.", Color.Green);
                }
            }
        }
コード例 #8
0
        private async Task <bool> ImageRecognitionCheckIfLeagueLoaded()
        {
            bool leagueFullyLoadedWithRiotLogo = false;

            while (!leagueFullyLoadedWithRiotLogo)
            {
                TakeFullDesktopScreenShot();
                leagueFullyLoadedWithRiotLogo = await ImageRecognition.CheckLeagueRiotLogoImageRecognition();
            }

            if (leagueFullyLoadedWithRiotLogo)
            {
                SetLiveStatusText("League client fully loaded. Attemping to log-in.", Color.Green);
                return(true);
            }
            else
            {
                return(false);
            }
        }
コード例 #9
0
        private async void LockChampion()
        {
            bool lockChampion = false;

            while (!lockChampion)
            {
                TakeFullDesktopScreenShot();
                if (!lockChampion)
                {
                    lockChampion = await ImageRecognition.AutoLockChampionImageRecognition();
                }
                if (lockChampion)
                {
                    int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.LockButtonCoodinates);
                    MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                    HelpFile.Log("Lock Button: Moved Mouse To Lock Button And Clicked X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");

                    AutoLockChampion = true;
                    SetLiveStatusText("Champion has been locked.", Color.Green);
                }
            }
        }
コード例 #10
0
        private async void SelectChampion()
        {
            bool selectChampion    = false;
            bool randomChampionBox = false;

            while (!selectChampion)
            {
                TakeFullDesktopScreenShot();
                if (!randomChampionBox)
                {
                    randomChampionBox = await ImageRecognition.AutoFindRandomChampionBoxImageRecognition();
                }
                if (randomChampionBox)
                {
                    KeyboardEvents.SetClipboardText(Options.ChampionName);
                    HelpFile.Log("Select Champ: Copied Champion Name To Clipboard.");
                    Thread.Sleep(Options.ImageRecognitionInterval);

                    int[] coordinatesChampionSearchTextbox = HelpFile.GetXYCoordinatesRegex(Options.ChampionSearchTextboxCoordinates);
                    MouseEvent.MoveMouseXYToAndClick(coordinatesChampionSearchTextbox[0], coordinatesChampionSearchTextbox[1]);
                    HelpFile.Log("Select Champ: Search Text Box Clicked X:" + coordinatesChampionSearchTextbox[0] + ", Y:" + coordinatesChampionSearchTextbox[1] + ".");
                    Thread.Sleep(Options.ImageRecognitionInterval);

                    KeyboardEvents.PressControlV();
                    HelpFile.Log("Select Champ: Pressed Control+V To Paste Champion Name.");
                    Thread.Sleep(Options.ImageRecognitionInterval);

                    int[] coordinatesFirstChampionBox = HelpFile.GetXYCoordinatesRegex(Options.FirstChampionBoxCoordinates);
                    MouseEvent.MoveMouseXYToAndClick(coordinatesFirstChampionBox[0], coordinatesFirstChampionBox[1]);
                    HelpFile.Log("Select Champ: Moved Mouse To First Champion In List And Clicked X:" + coordinatesFirstChampionBox[0] + ", Y:" + coordinatesFirstChampionBox[1] + ".");
                    Thread.Sleep(Options.ImageRecognitionInterval);

                    selectChampion = true;

                    AutoSelectChampion = true;
                    SetLiveStatusText(Options.ChampionName + " was selected.", Color.Green);
                }
            }
        }
コード例 #11
0
        private async void ImageRecognitionCreateSummonersRiftLobby()
        {
            bool clickedPlayButton     = false;
            bool selectedSummonersRift = false;
            bool selectSummonerType    = false;
            bool clickedConfirmButton  = false;

            if (!string.IsNullOrWhiteSpace(Options.SummonerType))
            {
                ShowMessageBox(@"Please make sure you've selected summoner type. \r\nPlease check the Auto Login / Match tab in settings.", "Unable To Create Lobby", MessageBoxIcon.Error);
                SetLiveStatusText("Please double check the Username and Password.", Color.Green);
                return;
            }

            while (!clickedConfirmButton || CancelAutoCreateMatch)
            {
                if (!string.IsNullOrEmpty(Options.PlayButtonCoordinates))
                {
                    Actions.ClickPlayButton();
                }
                else
                {
                    TakeFullDesktopScreenShot();
                    if (!clickedPlayButton)
                    {
                        clickedPlayButton = await ImageRecognition.AutoClickPlayButtonImageRecognition();
                    }
                    if (clickedPlayButton)
                    {
                        Actions.ClickPlayButton();
                    }
                }

                TakeFullDesktopScreenShot();
                if (!selectedSummonersRift)
                {
                    selectedSummonersRift = await ImageRecognition.AutoChooseSummerRiftModeImageRecognition();
                }
                if (selectedSummonersRift)
                {
                    Actions.ClickSummonersMatch();
                }

                if (Options.SummonerType.Equals("Blind Pick"))
                {
                    TakeFullDesktopScreenShot();
                    if (!selectSummonerType)
                    {
                        selectSummonerType = await ImageRecognition.AutoChooseSummersBlindPickImageRecognition();
                    }
                    if (selectSummonerType)
                    {
                        Actions.ClickBlindPick();
                    }
                }

                if (Options.SummonerType.Equals("Draft Pick"))
                {
                    TakeFullDesktopScreenShot();
                    if (!selectSummonerType)
                    {
                        selectSummonerType = await ImageRecognition.AutoChooseSummersDraftPickImageRecognition();
                    }
                    if (selectSummonerType)
                    {
                        Actions.ClickDraftPick();
                    }
                }

                if (Options.SummonerType.Equals("Ranked Solo/Duo"))
                {
                    TakeFullDesktopScreenShot();
                    if (!selectSummonerType)
                    {
                        selectSummonerType = await ImageRecognition.AutoChooseSummersRankedImageRecognition();
                    }
                    if (selectSummonerType)
                    {
                        Actions.ClickSoloDuoRanked();
                    }
                }

                if (selectSummonerType)
                {
                    TakeFullDesktopScreenShot();
                    if (!clickedConfirmButton)
                    {
                        clickedConfirmButton = await ImageRecognition.AutoClickConfirmButtonImageRecognition();
                    }
                    if (clickedConfirmButton)
                    {
                        Actions.ClickConfirmButton();
                        SetLiveStatusText("Created Summoner's Rift: " + Options.SummonerType + " room.", Color.Green);
                    }
                }
            }
        }
コード例 #12
0
        private async void ImageRecognitionLoginToLeague()
        {
            bool leagueFullyLoaded    = false;
            bool rememberMeChecked    = false;
            bool addedUsername        = false;
            bool addedPassword        = false;
            bool successfullyLoggedIn = false;
            bool failLoggedIn         = false;
            bool clickedPlayButton    = false;

            if (!UsernamePasswordIsValid())
            {
                ShowMessageBox(@"Please make sure you've added your Username and Password.\r\nPlease check the Auto Login tab.", "Unable To Login", MessageBoxIcon.Error);
                SetLiveStatusText("Please double check the Username and Password.", Color.Green);
                return;
            }

            while (!leagueFullyLoaded)
            {
                leagueFullyLoaded = await ImageRecognitionCheckIfLeagueLoaded();
            }

            TakeFullDesktopScreenShot();
            rememberMeChecked = await ImageRecognition.RememberMeCheckedImageRecognition();

            while (!successfullyLoggedIn || !failLoggedIn || !CancelAutoLogin)
            {
                if (rememberMeChecked)
                {
                    TakeFullDesktopScreenShot();
                    if (!addedPassword)
                    {
                        addedPassword = await ImageRecognition.LoginPasswordImageRecognition();
                    }

                    TakeFullDesktopScreenShot();
                    if (!addedPassword)
                    {
                        addedPassword = await ImageRecognition.LoginPasswordFocusedImageRecognition();
                    }

                    if (addedPassword)
                    {
                        Actions.EnterPassword();
                    }
                }
                else
                {
                    TakeFullDesktopScreenShot();
                    if (!addedUsername)
                    {
                        addedUsername = await ImageRecognition.LoginUsernameImageRecognition();
                    }

                    TakeFullDesktopScreenShot();
                    if (!addedUsername)
                    {
                        addedUsername = await ImageRecognition.LoginUsernameFocusedImageRecognition();
                    }

                    if (addedUsername)
                    {
                        Actions.EnterUsername();
                    }

                    TakeFullDesktopScreenShot();
                    if (!addedPassword)
                    {
                        addedPassword = await ImageRecognition.LoginPasswordImageRecognition();
                    }

                    TakeFullDesktopScreenShot();
                    if (!addedPassword)
                    {
                        addedPassword = await ImageRecognition.LoginPasswordFocusedImageRecognition();
                    }

                    if (addedPassword)
                    {
                        Actions.EnterPassword();
                    }
                }

                if (addedPassword)
                {
                    KeyboardEvents.PressEnter();
                    return;
                }

                TakeFullDesktopScreenShot();
                if (!clickedPlayButton)
                {
                    clickedPlayButton = await ImageRecognition.AutoClickPlayButtonImageRecognition();
                }
                if (clickedPlayButton)
                {
                    successfullyLoggedIn = true;
                    SetLiveStatusText("Successfully logged into league.", Color.Green);
                    return;
                }

                TakeFullDesktopScreenShot();
                if (!failLoggedIn)
                {
                    failLoggedIn = await ImageRecognition.LoginFailedImageRecognition();
                }
                if (failLoggedIn)
                {
                    AutoLoginToggle.Checked = false;
                    ShowMessageBox(@"Please make sure your Username and Password is correct.", "Unable To Login", MessageBoxIcon.Error);
                    SetLiveStatusText("Please double check the Username and Password.", Color.Green);
                    return;
                }
            }
        }
コード例 #13
0
        private async void CreateSummonersRiftLobby()
        {
            bool clickedPlayButton     = false;
            bool selectedSummonersRift = false;
            bool selectSummonerType    = false;
            bool clickedConfirmButton  = false;

            while (!clickedConfirmButton)
            {
                TakeFullDesktopScreenShot();
                if (!clickedPlayButton)
                {
                    clickedPlayButton = await ImageRecognition.AutoClickPlayButtonImageRecognition();
                }
                if (clickedPlayButton)
                {
                    int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.PlayButtonCoordinates);
                    MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                    HelpFile.Log("Click Play Button: Clicked Play Button X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");
                }

                TakeFullDesktopScreenShot();
                if (!selectedSummonersRift)
                {
                    selectedSummonersRift = await ImageRecognition.AutoChooseSummerRiftModeImageRecognition();
                }
                if (selectedSummonersRift)
                {
                    int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.SummonersRiftCoordinates);
                    MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                    HelpFile.Log("Pick Summoner Mode: Picked Summoner Rift X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");
                }

                Console.WriteLine(Options.SummonerType);

                if (Options.SummonerType.Equals("Draft Pick"))
                {
                    TakeFullDesktopScreenShot();
                    if (!selectSummonerType)
                    {
                        selectSummonerType = await ImageRecognition.AutoChooseSummersDraftPickImageRecognition();
                    }
                    if (selectSummonerType)
                    {
                        int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.DraftPickCoordinates);
                        MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                        HelpFile.Log("Summoner Mode: Draft Pick X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");
                    }
                }

                if (Options.SummonerType.Equals("Blind Pick"))
                {
                    TakeFullDesktopScreenShot();
                    if (!selectSummonerType)
                    {
                        selectSummonerType = await ImageRecognition.AutoChooseSummersBlindPickImageRecognition();
                    }
                    if (selectSummonerType)
                    {
                        int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.BlindPickCoordinates);
                        MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                        HelpFile.Log("Summoner Mode: Blind Pick X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");
                    }
                }

                if (Options.SummonerType.Equals("Ranked Solo/Duo"))
                {
                    TakeFullDesktopScreenShot();
                    if (!selectSummonerType)
                    {
                        selectSummonerType = await ImageRecognition.AutoChooseSummersRankedImageRecognition();
                    }
                    if (selectSummonerType)
                    {
                        int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.RankedSoloDuoCoordinates);
                        MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                        HelpFile.Log("Summoner Mode: Ranked Pick X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");
                    }
                }

                TakeFullDesktopScreenShot();
                if (!clickedConfirmButton)
                {
                    clickedConfirmButton = await ImageRecognition.AutoClickConfirmButtonImageRecognition();
                }
                if (clickedConfirmButton)
                {
                    int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.PlayButtonCoordinates);
                    MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                    HelpFile.Log("Confirm Button: Clicked Confirm Button X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");

                    AutoCreateSummonerRift = true;
                    SetLiveStatusText("Created Summoner's Rift: " + Options.SummonerType + " room.", Color.Green);
                }
            }
        }
コード例 #14
0
        private async void LoginToLeague()
        {
            bool leagueFullyLoaded = false;
            bool rememberMeChecked = false;
            bool addedUsername     = false;
            bool addedPassword     = false;
            bool clickedSignIn     = false;
            bool failLoggedIn      = false;

            if (!CheckUsernamePasswordTextIsValid())
            {
                MessageBox.Show(@"Please make sure you've added your Username and Password.\r\nPlease check the Auto Login tab.", "Unable To Login", MessageBoxButtons.OK, MessageBoxIcon.Error);
                SetLiveStatusText("Please double check the Username and Password.", Color.Green);
                return;
            }

            while (!leagueFullyLoaded)
            {
                leagueFullyLoaded = await CheckIfLeagueLoaded();
            }

            TakeFullDesktopScreenShot();
            rememberMeChecked = await ImageRecognition.RememberMeCheckedImageRecognition();

            while (!clickedSignIn || !failLoggedIn)
            {
                if (rememberMeChecked)
                {
                    TakeFullDesktopScreenShot();
                    if (!addedPassword)
                    {
                        addedPassword = await ImageRecognition.LoginPasswordImageRecognition();
                    }

                    TakeFullDesktopScreenShot();
                    if (!addedPassword)
                    {
                        addedPassword = await ImageRecognition.LoginPasswordFocusedImageRecognition();
                    }

                    if (addedPassword)
                    {
                        string password    = Options.IsPasswordEncrypted ? Encryption.Decrypt(Options.Password, Encryption.ConvertRijndaelKeyToByte(Options.EncryptedKey), Encryption.ConvertRijndaelIVToByte(Options.EncryptedIV)) : Options.Password;
                        int[]  coordinates = HelpFile.GetXYCoordinatesRegex(Options.LoginPasswordCoordinates);

                        KeyboardEvents.SetClipboardText(password);
                        HelpFile.Log("Login Password: Copied Text To Clipboard.");
                        Thread.Sleep(Options.ImageRecognitionInterval);

                        MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                        HelpFile.Log("Login Password: Moved Mouse To Textbox And Clicked X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");
                        Thread.Sleep(Options.ImageRecognitionInterval);

                        KeyboardEvents.PressControlV();
                        HelpFile.Log("Login Password: Pressed Control+V To Paste Password.");
                        Thread.Sleep(Options.ImageRecognitionInterval);

                        KeyboardEvents.ClearClipboard();
                        HelpFile.Log("Login Password: Cleared Clipboard Of Password.");
                    }
                }
                else
                {
                    TakeFullDesktopScreenShot();
                    if (!addedUsername)
                    {
                        addedUsername = await ImageRecognition.LoginUsernameImageRecognition();
                    }

                    TakeFullDesktopScreenShot();
                    if (!addedUsername)
                    {
                        addedUsername = await ImageRecognition.LoginUsernameFocusedImageRecognition();
                    }

                    if (addedUsername)
                    {
                        int[] coordinates = HelpFile.GetXYCoordinatesRegex(Options.LoginUsernameCoordinates);

                        KeyboardEvents.SetClipboardText(Options.Username);
                        HelpFile.Log("Login Username: Copied Username To Clipboard.");
                        Thread.Sleep(Options.ImageRecognitionInterval);

                        MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                        HelpFile.Log("Login Username: Moved Mouse To And Clicked Username Textbox X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");
                        Thread.Sleep(Options.ImageRecognitionInterval);

                        KeyboardEvents.PressControlV();
                        HelpFile.Log("Login Username: Pressed Control+V To Paste Username.");
                        Thread.Sleep(Options.ImageRecognitionInterval);

                        KeyboardEvents.ClearClipboard();
                        HelpFile.Log("Login Username: Cleared Clipboard Of Username.");
                    }

                    TakeFullDesktopScreenShot();
                    if (!addedPassword)
                    {
                        addedPassword = await ImageRecognition.LoginPasswordImageRecognition();
                    }

                    TakeFullDesktopScreenShot();
                    if (!addedPassword)
                    {
                        addedPassword = await ImageRecognition.LoginPasswordFocusedImageRecognition();
                    }

                    if (addedPassword)
                    {
                        string password    = Options.IsPasswordEncrypted ? Encryption.Decrypt(Options.Password, Encryption.ConvertRijndaelKeyToByte(Options.EncryptedKey), Encryption.ConvertRijndaelIVToByte(Options.EncryptedIV)) : Options.Password;
                        int[]  coordinates = HelpFile.GetXYCoordinatesRegex(Options.LoginPasswordCoordinates);

                        KeyboardEvents.SetClipboardText(password);
                        HelpFile.Log("Login Password: Copied Text To Clipboard.");
                        Thread.Sleep(Options.ImageRecognitionInterval);

                        MouseEvent.MoveMouseXYToAndClick(coordinates[0], coordinates[1]);
                        HelpFile.Log("Login Password: Moved Mouse To Textbox And Clicked X:" + coordinates[0] + ", Y:" + coordinates[1] + ".");
                        Thread.Sleep(Options.ImageRecognitionInterval);

                        KeyboardEvents.PressControlV();
                        HelpFile.Log("Login Password: Pressed Control+V To Paste Password.");
                        Thread.Sleep(Options.ImageRecognitionInterval);

                        KeyboardEvents.ClearClipboard();
                        HelpFile.Log("Login Password: Cleared Clipboard Of Password.");
                    }
                }

                if (addedPassword)
                {
                    KeyboardEvents.PressEnter();
                    clickedSignIn = true;
                    AutoLogin     = true;
                    return;
                }

                TakeFullDesktopScreenShot();
                if (!failLoggedIn)
                {
                    failLoggedIn = await ImageRecognition.LoginFailedImageRecognition();
                }
            }

            if (failLoggedIn)
            {
                AutoLoginToggle.Checked = false;
                MessageBox.Show(@"Please make sure your Username and Password is correct.", "Unable To Login", MessageBoxButtons.OK, MessageBoxIcon.Error);
                SetLiveStatusText("Please double check the Username and Password.", Color.Green);
                return;
            }

            if (clickedSignIn)
            {
                SetLiveStatusText("Successfully logged into league.", Color.Green);
                AutoLogin = true;
                return;
            }
        }