/// <summary>
        /// Method that removes an item from the inventory system.
        /// </summary>
        /// <param name="selectedGameItemQuantity"></param>
        public void RemoveGameItemFromInventory(GameItemQuantity selectedGameItemQuantity)
        {
            GameItemQuantity gameItemQuantity = _inventory.FirstOrDefault(i => i.GameItem.ItemId == selectedGameItemQuantity.GameItem.ItemId);

            // The item isn't in the inventory yet, so we need to add it as a new quantity.
            if (gameItemQuantity != null)
            {
                // Clearing the equipped weapon or armor if the item dropped was the only one.
                if (gameItemQuantity.Quantity == 1)
                {
                    if (gameItemQuantity.GameItem.ItemId == _equippedWeapon.ItemId)
                    {
                        _equippedWeapon = GameData.GetGameItemById(0002);
                    }
                    if (gameItemQuantity.GameItem.ItemId == _equippedArmor.ItemId)
                    {
                        _equippedArmor = GameData.GetGameItemById(0001);
                    }
                    _inventory.Remove(gameItemQuantity);
                }
                else
                {
                    gameItemQuantity.Quantity--;
                }
            }

            UpdateInventory();
        }
Пример #2
0
        /// <summary>
        /// adds selected item to inventory by adding a new spot or adding the correct quantity to an existing one
        /// </summary> //////////////////////////////////////////////////////////////////////////////////////////////////////////
        ///
        ///

        /// <param name="selectedGameItemQuantity"></param>
        public void AddGameItemQuantityToInventory(GameItemQuantity selectedGameItemQuantity)
        {
            //find the item if it is in the inventory
            //////////////////////////////////////////

            GameItemQuantity gameItemQuantity = _inventory.FirstOrDefault(i => i.GameItem.Id == selectedGameItemQuantity.GameItem.Id);

            //if the game item is not in the inventory add a new GameItemQuantity object into the inventory
            ///////////////////////////////////////////////////////////////////////////////////////////////////
            if (gameItemQuantity == null)
            {
                GameItemQuantity newGameItemQuantity = new GameItemQuantity();
                newGameItemQuantity.GameItem = selectedGameItemQuantity.GameItem;
                newGameItemQuantity.Quantity = 1;

                _inventory.Add(newGameItemQuantity);
            }

            //if the selectedGameItemQuantity is in the inventory then add the appropriate quantity
            ///////////////////////////////////////////////////////////////////////////////////////////
            else
            {
                gameItemQuantity.Quantity++;
            }

            UpdateInventoryCategories();
        }
Пример #3
0
        //Removes an Item from the players inventory
        public void RemoveGameItemQuantityFromInventory(GameItemQuantity selectedGameItemQuantity)
        {
            GameItemQuantity gameItemQuantity = _inventory.FirstOrDefault(i => i.GameItem.Id == selectedGameItemQuantity.GameItem.Id);

            if (gameItemQuantity != null)
            {
                if (selectedGameItemQuantity.Quantity == 1)
                {
                    _inventory.Remove(gameItemQuantity);
                }
                else
                {
                    gameItemQuantity.Quantity--;
                }
            }

            UpdateInventoryCategories();
        }
Пример #4
0
        /// <summary>
        /// remove selected item from location or update quantity
        /// </summary>
        public void RemoveGameItemQuantityFromLocation(GameItemQuantity selectedGameItemQuantity)
        {
            // locate selected item in location
            GameItemQuantity gameItemQuantity = _gameItems.FirstOrDefault(i => i.GameItem.Id == selectedGameItemQuantity.GameItem.Id);

            if (gameItemQuantity != null)
            {
                if (selectedGameItemQuantity.Quantity == 1)
                {
                    _gameItems.Remove(gameItemQuantity);
                }
                else
                {
                    gameItemQuantity.Quantity--;
                }
            }
            UpdateLocationGameItems();
        }
Пример #5
0
        /// <summary>
        /// Method that removes an item from the inventory system.
        /// </summary>
        /// <param name="selectedGameItemQuantity"></param>
        public void RemoveGameItemFromInventory(GameItemQuantity selectedGameItemQuantity)
        {
            GameItemQuantity gameItemQuantity = _locationInventory.FirstOrDefault(i => i.GameItem.ItemId == selectedGameItemQuantity.GameItem.ItemId);

            // The item isn't in the inventory yet, so we need to add it as a new quantity.
            if (gameItemQuantity != null)
            {
                if (gameItemQuantity.Quantity == 1)
                {
                    _locationInventory.Remove(gameItemQuantity);
                }
                else
                {
                    gameItemQuantity.Quantity--;
                }
            }

            UpdateInventory();
        }
