public static int DoWhileLevelUp(StatObject stat)
        {
            int gainedLevels = 0;

            do
            {
                if (stat.Level >= stat.MaxLevel)
                {
                    break;
                }

                gainedLevels++;
                stat.Level++;
                stat.XP -= stat.XPToNextLevel;

                if (stat.XP < 0)
                {
                    stat.XP = 0;
                }

                stat.XPToNextLevel = XP_Handler.CalcXPToNextLevel(stat.XPToNextLevel, stat.Modifier);
            }while (stat.XP >= stat.XPToNextLevel);

            return(gainedLevels);
        }
        public static bool CanLevelUp(StatObject stat)
        {
            if (stat.Level >= stat.MaxLevel)
            {
                return(false);
            }

            if (!XP_Handler.DoesHaveLevelUp(stat.XP, stat.XPToNextLevel))
            {
                return(false);
            }

            LevelingSystem.PlayLevelUpSound();
            return(true);
        }