private void PerformAttack(MonsterOnTheField monster, BattleManager bm, AttackLogic.AttackType at, UnityEngine.Events.UnityAction doneCallback)
    {
        AttackLogic attack = monster.m_MyMonster.IsAwakened() ? m_NormalAbilities[(int)at] : m_AwakenedAbilities[(int)at];

        if (attack != null)
        {
            attack.PlayLogic(monster, bm, doneCallback);
        }
        else
        {
            if (doneCallback != null)
            {
                doneCallback();
            }
        }
    }
 public void PerformSuperAttack(MonsterOnTheField monster, BattleManager bm, UnityEngine.Events.UnityAction doneCallback = null)
 {
     PerformAttack(monster, bm, AttackLogic.AttackType.SuperAttack, doneCallback);
 }