コード例 #1
0
ファイル: Controller.cs プロジェクト: dreaweiner/TB_QuestGame
        /// <summary>
        /// initialize the major game objects
        /// </summary>
        private void InitializeGame()
        {
            _gamePlayer      = new Player();
            _gameUniverse    = new Universe();
            _gameConsoleView = new ConsoleView(_gamePlayer, _gameUniverse);
            PlayerObject playerObject;

            _playingGame = true;

            //
            // add the event handler for adding/subtracting to/from inventory
            //
            foreach (GameObject gameObject in _gameUniverse.GameObjects)
            {
                if (gameObject is PlayerObject)
                {
                    playerObject = gameObject as PlayerObject;
                    playerObject.ObjectAddedToInventory += HandleObjectAddedToInventory;
                }
            }

            //
            // add initial items to the player's inventory
            //

            PlayerObject playerObject1 = _gameUniverse.GetGameObjectById(2) as PlayerObject;
            PlayerObject playerObject2 = _gameUniverse.GetGameObjectById(3) as PlayerObject;
            PlayerObject playerObject3 = _gameUniverse.GetGameObjectById(4) as PlayerObject;

            playerObject1.SpaceTimeLocationId = 0;
            playerObject2.SpaceTimeLocationId = 0;
            playerObject3.SpaceTimeLocationId = 0;

            Console.CursorVisible = false;
        }
コード例 #2
0
ファイル: Controller.cs プロジェクト: dreaweiner/TB_QuestGame
        /// <summary>
        /// show the game objects
        /// </summary>
        private void LookAtAction()
        {
            //
            // display a list of player objects in location and get a player choice
            //
            int gameObjectToLookAtId = _gameConsoleView.DisplayGetGameObjectToLookAt();

            //
            // display game object info
            //
            if (gameObjectToLookAtId != 0)
            {
                //
                // get the game object from the universe
                //
                if (gameObjectToLookAtId != 0)
                {
                    //
                    // get the game object from the universe
                    //
                    GameObject gameObject = _gameUniverse.GetGameObjectById(gameObjectToLookAtId);

                    //
                    // display infomation for the object chosen
                    //
                    _gameConsoleView.DisplayGameObjectInfo(gameObject);
                }
            }
        }
コード例 #3
0
        /// <summary>
        /// initialize the major game objects
        /// </summary>
        private void InitializeGame()
        {
            _gameSurvivor    = new Survivor();
            _gameUniverse    = new Universe();
            _gameConsoleView = new ConsoleView(_gameSurvivor, _gameUniverse);
            _playingGame     = true;

            //
            // add initial items to the traveler's inventory
            //
            _gameSurvivor.Inventory.Add(_gameUniverse.GetGameObjectById(1) as SurvivorObject);
            _gameSurvivor.Inventory.Add(_gameUniverse.GetGameObjectById(2) as SurvivorObject);

            Console.CursorVisible = false;
        }
コード例 #4
0
        public int DisplayGetSurvivorObjectToPickUp()
        {
            int  gameObjectId      = 0;
            bool validGameObjectId = false;

            //
            // get a list of survivor objects in the current island location
            //
            List <SurvivorObject> survivorObjectsInIslandLocation = _gameUniverse.GetSurvivorObjectsByIslandLocationId(_gameSurvivor.IslandLocationID);

            if (survivorObjectsInIslandLocation.Count > 0)
            {
                DisplayGamePlayScreen("Pick Up Game Object", Text.GameObjectsChooseList(survivorObjectsInIslandLocation), ActionMenu.ObjectMenu, "");

                while (!validGameObjectId)
                {
                    //
                    // get an integer from the player
                    //
                    GetInteger($"Enter the Id number of the object you wish to add to your inventory: ", 0, 0, out gameObjectId);

                    //
                    // validate integer as a valid game object id and in current location
                    //
                    if (_gameUniverse.IsValidSurvivorObjectByLocationId(gameObjectId, _gameSurvivor.IslandLocationID))
                    {
                        SurvivorObject survivorObject = _gameUniverse.GetGameObjectById(gameObjectId) as SurvivorObject;
                        if (survivorObject.CanInventory)
                        {
                            validGameObjectId = true;
                        }
                        else
                        {
                            ClearInputBox();
                            DisplayInputErrorMessage("It appears you may not inventory that object. Please try again.");
                        }
                    }
                    else
                    {
                        ClearInputBox();
                        DisplayInputErrorMessage("It appears that you entered an invalid game object id. Please try again.");
                    }
                }
            }
            else
            {
                DisplayGamePlayScreen("Pick Up Game Object", "It appears there are no game objects here.", ActionMenu.ObjectMenu, "");
            }

            return(gameObjectId);
        }
コード例 #5
0
        /// <summary>
        /// initialize the major game objects
        /// </summary>
        private void InitializeGame()
        {
            _gamePlayer      = new Prospector();
            _gameUniverse    = new Universe();
            _gameConsoleView = new ConsoleView(_gamePlayer, _gameUniverse);
            _playingGame     = true;
            ProspectorObject prospectorObject;

            foreach (GameObject gameObject in _gameUniverse.GameObjects)
            {
                if (gameObject is ProspectorObject)
                {
                    prospectorObject = gameObject as ProspectorObject;
                    prospectorObject.objectAddedToInventory += HandleObjectAddedToInventory;
                }
            }

            //
            //add initial items to the travelers inventory
            //
            _gamePlayer.Inventory.Add(_gameUniverse.GetGameObjectById(1) as ProspectorObject);

            Console.CursorVisible = false;
        }
