예제 #1
0
    private IEnumerator PlayerNormalAttack()
    {
        state = FightState.ENEMYTURN;

        bool isDead = BattleLogicManager.PerformNormalAttack(playerUnit, enemyUnit);

        enemyHUD.SetHP(enemyUnit.currentHP);
        playerHUD.SetMP(playerUnit.CurrentMP);

        yield return(new WaitForSeconds(2f));

        if (isDead)
        {
            state = FightState.WON;
            playerUnit.GainExperience(enemyUnit.rewardExp);
            playerUnit.GainGold(enemyUnit.rewardGold);
            EndFight(playerUnit, enemyUnit, 1);
        }
        else
        {
            enemyHUD.SetHP(enemyUnit.currentHP);
            enemyHUD.SetMP(enemyUnit.CurrentMP);
            playerHUD.SetHP(playerUnit.currentHP);
            playerHUD.SetMP(playerUnit.CurrentMP);

            StartCoroutine(EnemyTurn());
        }
    }