Example #1
0
        public List <Coin> ChooseCoinsToDeposit()
        {
            List <Coin> deposit = null;
            bool        input   = true;

            while (input)
            {
                bool success = Int32.TryParse(UserInterface.DisplayCoinSelection(), out int coinChoice);
                Console.Clear();
                if (success && coinChoice > 0 && coinChoice < 5)
                {
                    if (wallet.ContainsCoin(coinChoice))
                    {
                        wallet.RemoveCoin(coinChoice);
                        deposit = DepositSingleCoin(coinChoice, deposit);
                    }
                    else
                    {
                        UserInterface.NoCoinMessage(coinChoice);
                    }
                }
                else if (coinChoice == 5)
                {
                    if (deposit != null)
                    {
                        input = false;
                    }
                }
                else if (coinChoice == 6)
                {
                    if (deposit != null)
                    {
                        wallet.AcceptCoins(deposit);
                        deposit.Clear();
                    }
                }
                UserInterface.WelcomeMessage();
                UserInterface.DisplayValue("deposited", deposit);
            }
            return(deposit);
        }