Example #1
0
        public List <Item> GetItems(bool addGlobalItems)
        {
            List <Item> droppedItems = new List <Item>();

            foreach (ItemAndRarity item in Items)
            {
                float value = Random.value;
                if (item.dropChance > value)
                {
                    Item itemThatGoesToInventory = item.item;
                    if (item.item.ShouldCreateNewInstanceWhenPlayerObtained())
                    {
                        itemThatGoesToInventory = Object.Instantiate(item.item);
                        itemThatGoesToInventory.CreatedFromOriginal = true;
                        itemThatGoesToInventory.OnAfterObtained();
                    }
                    droppedItems.Add(itemThatGoesToInventory);
                }
            }

            if (addGlobalItems)
            {
                droppedItems.AddRange(ItemDropManager.GetRandomDrop());
            }

            return(droppedItems);
        }