Exemplo n.º 1
0
    private void Update()
    {
        timeElapsed += Time.deltaTime;
        if (timeElapsed >= timeBetweenAttacks)
        {
            allowAttack = true;
            if (stage != 3)
            {
                stage++;
                //defaultSoldiers+=soldierIncreaseBetweenStages;
                //soldierIncrease+=soldierIncreaseBetweenStages;
            }
            timeElapsed = 0;
        }
        recruitedSoldiers.RemoveAll(item => item == null);
        float perc = ((float)recruitedSoldiers.Count / (float)maxSoldiers) * 100;

        if (perc <= percMinSoldiers)
        {
            allowAttack = false;
        }

        animator.SetBool("underAttack", AIState.GetState() == AIStates.UnderAttack ? true : false);
        if (AIState.GetState() == AIStates.UnderAttack)
        {
            maxSoldiers = soldierIncrease;
        }
        else
        {
            maxSoldiers = defaultSoldiers;
        }
    }
Exemplo n.º 2
0
    // Update is called once per frame
    void Update()
    {
        if (aiState.GetState() == AIStates.UnderAttack)
        {
            minWood  = 10;
            minStone = 10;
            minMetal = 10;
        }
        else
        {
            minWood  = 200;
            minStone = 100;
            minMetal = 50;
        }

        if (AllowSellWood())
        {
            resources.sellResource(ResourceType.Wood, 10, PlayerTypes.AIPlayer);
        }
        if (AllowSellMetal())
        {
            resources.sellResource(ResourceType.Metal, 10, PlayerTypes.AIPlayer);
        }
        if (AllowSellStone())
        {
            resources.sellResource(ResourceType.Stone, 10, PlayerTypes.AIPlayer);
        }
    }