Пример #1
0
    //Enemy's Special Attack Functionality
    IEnumerator EnemySpecial(UnitWLevelling unit, BattleHUDWLevelling hud)
    {
        bool isDead = false;

        enemyUnit.unitCurrentMP -= 33;
        if (!enemyUnit.unitIsMagic)
        {
            isDead = unit.TakeRegDamage(enemyUnit, true);
        }
        else if (enemyUnit.unitIsMagic)
        {
            isDead = unit.TakeMagDamage(enemyUnit, true);
        }
        hud.HPFiddling(unit.unitCurrentHP);
        hud.MPFiddling(unit.unitCurrentMP);
        dialogueText.text = enemyUnit.unitName + " attacks " + unit.unitName + " for " + enemyUnit.unitAttack + "!";
        yield return(new WaitForSeconds(2f));



        if (isDead)
        {
            deadCheck += 1;
        }
    }
Пример #2
0
    //Runs during attack phase if passed unit selected basic attack
    IEnumerator PartyBasicAtk(UnitWLevelling unit)
    {
        bool isDead = false;

        if (!unit.unitIsMagic)
        {
            isDead            = enemyUnit.TakeRegDamage(unit, false);
            dialogueText.text = unit.unitName + " does " + (unit.unitAttack - enemyUnit.unitDef) + " damage!";
        }
        else if (unit.unitIsMagic)
        {
            isDead            = enemyUnit.TakeMagDamage(unit, false);
            dialogueText.text = unit.unitName + " does " + (unit.unitAttack - enemyUnit.unitRes) + " damage!";
        }

        unit.gameObject.GetComponent <Animator>().SetBool("isHit", true);
        yield return(new WaitForSeconds(1f));

        StartCoroutine(HitParticleSystem(enemyPlatform));
        enemyHUD.HPFiddling(enemyUnit.unitCurrentHP);

        yield return(new WaitForSeconds(2f));

        if (isDead)
        {
            state = BattleStateWL.WON;
            StartCoroutine(BattleEnd());
        }
        Debug.Log(unit.unitName + " B-ATK COMP");
    }
Пример #3
0
    //RegDamage take functionality and checks if dead
    public bool TakeRegDamage(UnitWLevelling attacker, bool isSpec)
    {
        if (isSpec)
        {
            unitCurrentHP          -= (Mathf.RoundToInt(attacker.unitAttack * 2f));
            attacker.unitCurrentMP -= 33;
        }
        else
        {
            if ((attacker.unitAttack - unitDef) <= 0)
            {
                unitCurrentHP -= 0;
            }
            else
            {
                unitCurrentHP -= (attacker.unitAttack - unitDef);
            }
        }

        if (unitCurrentHP <= 0)
        {
            unitIsDead = true;
            return(true);
        }
        else
        {
            unitIsDead = false;
            return(false);
        }
    }
Пример #4
0
 void MpRegen(UnitWLevelling unit, BattleHUDWLevelling hud)
 {
     unit.unitCurrentMP += 10;
     if (unit.unitCurrentMP > unit.unitMaxMP)
     {
         unit.unitCurrentMP = unit.unitMaxMP;
     }
     hud.MPFiddling(unit.unitCurrentMP);
 }
Пример #5
0
 //Does Special Action
 public void SpecialAction(UnitWLevelling unit)
 {
     unit.unitCurrentHP += 25;
     if (unit.unitCurrentHP > unit.unitMaxHP)
     {
         unit.unitCurrentHP = unit.unitMaxHP;
     }
     unit.unitCurrentMP -= 50;
 }
