Ejemplo n.º 1
0
    IEnumerator PlayerAttack()
    {
        playerStats.damage = Random.Range(1, 16);
        bool isDead = enemyStats.AttackDamage(playerStats.damage);

        enemyHud.SetHp(enemyStats.hpCurrent);
        trackerText.text = "You deal " + playerStats.damage.ToString() + " damage!";
        yield return(new WaitForSeconds(2f));

        if (isDead)
        {
            combatState = CombatSystem.Win;
            EndFight();
        }

        else
        {
            combatState = CombatSystem.EnemyTurn;
            StartCoroutine(EnemyTurn());
        }
    }
    IEnumerator EnemyTurn()
    {
        trackerText.text = "The Enemy deals " + enemyStats.damage.ToString() + " damage!";
        yield return(new WaitForSeconds(1f));

        bool isDead = playerStats.AttackDamage(playerStats.damage);

        playerHud.SetHp(playerStats.hpCurrent);

        if (isDead)
        {
            combatState = CombatSystem.Lose;
            EndFight();
        }

        else
        {
            combatState = CombatSystem.PlayerTurn;
            PlayerTurn();
        }
    }