public void FuryOfTheStorm_EnergizeOff(FuryOfTheStormAttack attackNumber)
    {
        int index;

        index = (int)attackNumber;

        if (actualParticles[index] != null)
        {
            actualParticles[index].Stop();
        }
    }
    int CalculateDamage(FuryOfTheStormAttack attackNumber)
    {
        double regularHitDamage = Math.Round((double)(abilityDamage / (noOfRegularHits + finalHitMultiplier)));

        int finalHitDamage = (int)regularHitDamage * finalHitMultiplier;

        if ((finalHitDamage + (noOfRegularHits * regularHitDamage)) != abilityDamage)
        {
            finalHitDamage = abilityDamage - (noOfRegularHits * (int)regularHitDamage);
        }

        if (attackNumber == FuryOfTheStormAttack.FifthFuryAttack)
        {
            return(finalHitDamage);
        }
        else
        {
            return((int)regularHitDamage);
        }
    }
    //used via animation event
    public void FuryOfTheStorm_DealDamage(FuryOfTheStormAttack attackNumber)
    {
        int          dmg;
        DamageEffect dmgEffect;

        if (attackNumber == FuryOfTheStormAttack.FifthFuryAttack)
        {
            dmg       = CalculateDamage(attackNumber);
            dmgEffect = DamageEffect.Knockback;

            SpecialParticlesOn(false);
        }
        else
        {
            dmg       = CalculateDamage(attackNumber);
            dmgEffect = abilityDamageEffect;
        }

        GetComponent <CharacterCombat2D>().DealCombatDamage(dmg, dmgEffect);
        Debug.Log("FuryOfTheStorm dealt: " + dmg);
    }
    bool DeterminePrimarySpawnPoint(FuryOfTheStormAttack attackNumber)
    {
        bool isPrimary;

        switch (attackNumber)
        {
        case FuryOfTheStormAttack.SecondFuryAttack:
            isPrimary = false;
            break;

        case FuryOfTheStormAttack.FourthFuryAttack:
            isPrimary = false;
            break;

        default:
            isPrimary = true;
            break;
        }

        return(isPrimary);
    }
    //used via animation event
    public void FuryOfTheStorm_Energize(FuryOfTheStormAttack attackNumber)
    {
        int index;

        index = (int)attackNumber;

        if (DeterminePrimarySpawnPoint(attackNumber))
        {
            actualParticles[index] = Instantiate(particles[index], primaryParticleSpawnPoint.position, primaryParticleSpawnPoint.rotation);
            actualParticles[index].GetComponent <Renderer>().sortingLayerName = SortingLayers.DetermineParticleLayer(true, playerStats);
        }
        else
        {
            actualParticles[index] = Instantiate(particles[index], secondaryParticleSpawnPoint.position, secondaryParticleSpawnPoint.rotation);
            actualParticles[index].GetComponent <Renderer>().sortingLayerName = SortingLayers.DetermineParticleLayer(true, playerStats);
        }

        if (attackNumber == FuryOfTheStormAttack.FifthFuryAttack)
        {
            SpecialParticlesOn(true);
        }
    }