Пример #6
0
    //Initialises Battle
    public IEnumerator BattleInit()
    {
        turnTick = 0;
        GameObject partyOneGO = Instantiate(partyMemOne, partyOnePlatform);

        partyOneUnit = partyOneGO.GetComponent <UnitWLevelling>();
        GameObject partyTwoGO = Instantiate(partyMemTwo, partyTwoPlatform);

        partyTwoUnit = partyTwoGO.GetComponent <UnitWLevelling>();
        GameObject partyThreeGO = Instantiate(partyMemThree, partyThreePlatform);

        partyThreeUnit = partyThreeGO.GetComponent <UnitWLevelling>();
        GameObject partyFourGO = Instantiate(partyMemFour, partyFourPlatform);

        partyFourUnit = partyFourGO.GetComponent <UnitWLevelling>();
        GameObject enemyGO = Instantiate(enemyObj, enemyPlatform);

        enemyUnit = enemyGO.GetComponent <UnitWLevelling>();
        UnitInit(overOne, partyOneUnit);
        UnitInit(overTwo, partyTwoUnit);
        UnitInit(overThree, partyThreeUnit);
        UnitInit(overFour, partyFourUnit);
        UnitInit(overEnemy, enemyUnit);

        battleCanvas.SetActive(true);
        actionPanel.SetActive(false);
        attackPanel.SetActive(false);

        overworldMusicEGO.SetActive(false);
        battleMusicEGO.SetActive(true);

        dialogueText      = dialogueObj.GetComponent <TextMeshProUGUI>();
        dialogueText.text = "A wild " + enemyUnit.unitName + " is committing Flibbity";

        pOneHUD.HUDFiddling(partyOneUnit);
        pTwoHUD.HUDFiddling(partyTwoUnit);
        pThreeHUD.HUDFiddling(partyThreeUnit);
        pFourHUD.HUDFiddling(partyFourUnit);
        enemyHUD.HUDFiddling(enemyUnit);

        if (tutorialScript.battleTutEnd == false)
        {
            yield return(new WaitForSeconds(1f));

            state = BattleStateWL.PARTYONESEL;
            StartCoroutine(tutorialScript.TutBattle1());
        }
        else
        {
            yield return(new WaitForSeconds(2f));

            state = BattleStateWL.PARTYONESEL;
            PartyPhaseBegin();
            Debug.Log("PartyPhaseBegun");
        }
    }
Пример #7
0
    //Is called to level the unit.
    public void UnitLevelling(UnitWLevelling unitParty, UnitWLevelling unit)
    {
        unitParty.unitExp += unit.unitExpGainedOnDeath;

        if (unitParty.unitExp >= unitParty.unitReqExp)
        {
            unitParty.unitLevel += 1;

            unitParty.unitReqExp += (unitParty.unitReqExp / 4) + unitParty.unitReqExp;
            StatDistribution(unitParty);
        }
    }
Пример #8
0
 public void SetStatBattleToOver(UnitWLevelling unitBattle, UnitWLevelling unitOverworld)
 {
     unitOverworld.unitName      = unitBattle.unitName;
     unitOverworld.unitImg       = unitBattle.unitImg;
     unitOverworld.unitClass     = unitBattle.unitClass;
     unitOverworld.unitIsMagic   = unitBattle.unitIsMagic;
     unitOverworld.unitIsDead    = unitBattle.unitIsDead;
     unitOverworld.unitLevel     = unitBattle.unitLevel;
     unitOverworld.unitExp       = unitBattle.unitExp;
     unitOverworld.unitReqExp    = unitBattle.unitReqExp;
     unitOverworld.unitAttack    = unitBattle.unitAttack;
     unitOverworld.unitRes       = unitBattle.unitRes;
     unitOverworld.unitDef       = unitBattle.unitDef;
     unitOverworld.unitMaxHP     = unitBattle.unitMaxHP;
     unitOverworld.unitCurrentHP = unitBattle.unitCurrentHP;
 }
Пример #9
0
    //When called, Initialises HUD based on the unit given
    public void HUDFiddling(UnitWLevelling unit)
    {
        nameText = nameObj.GetComponent <TextMeshProUGUI>();
        lvlText  = lvlObj.GetComponent <TextMeshProUGUI>();
        tempHP   = unit.unitMaxHP;
        tempMP   = unit.unitMaxMP;

        nameText.text     = unit.unitName;
        lvlText.text      = "Lvl " + unit.unitLevel;
        hpSlider.maxValue = unit.unitMaxHP;
        hpSlider.value    = unit.unitCurrentHP;
        mpSlider.maxValue = unit.unitMaxMP;
        mpSlider.value    = unit.unitCurrentMP;
        healthText.text   = unit.unitCurrentHP + "/" + unit.unitMaxHP;
        manaText.text     = unit.unitCurrentMP + "/" + unit.unitMaxMP;
    }
