コード例 #1
0
    private void Traning()
    {
        //tempTime -= Time.deltaTime;
        if (GameController.instance.playerLimitedUnit + 1 > GameController.instance.enemyLimited)
        {
            int rand = Random.Range(0, botStackTrainUnits.Length);
            if (botStackTrainUnits[rand].block && GameController.instance.enemyMoney >= botStackTrainUnits[rand].trainingCost)
            {
                GameController.instance.enemyMoney -= botStackTrainUnits[rand].trainingCost;
                GameController.instance.InfoUpdate();
                botStackTrainUnits[rand].block = false;
            }
            else if (!botStackTrainUnits[rand].block && GameController.instance.enemyMoney >= botStackTrainUnits[rand].trainingCost && GameController.instance.enemyLimitedMax > GameController.instance.enemyLimited)
            {
                botStackTrainUnits[rand].trainStack++;

                GameController.instance.enemyMoney -= botStackTrainUnits[rand].trainingCost;
                GameController.instance.enemyLimited++;
                GameController.instance.InfoUpdate();

                if (!botStackTrainUnits[rand].training)
                {
                    StartCoroutine(BotTrainUinCourutine(rand));
                    botStackTrainUnits[rand].training = true;
                }
            }
            //tempTime = delay;
            //state = State_Behaviour.UpgradeCastle;
        }
        else
        {
            state = State_Behaviour.UpgradeCastle;
        }
    }
コード例 #2
0
    private void UpgradeCastle()
    {
        tempTime -= Time.deltaTime;
        if (tempTime <= 0f)
        {
            int enemyCasleLvl = GameController.instance.enemyCasleLVL;

            if (GameController.instance.enemyCasleLVL < 3 && GameController.instance.enemyMoney >= CostCastle(enemyCasleLvl))
            {
                GameController.instance.enemyMoney -= CostCastle(enemyCasleLvl);
                GameController.instance.enemyCasleLVL++;
                GameController.instance.EnemyCastleUP();
            }
            tempTime = delay;
            state    = State_Behaviour.ByuSellCannon;
        }
    }
コード例 #3
0
    private void BuySellCannon()
    {
        tempTime -= Time.deltaTime;
        if (tempTime <= 0f)
        {
            int enemyCasleLvl = GameController.instance.enemyCasleLVL;

            if (enemyCasleLvl > 0)
            {
                int randFloor = Random.Range(0, enemyCasleLvl);

                cannonPanel[randFloor].BuyCannonEnemy();
            }

            state = State_Behaviour.Training;
        }
    }
コード例 #4
0
    private void BuyUpgradeUnit()
    {
        tempTime -= Time.deltaTime;
        if (tempTime <= 0f)
        {
            //Параметры необходимые для рандомного апгрейда
            int randPanel   = Random.Range(0, upgradePanel.Length - 1);
            int randUpgrade = Random.Range(0, upgradePanel[randPanel].upgrades.Length - 1);

            //Попытка задать приоритет для апгрейдов, костыльная задача
            if (UnitsController.instance.incomeMultiplayerEnemy < 2f)
            {
                upgradePanel[4].EnemyUpgrade(0);
            }

            else
            {
                upgradePanel[randPanel].EnemyUpgrade(randUpgrade);
            }
            tempTime = delay;

            state = State_Behaviour.Training;
        }
    }