Пример #1
0
    void SetPickUp(PickUp pickUp, Tile tile)
    {
        PickUpTier tier = GetTier();
        PickUpData data = GetData();

        pickUp.type  = data.type;
        pickUp.value = data.value * tier.multiplier;
        pickUp.spriterRenderer.sprite = data.sprite;
        pickUp.spriterRenderer.color  = tier.color;

        pickUp.tile  = tile;
        tile.content = TileContentType.Collectable;
        tile.pickUp  = pickUp;

        pickUp.manager = this;
    }
Пример #2
0
    PickUpTier GetTier()
    {
        if (tiersProbability.Count == 0)
        {
            for (int i = 0; i < tiers.Count; i++)
            {
                for (int j = 0; j < tiers[i].rarity; j++)
                {
                    tiersProbability.Add(tiers[i].tier);
                }
            }
        }

        int        id     = Random.Range(0, tiersProbability.Count);
        RarityTier rarity = tiersProbability[id];

        tiersProbability.Remove(rarity);

        PickUpTier tier = dicTiers[rarity];

        return(tier);
    }