Пример #10
0
 void UnitInit(UnitWLevelling overUnit, UnitWLevelling battleUnit)
 {
     battleUnit.unitName             = overUnit.unitName;
     battleUnit.unitImg              = overUnit.unitImg;
     battleUnit.unitClass            = overUnit.unitClass;
     battleUnit.unitIsMagic          = overUnit.unitIsMagic;
     battleUnit.unitIsDead           = overUnit.unitIsDead;
     battleUnit.unitLevel            = overUnit.unitLevel;
     battleUnit.unitExp              = overUnit.unitExp;
     battleUnit.unitReqExp           = overUnit.unitReqExp;
     battleUnit.unitAttack           = overUnit.unitAttack;
     battleUnit.unitRes              = overUnit.unitRes;
     battleUnit.unitDef              = overUnit.unitDef;
     battleUnit.unitMaxHP            = overUnit.unitMaxHP;
     battleUnit.unitCurrentHP        = overUnit.unitCurrentHP;
     battleUnit.unitMaxMP            = overUnit.unitMaxMP;
     battleUnit.unitCurrentMP        = overUnit.unitCurrentMP;
     battleUnit.unitExpGainedOnDeath = overUnit.unitExpGainedOnDeath;
 }
Пример #11
0
 void InitUnit(UnitWLevelling overUnit, UnitWLevelling battleUnit)
 {
     overUnit.unitName             = battleUnit.unitName;
     overUnit.unitImg              = battleUnit.unitImg;
     overUnit.unitClass            = battleUnit.unitClass;
     overUnit.unitIsMagic          = battleUnit.unitIsMagic;
     overUnit.unitIsDead           = battleUnit.unitIsDead;
     overUnit.unitLevel            = battleUnit.unitLevel;
     overUnit.unitExp              = battleUnit.unitExp;
     overUnit.unitReqExp           = battleUnit.unitReqExp;
     overUnit.unitAttack           = battleUnit.unitAttack;
     overUnit.unitRes              = battleUnit.unitRes;
     overUnit.unitDef              = battleUnit.unitDef;
     overUnit.unitMaxHP            = battleUnit.unitMaxHP;
     overUnit.unitCurrentHP        = battleUnit.unitCurrentHP;
     overUnit.unitMaxMP            = battleUnit.unitMaxMP;
     overUnit.unitCurrentMP        = battleUnit.unitCurrentMP;
     overUnit.unitExpGainedOnDeath = battleUnit.unitExpGainedOnDeath;
 }
Пример #12
0
 public void SetStatOverToBattle(UnitWLevelling unitBattle, UnitWLevelling unitOverworld)
 {
     unitBattle.unitName = unitOverworld.unitName;
     if (unitOverworld.unitImg != null)
     {
         unitBattle.unitImg = unitOverworld.unitImg;
     }
     unitBattle.unitClass            = unitOverworld.unitClass;
     unitBattle.unitIsMagic          = unitOverworld.unitIsMagic;
     unitBattle.unitIsDead           = unitOverworld.unitIsDead;
     unitBattle.unitLevel            = unitOverworld.unitLevel;
     unitBattle.unitExp              = unitOverworld.unitExp;
     unitBattle.unitReqExp           = unitOverworld.unitReqExp;
     unitBattle.unitAttack           = unitOverworld.unitAttack;
     unitBattle.unitRes              = unitOverworld.unitRes;
     unitBattle.unitDef              = unitOverworld.unitDef;
     unitBattle.unitMaxHP            = unitOverworld.unitMaxHP;
     unitBattle.unitCurrentHP        = unitOverworld.unitCurrentHP;
     unitBattle.unitExpGainedOnDeath = unitOverworld.unitExpGainedOnDeath;
 }
