Exemple #1
0
        private void ProductSelectionMenu()
        {
            bool exitSelection = false;

            while (!exitSelection)
            {
                DisplayItems();
                Console.WriteLine();
                Console.WriteLine($"Current Money Provided: {_vm.UserBalance.ToString("C")}");
                Console.WriteLine();
                Console.Write("Enter Your Selection or (Q)uit: ");

                ResidentEvil();

                string userSelection = Console.ReadLine().ToUpper();

                if (_vm.ItemButtonExists(userSelection))
                {
                    //purchase item if available
                    if (_vm.ItemAvailable(userSelection) && _vm.CanPurchase(userSelection))
                    {
                        PurchaseItem(userSelection);
                    }
                    else if (!_vm.ItemAvailable(userSelection))
                    {
                        Console.WriteLine("We're sorry, but the selected item is currently unavailable");
                        PressAnyToContinue();
                    }
                    else
                    {
                        Console.WriteLine($"Selected item costs more than the availabe balance of {_vm.UserBalance.ToString("C")}.");
                        Console.WriteLine("Please insert more money.");
                        PressAnyToContinue();
                    }
                }
                else if (userSelection.Equals("Q"))
                {
                    //leave item selection
                    exitSelection = true;
                }
                else
                {
                    Console.WriteLine("Selection not recognized, please try again.");
                    PressAnyToContinue();
                }
            }
        }