예제 #1
0
    IEnumerator PlayerRepairBackWheelHP()
    {
        playerCarUnit.RepairBackWheelHP(2);

        playerHUD.SetBackWheelHP(playerCarUnit);

        DisablePlayerActions();
        DisablePlayerRepairActions();

        yield return(new WaitForSeconds(1f));

        state = BattleState.ENEMYTURN;
        StartCoroutine(EnemyTurn());
    }
예제 #2
0
    IEnumerator PlayerAttackBackWheelHP()
    {
        bool isBackWheelDead = enemyCarUnit.TakeDamageBackWheelHP(playerCarUnit.mainWeaponDamage);

        enemyHUD.SetBackWheelHP(enemyCarUnit);

        Instantiate(littleExplosion, enemyInitialPosition);

        DisablePlayerActions();
        DisablePlayerAttackActions();

        yield return(new WaitForSeconds(1f));

        if (isBackWheelDead)
        {
            StartCoroutine(WheelDestroyed());
            attackBackWheelHP.gameObject.SetActive(false);

            if (enemyCarUnit.ReturnCarCurrentHP(enemyCarUnit.carCurrentHP))
            {
                state = BattleState.WON;
                winScreen.SetActive(true);
            }
            else
            {
                state = BattleState.ENEMYTURN;
                StartCoroutine(EnemyTurn());
            }
        }
        else
        {
            state = BattleState.ENEMYTURN;
            StartCoroutine(EnemyTurn());
        }
    }