Пример #13
0
 public void StatDistribution(UnitWLevelling unit)
 {
     if (unit.unitClass == ClassSelect.TANK)
     {
         unit.unitAttack += (unit.unitAttack / 10);
         unit.unitRes     = Mathf.RoundToInt(unit.unitRes * 1.18f);
         unit.unitDef     = Mathf.RoundToInt(unit.unitDef * 1.2f);
         unit.unitMaxHP  += ((unit.unitMaxHP / 10) + 5);
     }
     else if (unit.unitClass == ClassSelect.DPSMELEE)
     {
         unit.unitAttack += (unit.unitAttack / 7);
         unit.unitRes     = Mathf.RoundToInt(unit.unitRes * 1.18f);
         unit.unitDef     = Mathf.RoundToInt(unit.unitDef * 1.2f);
         unit.unitMaxHP  += ((unit.unitMaxHP / 15) + 5);
     }
     else if (unit.unitClass == ClassSelect.DPSRANGED)
     {
         unit.unitAttack += (unit.unitAttack / 7);
         unit.unitRes     = Mathf.RoundToInt(unit.unitRes * 1.2f);
         unit.unitDef     = Mathf.RoundToInt(unit.unitDef * 1.18f);
         unit.unitMaxHP  += ((unit.unitMaxHP / 15) + 5);
     }
     else if (unitClass == ClassSelect.DPSMAGIC)
     {
         unit.unitAttack += (unit.unitAttack / 7);
         unit.unitRes     = Mathf.RoundToInt(unit.unitRes * 1.2f);
         unit.unitDef     = Mathf.RoundToInt(unit.unitDef * 1.18f);
         unit.unitMaxHP  += ((unit.unitMaxHP / 15) + 5);
     }
     else if (unit.unitClass == ClassSelect.HEALER)
     {
         unit.unitAttack += (unit.unitAttack / 8);
         unit.unitRes     = Mathf.RoundToInt(unit.unitRes * 1.18f);
         unit.unitDef     = Mathf.RoundToInt(unit.unitDef * 1.2f);
         unit.unitMaxHP  += ((unit.unitMaxHP / 17) + 3);
     }
 }
Пример #14
0
    //Uses item if passed unit selected to use an item
    IEnumerator PartyUseItem(UnitWLevelling unit, BattleHUDWLevelling hud)
    {
        if (unit.unitCurrentMP >= 50)
        {
            unit.unitCurrentHP += 25;
            if (unit.unitCurrentHP > unit.unitMaxHP)
            {
                unit.unitCurrentHP = unit.unitMaxHP;
            }
            unit.unitCurrentMP -= 50;
            dialogueText.text   = unit.unitName + " healed self, at least, they had better have.";
        }
        else
        {
            dialogueText.text = unit.unitName + "'s attempt to heal failed.";
        }

        hud.HPFiddling(unit.unitCurrentHP);
        hud.MPFiddling(unit.unitCurrentMP);
        yield return(new WaitForSeconds(2f));

        Debug.Log(unit.unitName + " healed self");
    }
Пример #15
0
    public bool HealDamage(UnitWLevelling p1, UnitWLevelling p2, UnitWLevelling p3)
    {
        unitCurrentHP += unitAttack;
        if (unitCurrentHP > unitMaxHP)
        {
            unitCurrentHP = unitMaxHP;
        }
        p1.unitCurrentHP += unitAttack;
        if (p1.unitCurrentHP > p1.unitMaxHP)
        {
            p1.unitCurrentHP = p1.unitMaxHP;
        }
        p2.unitCurrentHP += unitAttack;
        if (p2.unitCurrentHP > p2.unitMaxHP)
        {
            p2.unitCurrentHP = p2.unitMaxHP;
        }
        p3.unitCurrentHP += unitAttack;
        if (p3.unitCurrentHP > p3.unitMaxHP)
        {
            p3.unitCurrentHP = p3.unitMaxHP;
        }

        unitCurrentMP -= 33;

        if (unitCurrentHP <= 0)
        {
            unitIsDead = true;
            return(true);
        }
        else
        {
            unitIsDead = false;
            return(false);
        }
    }
