Ejemplo n.º 1
0
        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);
            }
        }
Ejemplo n.º 2
0
        /// <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();
        }
Ejemplo n.º 3
0
        /// <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);
            }
        }
Ejemplo n.º 4
0
        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);
            }
        }
Ejemplo n.º 5
0
        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);
            }
        }
Ejemplo n.º 6
0
        /// <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);
        }
Ejemplo n.º 7
0
        /// <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);
        }
Ejemplo n.º 8
0
        /// <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);
        }
Ejemplo n.º 9
0
        /// <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);
        }