Beispiel #1
0
 private bool purchase(purchaseBy coin, int price)
 {
     if (coin == purchaseBy.activeCoin)
     {
         if (player.Incre.coin.active >= price)
         {
             player.Incre.coin.active -= price;
             return(true);
         }
     }
     else if (coin == purchaseBy.passiveCoin)
     {
         if (player.Incre.coin.passive >= price * passivePriceRate)
         {
             player.Incre.coin.passive -= price * passivePriceRate;
             return(true);
         }
     }
     return(false);
 }
 private bool purchase(purchaseBy coin, int price)
 {
     if (coin == purchaseBy.activeCoin)
     {
         if (player.coin_active >= price)
         {
             player.coin_active -= price;
             return(true);
         }
     }
     else if (coin == purchaseBy.passiveCoin)
     {
         if (player.coin_passive >= price * 3)
         {
             player.coin_passive -= price * 3;
             return(true);
         }
     }
     return(false);
 }
Beispiel #3
0
    //upgrademode mode1, upgrademode2 mode2, purchaseBy coin
    public void exec_upgrade(string param)
    {
        updateTitle();
        updatePrice();
        upgrademode  mode1 = upgrademode.active;
        upgrademode2 mode2 = upgrademode2.coinBonus;
        purchaseBy   coin  = purchaseBy.activeCoin;

        if (param.Length != 3)
        {
            Debug.Log("param error!");
            return;
        }

        param = param.ToLower();

        char subParam1 = param[0]; //passive or active --> p, a
        char subParam2 = param[1]; //exe function --> c, e, p
        char subParam3 = param[2]; //coin mode ---> p, a

        if (subParam1 == 'p')
        {
            mode1 = upgrademode.passive;
        }
        else if (subParam1 == 'a')
        {
            mode1 = upgrademode.active;
        }

        if (subParam2 == 'c')
        {
            mode2 = upgrademode2.coinBonus;
        }
        else if (subParam2 == 'e')
        {
            mode2 = upgrademode2.expBonus;
        }
        else if (subParam2 == 'p')
        {
            mode2 = upgrademode2.progressBarRate;
        }

        if (subParam3 == 'p')
        {
            coin = purchaseBy.passiveCoin;
        }
        else if (subParam3 == 'a')
        {
            coin = purchaseBy.activeCoin;
        }

        if (mode1 == upgrademode.active)
        {
            switch (mode2)
            {
            case upgrademode2.coinBonus:
                if (player.Incre.coin.A_upgradeLv < upgradeMaxLevel)
                {
                    if (purchase(coin, bal.getPrice_ActiveCoinBonus()))
                    {
                        player.Incre.coin.A_upgradeLv++;
                    }
                }
                break;

            case upgrademode2.expBonus:
                if (player.Incre.exp.A_upgradeLv < upgradeMaxLevel)
                {
                    if (purchase(coin, bal.getPrice_ActiveExpBonus()))
                    {
                        player.Incre.exp.A_upgradeLv++;
                    }
                }
                break;

            case upgrademode2.progressBarRate:
                if (player.Incre.progress.A_upgradeLv < upgradeMaxLevel)
                {
                    if (purchase(coin, bal.getPrice_ActiveProgressBarRate()))
                    {
                        player.Incre.progress.A_upgradeLv++;
                    }
                }
                break;
            }
        }
        else         //passive
        {
            switch (mode2)
            {
            case upgrademode2.coinBonus:
                if (player.Incre.coin.P_upgradeLv < upgradeMaxLevel)
                {
                    if (purchase(coin, bal.getPrice_PassiveCoinBonus()))
                    {
                        player.Incre.coin.P_upgradeLv++;
                    }
                }
                break;

            case upgrademode2.expBonus:
                if (player.Incre.exp.P_upgradeLv < upgradeMaxLevel)
                {
                    if (purchase(coin, bal.getPrice_PassiveExpBonus()))
                    {
                        player.Incre.exp.P_upgradeLv++;
                    }
                }
                break;

            case upgrademode2.progressBarRate:
                if (player.Incre.progress.P_upgradeLv < upgradeMaxLevel &&
                    purchase(coin, bal.getPrice_PassiveProgressBarRate()))
                {
                    player.Incre.progress.P_upgradeLv++;
                }
                break;
            }
        }

        updateTitle();
        updatePrice();
    }