public override void ModifyStat(Stat stat, RPGStats.Modifier mod)
    {
        if (!this.CharacterStats.GetStat(stat.Name))
        {
            Debug.LogWarningFormat("stat:: {0}, is not a valid stat to modify", stat);
            return;
        }

        CharacterStats.AddModifier(modcount++, mod);

        if (stat.Name == "Health")
        {
            onHealthChange.Invoke(CharacterStats[stat.Name].Value);
        }
        onStatModify.Invoke(stat.Name);
    }