Beispiel #1
0
        private void BtnStart_OnClick(object sender, RoutedEventArgs e)
        {
            CurrentSession.Reset();

            //TODO: This will need modified once we add multiple versions of a player
            var playerVersionId = SelectedPlayer.Versions.First().VersionId;
            var numberToBuy     = Convert.ToInt32(cboMaxPlayers.SelectedItem);

            CurrentSession.Current = new SessionDTO
            {
                AccessToken     = AccessToken,
                PlayerVersionId = playerVersionId,
                SearchNum       = numberToBuy,
                PurchasedNum    = 0,
                Captcha         = false
            };

            var canGetPlayer = Api.TryLockPlayerForSearch();

            if (canGetPlayer)
            {
                var price = cboMaxPrice.SelectedItem.ToString();

                int.TryParse(cboMinSell.SelectedValue?.ToString(), out var minPrice);
                int.TryParse(cboMaxSell.SelectedValue?.ToString(), out var maxPrice);

                var playerObject = new Core.Models.Player
                {
                    Name             = SelectedPlayer.Name,
                    NumberToPurchase = numberToBuy,
                    MaxPurchasePrice = price,
                    AutoSell         = AutoSellMode,
                    SellMin          = minPrice,
                    SellMax          = maxPrice,
                    PlayerVersionId  = playerVersionId
                };

                Logger.Log(LogType.Info, $"Program started. Searching for {numberToBuy} cards for Player: {SelectedPlayer.Name} at {price} price");

                IPuppetMaster puppetMaster = new PuppetMaster(screenController, playerObject, Logger, AutoRecover);
                puppetMaster.NavigateToTransferSearch();
                puppetMaster.SetSearchParameters();

                //TODO: Remove Debug Code
                Thread.Sleep(7000);

                Task.Factory.StartNew(() => PuppetMaster_Go(puppetMaster));
            }
            else
            {
                System.Windows.Forms.MessageBox.Show("Player is currently in use by another user");
            }
        }