Пример #6
0
        /// <summary>
        /// add selected item to inventory or update quantity if already in inventory
        /// </summary>
        /// <param name="selectedGameItemQuantity">selected item</param>
        public void AddGameItemQuantityToInventory(GameItemQuantity selectedGameItemQuantity)
        {
            // locate selected item in inventory
            GameItemQuantity gameItemQuantity = _inventory.FirstOrDefault(i => i.GameItem.Id == selectedGameItemQuantity.GameItem.Id);

            if (gameItemQuantity == null)
            {
                GameItemQuantity newGameItemQuantity = new GameItemQuantity();
                newGameItemQuantity.GameItem = selectedGameItemQuantity.GameItem;
                newGameItemQuantity.Quantity = 1;

                _inventory.Add(newGameItemQuantity);
            }
            else
            {
                gameItemQuantity.Quantity++;
            }
            UpdateInventoryCategories();
        }
Пример #7
0
        /// <summary>
        /// add selected item to location or update quantity if already in location
        /// </summary>
        public void AddGameItemQuantityToLocation(GameItemQuantity selectedGameItemQuantity)
        {
            // locate selected item in location
            GameItemQuantity gameItemQuantity = _gameItems.FirstOrDefault(i => i.GameItem.Id == selectedGameItemQuantity.GameItem.Id);

            if (gameItemQuantity == null)
            {
                GameItemQuantity newGameItemQuantity = new GameItemQuantity();
                newGameItemQuantity.GameItem = selectedGameItemQuantity.GameItem;
                newGameItemQuantity.Quantity = 1;

                _gameItems.Add(newGameItemQuantity);
            }
            else
            {
                gameItemQuantity.Quantity++;
            }
            UpdateLocationGameItems();
        }
        /// <summary>
        /// Method that adds an item to the inventory system:
        /// </summary>
        /// <param name="selectedGameItemQuantity"></param>
        public void AddGameItemToInventory(GameItemQuantity selectedGameItemQuantity)
        {
            GameItemQuantity gameItemQuantity = _inventory.FirstOrDefault(i => i.GameItem.ItemId == selectedGameItemQuantity.GameItem.ItemId);

            // The item isn't in the inventory yet, so we need to add it as a new quantity.
            if (gameItemQuantity == null)
            {
                GameItemQuantity newgameItemQuantity = new GameItemQuantity();
                newgameItemQuantity.GameItem = selectedGameItemQuantity.GameItem;
                newgameItemQuantity.Quantity = 1;

                _inventory.Add(newgameItemQuantity);
            }
            else
            {
                gameItemQuantity.Quantity++;
            }

            UpdateInventory();
        }
Пример #9
0
        public List <GameItemQuantity> GameItemQuantitiesNotCompleted(List <GameItemQuantity> inventory)
        {
            List <GameItemQuantity> gameItemQuantitiesToComplete = new List <GameItemQuantity>();

            foreach (var missionGameItem in _requiredGameItemQuantites)
            {
                GameItemQuantity inventoryItemMatch = inventory.FirstOrDefault(gi => gi.GameItem.Id == missionGameItem.GameItem.Id);

                if (inventoryItemMatch == null)
                {
                    gameItemQuantitiesToComplete.Add(missionGameItem);
                }
                else
                {
                    if (inventoryItemMatch.Quantity < missionGameItem.Quantity)
                    {
                        gameItemQuantitiesToComplete.Add(missionGameItem);
                    }
                }
            }
            return(gameItemQuantitiesToComplete);
        }
Пример #10
0
        /// <summary>
        /// remove selected item from inventory
        /// </summary>
        /// <param name="selectedGameItemQuantity"></param>
        public void RemoveGameItemQuantityFromInventory(GameItemQuantity selectedGameItemQuantity)
        {
            //find the item if it is in the inventory
            //////////////////////////////////////////

            GameItemQuantity gameItemQuantity = _inventory.FirstOrDefault(i => i.GameItem.Id == selectedGameItemQuantity.GameItem.Id);

            //if the game item is in the inventory if there is only one remove it completely. If there is more than one subtract one from the inventory
            /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
            if (gameItemQuantity != null)
            {
                if (selectedGameItemQuantity.Quantity == 1)
                {
                    _inventory.Remove(gameItemQuantity);
                }
                else
                {
                    gameItemQuantity.Quantity--;
                }
            }

            UpdateInventoryCategories();
        }