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"); }
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"); }