Пример #16
0
 //Called to set enemy stats appropriately
 public void EnemyInit(UnitWLevelling unit)
 {
     if (unit.unitClass == ClassSelect.TEACHER)
     {
         unit.unitMaxHP            = 1000;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 0;
         unit.unitAttack           = 10;
         unit.unitDef = 100;
         unit.unitRes = 100;
     }
     else if (unit.unitLevel == 1)
     {
         unit.unitMaxHP            = 100;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 100;
         unit.unitAttack           = 20;
         unit.unitDef = 3;
         unit.unitRes = 2;
     }
     else if (unit.unitLevel == 2)
     {
         unit.unitMaxHP            = 111;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 120;
         unit.unitAttack           = 22;
         unit.unitDef = 4;
         unit.unitRes = 2;
     }
     else if (unit.unitLevel == 3)
     {
         unit.unitMaxHP            = 123;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 144;
         unit.unitAttack           = 24;
         unit.unitDef = 4;
         unit.unitRes = 3;
     }
     else if (unit.unitLevel == 4)
     {
         unit.unitMaxHP            = 137;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 173;
         unit.unitAttack           = 27;
         unit.unitDef = 5;
         unit.unitRes = 3;
     }
     else if (unit.unitLevel == 5)
     {
         unit.unitMaxHP            = 152;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 207;
         unit.unitAttack           = 29;
         unit.unitDef = 6;
         unit.unitRes = 4;
     }
     else if (unit.unitLevel == 6)
     {
         unit.unitMaxHP            = 169;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 249;
         unit.unitAttack           = 32;
         unit.unitDef = 7;
         unit.unitRes = 5;
     }
     else if (unit.unitLevel == 7)
     {
         unit.unitMaxHP            = 188;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 299;
         unit.unitAttack           = 35;
         unit.unitDef = 9;
         unit.unitRes = 6;
     }
     else if (unit.unitLevel == 8)
     {
         unit.unitMaxHP            = 209;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 358;
         unit.unitAttack           = 39;
         unit.unitDef = 10;
         unit.unitRes = 7;
     }
     else if (unit.unitLevel == 9)
     {
         unit.unitMaxHP            = 232;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 430;
         unit.unitAttack           = 43;
         unit.unitDef = 12;
         unit.unitRes = 9;
     }
     else if (unit.unitLevel == 10)
     {
         unit.unitMaxHP            = 258;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 516;
         unit.unitAttack           = 43;
         unit.unitDef = 14;
         unit.unitRes = 10;
     }
     else if (unit.unitLevel == 11)
     {
         unit.unitMaxHP            = 287;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 619;
         unit.unitAttack           = 52;
         unit.unitDef = 17;
         unit.unitRes = 12;
     }
     else if (unit.unitLevel == 12)
     {
         unit.unitMaxHP            = 319;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 743;
         unit.unitAttack           = 57;
         unit.unitDef = 20;
         unit.unitRes = 15;
     }
     else if (unit.unitLevel == 13)
     {
         unit.unitMaxHP            = 354;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 891;
         unit.unitAttack           = 63;
         unit.unitDef = 24;
         unit.unitRes = 18;
     }
     else if (unit.unitLevel == 14)
     {
         unit.unitMaxHP            = 393;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 1070;
         unit.unitAttack           = 69;
         unit.unitDef = 29;
         unit.unitRes = 21;
     }
     else if (unit.unitLevel == 15)
     {
         unit.unitMaxHP            = 437;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 1283;
         unit.unitAttack           = 76;
         unit.unitDef = 34;
         unit.unitRes = 26;
     }
     else if (unit.unitLevel == 16)
     {
         unit.unitMaxHP            = 100;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 1541;
         unit.unitAttack           = 84;
         unit.unitDef = 41;
         unit.unitRes = 31;
     }
     else if (unit.unitLevel == 17)
     {
         unit.unitMaxHP            = 540;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 1849;
         unit.unitAttack           = 92;
         unit.unitDef = 49;
         unit.unitRes = 37;
     }
     else if (unit.unitLevel == 18)
     {
         unit.unitMaxHP            = 600;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 2219;
         unit.unitAttack           = 101;
         unit.unitDef = 58;
         unit.unitRes = 44;
     }
     else if (unit.unitLevel == 19)
     {
         unit.unitMaxHP            = 666;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 2662;
         unit.unitAttack           = 110;
         unit.unitDef = 69;
         unit.unitRes = 53;
     }
     else if (unit.unitLevel == 20)
     {
         unit.unitMaxHP            = 740;
         unit.unitCurrentHP        = unitMaxHP;
         unit.unitExpGainedOnDeath = 13195;
         unit.unitAttack           = 122;
         unit.unitDef = 81;
         unit.unitRes = 64;
     }
 }
