public Treasure DisplayPutDownTreasure() { ConsoleUtil.HeaderText = "Put Down Treasure"; ConsoleUtil.DisplayReset(); if (_gameTraveler.TravelersTreasures.Count == 0) { ConsoleUtil.DisplayMessage("You have no treasures"); DisplayContinuePrompt(); return(null); } else { ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage("Your Treasures"); ConsoleUtil.DisplayMessage(""); Treasure choice = DisplayChooseFromList <Treasure>("Which treasure to put down?", _gameTraveler.TravelersTreasures); ConsoleUtil.DisplayMessage(">Put down a " + choice.Name); DisplayContinuePrompt(); return(choice); } }
/// <summary> /// display information about the current space-time location /// </summary> public void DisplayLookAround() { ConsoleUtil.HeaderText = "Current Space-Time Location Info"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayMessage(_gameUniverse.GetSpaceTimeLocationByID(_gameTraveler.SpaceTimeLocationID).Description); ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage("Items in current location."); foreach (Item item in _gameUniverse.GetItemtsBySpaceTimeLocationID(_gameTraveler.SpaceTimeLocationID)) { ConsoleUtil.DisplayMessage(item.Name + " - " + item.Description); } ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage("Treasures in current location."); foreach (Treasure treasure in _gameUniverse.GetTreasuressBySpaceTimeLocationID(_gameTraveler.SpaceTimeLocationID)) { ConsoleUtil.DisplayMessage(treasure.Name + " - " + treasure.Description); } DisplayContinuePrompt(); }
/// <summary> /// get the id of an treasure to add to inventory /// </summary> /// <returns>id of desired item</returns> public Treasure DisplayPickUpTreasure() { ConsoleUtil.HeaderText = "Pick Up Treasure"; ConsoleUtil.DisplayReset(); if (localTreasures().Count == 0) { ConsoleUtil.DisplayMessage("There's no treasure here"); DisplayContinuePrompt(); return(null); } else { ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage("Treasure in current Location"); ConsoleUtil.DisplayMessage(""); Treasure choice = DisplayChooseFromList <Treasure>("Which treasure to pick up?", localTreasures()); ConsoleUtil.DisplayMessage("> Picked up a " + choice.Name); DisplayContinuePrompt(); return(choice); } }
public Item DisplayPutDownItem() { ConsoleUtil.HeaderText = "Put Down Item"; ConsoleUtil.DisplayReset(); if (_gameTraveler.TravelersItems.Count == 0) { ConsoleUtil.DisplayMessage("You have no items"); DisplayContinuePrompt(); return(null); } else { ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage("Items in inventory"); ConsoleUtil.DisplayMessage(""); Item choice = DisplayChooseFromList <Item>("Which item to put down?", _gameTraveler.TravelersItems); ConsoleUtil.DisplayMessage(">Put down a " + choice.Name); DisplayContinuePrompt(); return(choice); } }
public Item DisplayPickUpItem() { ConsoleUtil.HeaderText = "Pick Up Item"; ConsoleUtil.DisplayReset(); if (localItems().Count == 0) { ConsoleUtil.DisplayMessage("There's no items here"); DisplayContinuePrompt(); return(null); } else { ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayMessage("Items in current Location"); ConsoleUtil.DisplayMessage(""); Item choice = DisplayChooseFromList <Item>("Which item to pick up?", localItems()); ConsoleUtil.DisplayMessage("> Picked up a " + choice.Name); DisplayContinuePrompt(); return(choice); } }
/// <summary> /// get the traveler's BattleAction choice /// </summary> /// <returns>BattleAction</returns> public BattleAction DisplayGetBattleActionChoice() { BattleAction battleActionChoice = BattleAction.None; ConsoleUtil.HeaderText = "Choose a Battle Action"; ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayMessage("Enter one of the following actions."); ConsoleUtil.DisplayMessage(""); foreach (BattleAction action in Enum.GetValues(typeof(BattleAction))) { ConsoleUtil.DisplayMessage(action.ToString()); } ConsoleUtil.DisplayMessage(""); ConsoleUtil.DisplayPromptMessage("Enter your battle action:"); // TODO validate Enum.TryParse <BattleAction>(Console.ReadLine(), out battleActionChoice); DisplayContinuePrompt(); return(battleActionChoice); }
/// <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 = "Traveler Action Choice"; ConsoleUtil.DisplayReset(); Console.CursorVisible = false; // // display the menu // ConsoleUtil.DisplayMessage("What would you like to do (Type Letter)."); Console.WriteLine(); Console.WriteLine( "\t" + "**************************" + Environment.NewLine + "\t" + "Traveler Actions" + Environment.NewLine + "\t" + "**************************" + Environment.NewLine + "\t" + "A. Look Around" + Environment.NewLine + "\t" + "B. Look At" + Environment.NewLine + "\t" + "C. Pick Up Item" + Environment.NewLine + "\t" + "D. Pick Up Treasure" + Environment.NewLine + "\t" + "E. Put Down Item" + Environment.NewLine + "\t" + "F. Put Down Treasure" + Environment.NewLine + "\t" + "G. Travel" + Environment.NewLine + "\t" + Environment.NewLine + "\t" + "**************************" + Environment.NewLine + "\t" + "Traveler Information" + Environment.NewLine + "\t" + "**************************" + Environment.NewLine + "\t" + "H. Display General Traveler Info" + Environment.NewLine + "\t" + "I. Display Traveler Inventory" + Environment.NewLine + "\t" + "J. Display Traveler Treasure" + Environment.NewLine + "\t" + Environment.NewLine + "\t" + "**************************" + Environment.NewLine + "\t" + "Game Information" + Environment.NewLine + "\t" + "**************************" + Environment.NewLine + "\t" + "K. Display All TARDIS Destinations" + Environment.NewLine + "\t" + "L. Display All Game Items" + Environment.NewLine + "\t" + "M. 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.PickUpItem; usingMenu = false; break; case 'D': case 'd': travelerActionChoice = TravelerAction.PickUpTreasure; usingMenu = false; break; case 'E': case 'e': travelerActionChoice = TravelerAction.PutDownItem; usingMenu = false; break; case 'F': case 'f': travelerActionChoice = TravelerAction.PutDownTreasure; usingMenu = false; break; case 'G': case 'g': travelerActionChoice = TravelerAction.Travel; usingMenu = false; break; case 'H': case 'h': travelerActionChoice = TravelerAction.TravelerInfo; usingMenu = false; break; case 'I': case 'i': travelerActionChoice = TravelerAction.TravelerInventory; usingMenu = false; break; case 'J': case 'j': travelerActionChoice = TravelerAction.TravelerTreasure; usingMenu = false; break; case 'K': case 'k': travelerActionChoice = TravelerAction.ListTARDISDestinations; usingMenu = false; break; case 'L': case 'l': travelerActionChoice = TravelerAction.ListItems; usingMenu = false; break; case 'M': case 'm': 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 TARDIS destination /// </summary> /// <returns>space-time location</returns> public SpaceTimeLocation DisplayGetTravelersNewDestination() { bool validResponse = false; int locationID; SpaceTimeLocation nextSpaceTimeLocation = new SpaceTimeLocation(); while (!validResponse) { // // display header // ConsoleUtil.HeaderText = "TARDIS Destination"; ConsoleUtil.DisplayReset(); // // display a table of space-time locations // DisplayTARDISDestinationsTable(); // // get and validate user's response for a space-time location // ConsoleUtil.DisplayPromptMessage("Choose the TARDIS destination by entering the ID: "); // // user's response is an integer // if (int.TryParse(Console.ReadLine(), out locationID)) { ConsoleUtil.DisplayMessage(""); try { nextSpaceTimeLocation = _gameUniverse.GetSpaceTimeLocationByID(locationID); ConsoleUtil.DisplayReset(); ConsoleUtil.DisplayMessage($"You have indicated {nextSpaceTimeLocation.Name} as your TARDIS destination."); ConsoleUtil.DisplayMessage(""); if (nextSpaceTimeLocation.Accessable == true) { validResponse = true; ConsoleUtil.DisplayMessage("You will be transported immediately."); } else { ConsoleUtil.DisplayMessage("It appears this destination is not available to you at this time."); ConsoleUtil.DisplayMessage("Please make another choice."); } } // // user's response was not in the correct range // catch (ArgumentOutOfRangeException ex) { ConsoleUtil.DisplayMessage("It appears you entered an invalid location 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 location ID."); ConsoleUtil.DisplayMessage("Please try again."); } DisplayContinuePrompt(); } return(nextSpaceTimeLocation); }
/// <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 = "Traveler Action Choice"; ConsoleUtil.DisplayReset(); Console.CursorVisible = false; // // display the menu // ConsoleUtil.DisplayMessage("What would you like to do (Type Number)."); Console.WriteLine(); Console.WriteLine( "\t" + "1. Look Around" + Environment.NewLine + "\t" + "2. Travel" + Environment.NewLine + "\t" + "3. Display All TARDIS Destinations" + Environment.NewLine + "\t" + "4. Display Traveler Info" + Environment.NewLine + "\t" + "E. Exit" + 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 '1': travelerActionChoice = TravelerAction.LookAround; usingMenu = false; break; case '2': travelerActionChoice = TravelerAction.Travel; usingMenu = false; break; case '3': travelerActionChoice = TravelerAction.ListTARDISDestinations; usingMenu = false; break; case '4': travelerActionChoice = TravelerAction.TravlerInfo; usingMenu = false; break; case 'E': case 'e': 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); }