/// <summary> /// get the action choice from the user /// </summary> public TravelerAction DisplayGetTravelerActionChoice() { TravelerAction travelerActionChoice = TravelerAction.None; bool usingMenu = true; while (usingMenu) { // // set up display area // ConsoleUtil.HeaderText = "Time Traveler Actions"; ConsoleUtil.DisplayReset(); Console.CursorVisible = false; ConsoleUtil.DisplayMessage($"Current Health : {_gameTraveler.HealthPoints}"); // // display the menu // ConsoleUtil.DisplayMessage("What would you like to do (Type Letter)?"); Console.WriteLine(); Console.WriteLine( "\t" + "**************************" + Environment.NewLine + "\t" + "Time Traveler Actions" + Environment.NewLine + "\t" + "**************************" + Environment.NewLine + "\t" + "A. Look Around" + Environment.NewLine + "\t" + "B. Look At" + Environment.NewLine + "\t" + "C. Talk To" + Environment.NewLine + "\t" + "D. Hover" + Environment.NewLine + "\t" + "E. Pick Up Item" + Environment.NewLine + "\t" + "F. Pick Up Treasure" + Environment.NewLine + "\t" + "G. Put Down Item" + Environment.NewLine + "\t" + "H. Put Down Treasure" + Environment.NewLine + "\t" + "I. Travel" + Environment.NewLine + "\t" + Environment.NewLine + "\t" + "**************************" + Environment.NewLine + "\t" + "Time Traveler Information" + Environment.NewLine + "\t" + "**************************" + Environment.NewLine + "\t" + "J. Display General Time Traveler Information" + Environment.NewLine + "\t" + "K. Display Time Traveler Inventory" + Environment.NewLine + "\t" + "L. Display Time Traveler Treasure" + Environment.NewLine + "\t" + Environment.NewLine + "\t" + "**************************" + Environment.NewLine + "\t" + "Game Information" + Environment.NewLine + "\t" + "**************************" + Environment.NewLine + "\t" + "M. Display All Year Destinations" + Environment.NewLine + "\t" + "N. Display All Game Items" + Environment.NewLine + "\t" + "O. Display All Game Treasures" + Environment.NewLine + "\t" + Environment.NewLine + "\t" + "**************************" + Environment.NewLine + "\t" + "Q. Quit" + Environment.NewLine); // // get and process the user's response // note: ReadKey argument set to "true" disables the echoing of the key press // ConsoleKeyInfo userResponse = Console.ReadKey(true); switch (userResponse.KeyChar) { case 'A': case 'a': travelerActionChoice = TravelerAction.LookAround; usingMenu = false; break; case 'B': case 'b': travelerActionChoice = TravelerAction.LookAt; usingMenu = false; break; case 'C': case 'c': travelerActionChoice = TravelerAction.TalkTo; usingMenu = false; break; case 'D': case 'd': travelerActionChoice = TravelerAction.Hover; usingMenu = false; break; case 'E': case 'e': travelerActionChoice = TravelerAction.PickUpItem; usingMenu = false; break; case 'F': case 'f': travelerActionChoice = TravelerAction.PickUpTreasure; usingMenu = false; break; case 'G': case 'g': travelerActionChoice = TravelerAction.PutDownItem; usingMenu = false; break; case 'H': case 'h': travelerActionChoice = TravelerAction.PutDownTreasure; usingMenu = false; break; case 'I': case 'i': travelerActionChoice = TravelerAction.Travel; usingMenu = false; break; case 'J': case 'j': travelerActionChoice = TravelerAction.TravelerInfo; usingMenu = false; break; case 'K': case 'k': travelerActionChoice = TravelerAction.TravelerInventory; usingMenu = false; break; case 'L': case 'l': travelerActionChoice = TravelerAction.TravelerTreasure; usingMenu = false; break; case 'M': case 'm': travelerActionChoice = TravelerAction.ListYearDestinations; usingMenu = false; break; case 'N': case 'n': travelerActionChoice = TravelerAction.ListItems; usingMenu = false; break; case 'O': case 'o': travelerActionChoice = TravelerAction.ListTreasures; usingMenu = false; break; case 'Q': case 'q': travelerActionChoice = TravelerAction.Exit; usingMenu = false; break; default: Console.WriteLine( "It appears you have selected an incorrect choice." + Environment.NewLine + "Press any key to continue or the ESC key to quit the application."); userResponse = Console.ReadKey(true); if (userResponse.Key == ConsoleKey.Escape) { usingMenu = false; } break; } } Console.CursorVisible = true; return(travelerActionChoice); }
/// <summary> /// get and validate the player's year destination /// </summary> /// <returns>-time location</returns> public YearLocation DisplayGetTravelersNewDestination() { bool validResponse = false; int locationID; YearLocation nextYearTimeLocation = new YearLocation(); while (!validResponse) { // // display header // ConsoleUtil.HeaderText = "Year Destination"; ConsoleUtil.DisplayReset(); // // display a table of locations DisplayYearDestinationTable(); // // get and validate user's response for a location // ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayPromptMessage("Choose the year destination by entering the ID: "); // // user's response is an integer // if (int.TryParse(Console.ReadLine(), out locationID)) { ConsoleUtil.DisplayMessage(""); try { nextYearTimeLocation = _gameYear.GetYearTimeLocationByID(locationID); ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayMessage($"You have indicated {nextYearTimeLocation.Name} as your destination."); ConsoleUtil.DisplayMessage(""); if (nextYearTimeLocation.Accessable == true) { validResponse = true; ConsoleUtil.DisplayMessage("You have reached 88 miles per hour in the DeLorean. Were off to the Future!"); var myplayer = new System.Media.SoundPlayer(); myplayer.SoundLocation = @"C:\Users\Jennifer\Documents\Visual Studio 2015\Projects\Back To The Future Game [sprint 3]\Project_TARDIS.S2_Starter\sound\workedgreat.wav"; myplayer.Play(); } else if (nextYearTimeLocation.Accessable == false) { ConsoleUtil.DisplayMessage("The Flux Capacitor is broke and you can't travel to this year at this time. This could have something to do with your inventory items"); ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage("Please make another choice."); var myplayer = new System.Media.SoundPlayer(); myplayer.SoundLocation = @"C:\Users\Jennifer\Documents\Visual Studio 2015\Projects\Back To The Future Game [sprint 3]\Project_TARDIS.S2_Starter\sound\wrongyear.wav"; myplayer.Play(); } else { } } // // user's response was not in the correct range // catch (ArgumentOutOfRangeException ex) { ConsoleUtil.DisplayMessage("It appears you entered an invalid year ID."); ConsoleUtil.DisplayMessage(ex.Message); ConsoleUtil.DisplayMessage("Please try again."); } } // // user's response was not an integer // else { ConsoleUtil.DisplayMessage("It appears you did not enter a number for the year ID."); ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage("Please try again."); } DisplayContinuePrompt(); } return(nextYearTimeLocation); }
private void UpdateGameStatus() { foreach (Item item in _gameTraveler.TravelersItems) { if (item.Value > 299 && item.HasValue == true) { _gameConsoleView.CanAddToInventory(); } } foreach (Item item in _gameTraveler.TravelersItems) { if (item.GameObjectID == 7) { _gameConsoleView.HasRequiredItemToEnterLocation(); } } if (_gameTraveler.TimeLocationID == 4 || _gameTraveler.TimeLocationID == 1) { _gameTraveler.HealthPoints -= 7; } if (_gameTraveler.HealthPoints == 0) { _gameConsoleView.DisplaySpawn(); } foreach (Item item in _gameTraveler.TravelersItems) { if (item.GameObjectID == 8) { _gameTraveler.HoverExperience = 65; } } int a = _gameTraveler.HealthPoints; int b = 21; int result; foreach (Treasure treasure in _gameTraveler.TravelersTreasures) { if (treasure.GameObjectID == 3 || treasure.GameObjectID == 4) { if (_gameTraveler.HealthPoints < 75) { result = a + b; } } } foreach (Treasure treasure in _gameTraveler.TravelersTreasures) { if (treasure.GameObjectID == 6) { _gameTraveler.HoverExperience = 65; } } foreach (Item item in _gameTraveler.TravelersItems) { if (item.GameObjectID == 1) { if (_gameTraveler.HealthPoints < 75) { result = a + b; } } } foreach (Item item in _gameTraveler.TravelersItems) { if (item.GameObjectID == 3) { if (item is IHover) { var theItem = item as IHover; ConsoleUtil.DisplayMessage($"BatteryPower Percentage: {theItem.BatteryPower}"); } } } }
/// <summary /// console write public void DisplayWrongItem() { ConsoleUtil.DisplayMessage("You do not have the correct item to execute the traveler action. "); }
/// <summary> /// display hover abilities /// </summary> public void Hover() { ConsoleUtil.HeaderText = "Hover"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayMessage(""); }