Пример #17
0
    //Runs during attack phase if passed unit selected special attack
    IEnumerator PartySpecialAtk(UnitWLevelling unit)
    {
        bool isDead = false;

        if (unit.unitCurrentMP >= 33)
        {
            if (!unit.unitIsMagic && unit.unitClass != ClassSelect.HEALER)
            {
                isDead = enemyUnit.TakeRegDamage(unit, true);
                unit.gameObject.GetComponent <Animator>().SetBool("isHit", true);
                yield return(new WaitForSeconds(1f));

                StartCoroutine(HitParticleSystem(enemyPlatform));
                dialogueText.text = unit.unitName + " does " + (unit.unitAttack * 2) + " damage!";
            }
            else if (unit.unitIsMagic && unit.unitClass != ClassSelect.HEALER)
            {
                isDead = enemyUnit.TakeMagDamage(unit, true);
                unit.gameObject.GetComponent <Animator>().SetBool("isHit", true);
                yield return(new WaitForSeconds(1f));

                StartCoroutine(HitParticleSystem(enemyPlatform));
                dialogueText.text = unit.unitName + " does " + (unit.unitAttack * 2) + " damage!";
            }
            else if (unit.unitClass == ClassSelect.HEALER)
            {
                isDead = partyFourUnit.HealDamage(partyOneUnit, partyTwoUnit, partyThreeUnit);
                pOneHUD.HPFiddling(partyOneUnit.unitCurrentHP);
                pTwoHUD.HPFiddling(partyTwoUnit.unitCurrentHP);
                pThreeHUD.HPFiddling(partyThreeUnit.unitCurrentHP);
                pFourHUD.HPFiddling(partyFourUnit.unitCurrentHP);
                pFourHUD.MPFiddling(partyFourUnit.unitCurrentMP);

                dialogueText.text = unit.unitName + " does some light first aid!";
            }
        }
        else
        {
            dialogueText.text = unit.unitName + " doesn't have enough mana!";
        }
        if (unit.unitCurrentMP <= 0)
        {
            unit.unitCurrentMP = 0;
        }

        enemyHUD.HPFiddling(enemyUnit.unitCurrentHP);
        pOneHUD.HPFiddling(partyOneUnit.unitCurrentHP);
        pTwoHUD.HPFiddling(partyTwoUnit.unitCurrentHP);
        pThreeHUD.HPFiddling(partyThreeUnit.unitCurrentHP);
        pFourHUD.HPFiddling(partyFourUnit.unitCurrentHP);
        pOneHUD.MPFiddling(partyOneUnit.unitCurrentMP);
        pTwoHUD.MPFiddling(partyTwoUnit.unitCurrentMP);
        pThreeHUD.MPFiddling(partyThreeUnit.unitCurrentMP);
        pFourHUD.MPFiddling(partyFourUnit.unitCurrentMP);


        yield return(new WaitForSeconds(2f));

        if (isDead)
        {
            state = BattleStateWL.WON;
            StartCoroutine(BattleEnd());
        }
        Debug.Log(unit.unitName + " S-ATK COMP");
    }