Esempio n. 1
0
    public List <GameObject> ChooseContentChest(AllItemsAsset availableItems, List <GameObject> unlocked)
    {
        int nbItems                 = 2;
        List <GameObject> items     = new List <GameObject>();
        float             minRarity = 0;    //Random.Range(0.2f, ((10 / 7) - 0.19f) / 2);
        float             maxRarity = 1000; //Random.Range(((10 / 7) - 0.2f) / 2, 10 / 7);
        int len = availableItems.AllItems.Count;
        List <GameObject> allItems = availableItems.AllItems;

        int  i;
        bool stillWeapon = true;
        bool stillObject = true;

        while (nbItems > 0)
        {
            i = Random.Range(0, len);
            if (stillWeapon && unlocked.Contains(allItems[i]) && allItems[i].CompareTag("Weapon"))
            {
                stillWeapon = false;
                nbItems    -= 1;
                items.Add(allItems[i]);
            }
            if (stillObject && allItems[i].CompareTag("Object") && !allItems[i].GetComponent <Object>().ObjectsAsset.passive)
            {
                stillObject = false;
                nbItems    -= 1;
                items.Add(allItems[i]);
            }
        }

        return(items);
    }
Esempio n. 2
0
    public List <GameObject> ChooseContentShop(AllItemsAsset availableItems, UnlockedItemsAsset unlockedItems)
    {
        int nbItems                 = 5;
        List <GameObject> items     = new List <GameObject>();
        float             minRarity = 0;    //Random.Range(0.2f, ((10 / 7) - 0.19f) / 2);
        float             maxRarity = 1000; //Random.Range(((10 / 7) - 0.2f) / 2, 10 / 7);
        List <GameObject> allItems  = availableItems.AllItems;
        List <GameObject> unlocked  = unlockedItems.Unlocked;

        int len1 = allItems.Count;
        int len2 = unlocked.Count;

        int  i;
        int  j;
        int  stillWeapon = 2;
        int  stillObject = 3;
        bool active      = true;

        while (nbItems > 0)
        {
            i = Random.Range(0, len1);
            j = Random.Range(0, len2);

            if (stillWeapon > 0 && 100 / unlocked[j].GetComponent <WeaponItem>().WeaponAsset.Price >= minRarity &&
                100 / unlocked[j].GetComponent <WeaponItem>().WeaponAsset.Price <= maxRarity && !items.Contains(unlocked[j]))
            {
                stillWeapon -= 1;
                nbItems     -= 1;
                items.Add(unlocked[j]);
            }
            if (active && stillObject > 0 && allItems[i].CompareTag("Object") && !allItems[i].GetComponent <Object>().ObjectsAsset.passive&& 100 / allItems[i].GetComponent <Object>().ObjectsAsset.Price >= minRarity &&
                100 / allItems[i].GetComponent <Object>().ObjectsAsset.Price <= maxRarity && !allItems[i].GetComponent <Object>().ObjectsAsset.passive&& !items.Contains(allItems[i]))
            {
                stillObject -= 1;
                nbItems     -= 1;
                items.Add(allItems[i]);
                active = false;
            }

            if (!active && stillObject > 0 && allItems[i].CompareTag("Object") && allItems[i].GetComponent <Object>().ObjectsAsset.passive&& 100 / allItems[i].GetComponent <Object>().ObjectsAsset.Price >= minRarity &&
                100 / allItems[i].GetComponent <Object>().ObjectsAsset.Price <= maxRarity && allItems[i].GetComponent <Object>().ObjectsAsset.passive&& !items.Contains(allItems[i]) && !Inventory.instance.items.Contains(allItems[i]))
            {
                stillObject -= 1;
                nbItems     -= 1;
                items.Add(allItems[i]);
            }
        }

        return(items);
    }