Example #1
0
        static void Main(string[] args)
        {
            var budget = new Budget();

            var eventRepository = new EventRepository();

            eventRepository.PopulateEvents();

            var hostRepository = new HostRepository();

            hostRepository.CreateSeedDataHosts();

            var currentLeaper = new Leaper("Zack Taylor");

            var leapRepository = new LeapRepository();

            var action = "";

            do
            {
                Console.WriteLine("What do you want to do? [leap/fund/get history/exit]");
                action = Console.ReadLine();
                // leap
                if (action == "leap")
                {
                    if (budget.CheckBudget())
                    {
                        leapRepository.TakeALeap(currentLeaper, hostRepository, eventRepository);
                        var newLeapComplete = leapRepository.ReturnLastLeap();
                        Console.WriteLine($"Leap complete. You were hosted by " +
                                          $"{newLeapComplete.Host.Name} and you went to {newLeapComplete.Event.Location}.");
                    }
                    else
                    {
                        Console.WriteLine($"You need to add funds.");
                    }
                }

                // fund
                if (action == "fund")
                {
                    budget.AddFunds();
                    Console.WriteLine("You added $5000 to your budget");
                }

                // get history
                if (action == "get history")
                {
                    var leapHistory = leapRepository.GetLeapHistory(currentLeaper);
                    int leapCounter = 1;

                    foreach (var leap in leapHistory)
                    {
                        Console.WriteLine(leapCounter);
                        Console.WriteLine($"Location: {leap.Event.Location}");
                        Console.WriteLine($"Date: {leap.Event.Date.ToString("MM/dd/yyyy")}");
                        Console.WriteLine($"Leaper: {leap.Leaper.Name}");
                        Console.WriteLine($"Host: {leap.Host.Name}");
                        Console.WriteLine("");

                        leapCounter++;
                    }
                }
            } while (action != "exit");
        }
Example #2
0
        public void DisplayUserInterface()
        {
            ChooseLeaperGui();

            Console.WriteLine($"Welcome back {_leaper.Name}, what would you like to do?\n");

            var selection = "";

            do
            {
                Console.ForegroundColor = ConsoleColor.Magenta;
                Console.Write("Type");
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.Write(" \"leap\" ");
                Console.ForegroundColor = ConsoleColor.Magenta;
                Console.WriteLine("to take a leap.");

                Console.Write("Type");
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.Write(" \"fund\" ");
                Console.ForegroundColor = ConsoleColor.Magenta;
                Console.WriteLine("to add more money to your budget.");

                Console.Write("Type");
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.Write(" \"history\" ");
                Console.ForegroundColor = ConsoleColor.Magenta;
                Console.WriteLine("for a list of your past leaps.");

                Console.Write("Type");
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.Write(" \"quit\" ");
                Console.ForegroundColor = ConsoleColor.Magenta;
                Console.WriteLine("to close up shop and go home.\n");
                Console.ForegroundColor = ConsoleColor.White;

                selection = Console.ReadLine();
                Console.Clear();

                switch (selection)
                {
                case "history":
                    var leapRepo    = new LeapRepository();
                    var leapHistory = leapRepo.GetLeapHistory();

                    if (leapHistory == "You haven't made any leaps yet.\n")
                    {
                        Console.ForegroundColor = ConsoleColor.Yellow;
                        Console.WriteLine(leapHistory);
                        Console.ForegroundColor = ConsoleColor.White;
                    }
                    else
                    {
                        Console.ForegroundColor = ConsoleColor.Cyan;
                        Console.WriteLine(leapHistory);
                        Console.ForegroundColor = ConsoleColor.White;
                    }

                    Console.WriteLine("What would you like to do next?\n");
                    break;

                case "fund":
                    Console.ForegroundColor = ConsoleColor.Magenta;
                    Console.WriteLine("Enter the amount.\n");
                    Console.ForegroundColor = ConsoleColor.Green;
                    var fundAmount = Console.ReadLine();
                    var budget     = _lab.AddFunds(fundAmount);
                    Console.WriteLine();
                    Console.WriteLine($"You added ${fundAmount} to your budget. Your budget is ${budget}.\n");
                    Console.ForegroundColor = ConsoleColor.White;

                    Console.WriteLine("What would you like to do next?\n");
                    break;

                case "leap":
                    _lab.AttemptLeap(_leaper);

                    Console.WriteLine("What would you like to do next?\n");
                    break;

                case "quit":
                    Console.ForegroundColor = ConsoleColor.Blue;
                    Console.WriteLine($"Have a good night {_leaper.Name}.");
                    Console.ForegroundColor = ConsoleColor.White;
                    break;

                default:
                    Console.ForegroundColor = ConsoleColor.Yellow;
                    Console.WriteLine("That is an invalid request. Please try again.\n");
                    Console.ForegroundColor = ConsoleColor.White;

                    Console.WriteLine($"What would you like to do {_leaper.Name}?\n");
                    break;
                }
            }while (selection != "quit");
        }