示例#1
0
    /// <summary>
    /// Add uses to the PowerUp when the player purchases it.
    /// </summary>
    /// <param name="t">The type of the PowerUp that the player has bought</param>
    /// <param name="nPurchases">The quantity of uses bought</param>
    public void AddPowerUp(PowerUp_Type t, uint nPurchases)
    {
        switch (t)
        {
        case PowerUp_Type.PU_RAY:
            powerUps.rays += nPurchases;
            if (powerUps.rays > MAX_USES)
            {
                powerUps.rays = MAX_USES;
            }
            break;

        case PowerUp_Type.PU_BALLS:
            powerUps.balls += nPurchases;
            if (powerUps.balls > MAX_USES)
            {
                powerUps.balls = MAX_USES;
            }
            break;

        case PowerUp_Type.PU_ELIMINATE_ROW:
            powerUps.eliminateRows += nPurchases;
            if (powerUps.eliminateRows > MAX_USES)
            {
                powerUps.eliminateRows = MAX_USES;
            }
            break;

        default:
            break;
        }
    }
示例#2
0
    };                                                         //The stars gained in each level by the player

    /// <summary>
    /// Consume 'nUses' uses of the PowerUp 't'
    /// </summary>
    /// <param name="t">The type of the PowerUp which has been used</param>
    /// <param name="nUses">The uses (normally 1) consumed</param>
    public void ConsumePowerUp(PowerUp_Type t, uint nUses = 1)
    {
        switch (t)
        {
        case PowerUp_Type.PU_RAY:
            if (powerUps.rays >= nUses)
            {
                powerUps.rays -= nUses;
            }
            break;

        case PowerUp_Type.PU_BALLS:
            if (powerUps.balls >= nUses)
            {
                powerUps.balls -= nUses;
            }
            break;

        case PowerUp_Type.PU_ELIMINATE_ROW:
            if (powerUps.eliminateRows >= nUses)
            {
                powerUps.eliminateRows -= nUses;
            }
            break;

        default:
            break;
        }
    }
示例#3
0
    /// <summary>
    /// Purchase a power up
    /// </summary>
    /// <param name="t">The power up type</param>
    /// <param name="nGems">Number of gems that the power up costs</param>
    /// <param name="nPurchases">Number of purchases</param>
    public void PurchasePowerUp(PowerUp_Type t, uint nGems, uint nPurchases = 1)
    {
        uint totalGems = nGems * nPurchases;

        if (totalGems <= _playerData.gems)
        {
            _playerData.AddPowerUp(t, nPurchases);

            _playerData.gems -= totalGems;
        }

        SaveData();
    }
示例#4
0
    /// <summary>
    /// Purchase a power up
    /// </summary>
    /// <param name="t">The power up type</param>
    /// <param name="nGems">Number of gems that the power up costs</param>
    /// <param name="nPurchases">Number of purchases</param>
    public void PurchasePowerUp(PowerUp_Type t, uint nGems, uint nPurchases = 1)
    {
        uint totalGems = nGems * nPurchases;

        if (totalGems <= _playerData.gems)
        {
            Tracker.Tracker.Instance.AddEvent(new Tracker.TrackerEvent(_sessionGuid.ToString(), (int)EVENT_TYPES.BUY, Time.time));

            _playerData.AddPowerUp(t, nPurchases);

            _playerData.gems -= totalGems;
        }

        SaveData();
    }
示例#5
0
 /// <summary>
 /// Consume a power up
 /// </summary>
 /// <param name="t">The power up type</param>
 /// <param name="nUses">The number of uses of that power up</param>
 public void ConsumePowerUp(PowerUp_Type t, uint nUses = 1)
 {
     _playerData.ConsumePowerUp(t, nUses);
 }
示例#6
0
 /// <summary>
 /// Purchase a PowerUp by calling the GameManager.
 /// </summary>
 /// <param name="t">The type of PowerUP</param>
 /// <param name="p">The prize</param>
 public void PurchasePowerUp(PowerUp_Type t, uint p)
 {
     GameManager.instance.PurchasePowerUp(t, p);
     UpdateUI();
 }