コード例 #6
0
        private void UpdateGameStatus(bool _playingGame)
        {
            if (!_gameSurvivor.HasVisited(_currentLocation.IslandLocationID))
            {
                //
                // add new location to the list of visited locations if this is a first visit
                //
                _gameSurvivor.IslandLocationsVisisted.Add(_currentLocation.IslandLocationID);

                //
                // update experience points for visiting locations
                //
                _gameSurvivor.ExperiencePoints += _currentLocation.ExperiencePoints;
            }

            //
            // if they have both parts of the radio, they win the game
            //
            if (_gameSurvivor.Inventory.Contains(_gameUniverse.GetGameObjectById(75)) && _gameSurvivor.Inventory.Contains(_gameUniverse.GetGameObjectById(79)))
            {
                _gameConsoleView.DisplayGameWon();
                _playingGame = false;
                Environment.Exit(1);
            }

            //
            // update location accessiblity
            //
            if (_currentLocation.IslandLocationID == 1)
            {
                _gameUniverse.GetIslandLocationById(1).Accessible = true;
                _gameUniverse.GetIslandLocationById(2).Accessible = true;
                _gameUniverse.GetIslandLocationById(3).Accessible = false;
                _gameUniverse.GetIslandLocationById(4).Accessible = false;
                _gameUniverse.GetIslandLocationById(5).Accessible = false;
                _gameUniverse.GetIslandLocationById(6).Accessible = false;
                _gameUniverse.GetIslandLocationById(7).Accessible = false;
            }
            else if (_currentLocation.IslandLocationID == 2)
            {
                _gameUniverse.GetIslandLocationById(1).Accessible = true;
                _gameUniverse.GetIslandLocationById(2).Accessible = true;
                _gameUniverse.GetIslandLocationById(3).Accessible = true;
                _gameUniverse.GetIslandLocationById(4).Accessible = true;
                _gameUniverse.GetIslandLocationById(5).Accessible = false;
                _gameUniverse.GetIslandLocationById(6).Accessible = false;
                _gameUniverse.GetIslandLocationById(7).Accessible = false;
            }
            else if (_currentLocation.IslandLocationID == 3)
            {
                _gameUniverse.GetIslandLocationById(1).Accessible = false;
                _gameUniverse.GetIslandLocationById(2).Accessible = true;
                _gameUniverse.GetIslandLocationById(3).Accessible = true;
                _gameUniverse.GetIslandLocationById(4).Accessible = false;
                _gameUniverse.GetIslandLocationById(5).Accessible = true;
                _gameUniverse.GetIslandLocationById(6).Accessible = false;
                _gameUniverse.GetIslandLocationById(7).Accessible = false;
            }
            else if (_currentLocation.IslandLocationID == 4)
            {
                _gameUniverse.GetIslandLocationById(1).Accessible = false;
                _gameUniverse.GetIslandLocationById(2).Accessible = true;
                _gameUniverse.GetIslandLocationById(3).Accessible = false;
                _gameUniverse.GetIslandLocationById(4).Accessible = true;
                _gameUniverse.GetIslandLocationById(5).Accessible = false;
                _gameUniverse.GetIslandLocationById(6).Accessible = false;
                _gameUniverse.GetIslandLocationById(7).Accessible = false;
            }
            else if (_currentLocation.IslandLocationID == 5)
            {
                _gameUniverse.GetIslandLocationById(1).Accessible = false;
                _gameUniverse.GetIslandLocationById(2).Accessible = false;
                _gameUniverse.GetIslandLocationById(3).Accessible = true;
                _gameUniverse.GetIslandLocationById(4).Accessible = false;
                _gameUniverse.GetIslandLocationById(5).Accessible = true;
                _gameUniverse.GetIslandLocationById(6).Accessible = true;
                _gameUniverse.GetIslandLocationById(7).Accessible = false;
            }
            else if (_currentLocation.IslandLocationID == 6)
            {
                _gameUniverse.GetIslandLocationById(1).Accessible = false;
                _gameUniverse.GetIslandLocationById(2).Accessible = false;
                _gameUniverse.GetIslandLocationById(3).Accessible = false;
                _gameUniverse.GetIslandLocationById(4).Accessible = false;
                _gameUniverse.GetIslandLocationById(5).Accessible = true;
                _gameUniverse.GetIslandLocationById(6).Accessible = true;
                _gameUniverse.GetIslandLocationById(7).Accessible = true;
            }
            else if (_currentLocation.IslandLocationID == 7)
            {
                _gameUniverse.GetIslandLocationById(1).Accessible = false;
                _gameUniverse.GetIslandLocationById(2).Accessible = false;
                _gameUniverse.GetIslandLocationById(3).Accessible = false;
                _gameUniverse.GetIslandLocationById(4).Accessible = false;
                _gameUniverse.GetIslandLocationById(5).Accessible = false;
                _gameUniverse.GetIslandLocationById(6).Accessible = true;
                _gameUniverse.GetIslandLocationById(7).Accessible = true;
            }
        }