public static Dictionary <DamageElement, MinMaxFloat> GetAdditionalDamageAmounts(this Skill skill, short level)
 {
     if (!skill.IsAttack())
     {
         return(new Dictionary <DamageElement, MinMaxFloat>());
     }
     level = skill.GetAdjustedLevel(level);
     return(GameDataHelpers.CombineDamages(skill.additionalDamageAmounts, new Dictionary <DamageElement, MinMaxFloat>(), level, 1f));
 }
 public static Dictionary <DamageElement, float> GetWeaponDamageInflictions(this Skill skill, short level)
 {
     if (!skill.IsAttack())
     {
         return(new Dictionary <DamageElement, float>());
     }
     level = skill.GetAdjustedLevel(level);
     return(GameDataHelpers.CombineDamageInflictions(skill.weaponDamageInflictions, new Dictionary <DamageElement, float>(), level));
 }
 public static int GetConsumeMp(this Skill skill, short level)
 {
     if (skill == null)
     {
         return(0);
     }
     level = skill.GetAdjustedLevel(level);
     return(skill.consumeMp.GetAmount(level));
 }
 public static float GetCastDuration(this Skill skill, short level)
 {
     if (skill == null)
     {
         return(0);
     }
     level = skill.GetAdjustedLevel(level);
     return(skill.castDuration.GetAmount(level));
 }
        public static float GetCoolDownDuration(this Skill skill, short level)
        {
            if (skill == null)
            {
                return(0f);
            }
            level = skill.GetAdjustedLevel(level);
            float duration = skill.coolDownDuration.GetAmount(level);

            if (duration < 0f)
            {
                duration = 0f;
            }
            return(duration);
        }