// Character class is provided only for debug purpose private float GetStatValue(Stat stat, int level, ProgressionStat progStat, CharacterClass characterClass) { if (progStat == null) { Debug.Log("No values was set for the character class:" + characterClass + " under the stat: " + stat); return(defaultErrorValue); } return(progStat.GetValueByLevel(level)); }
/// <summary> /// Returns the maximum supported Level for a given start of a class /// </summary> /// <param name="stat">Simple</param> /// <param name="characterClass"></param> /// <returns></returns> public int GetMaxLevelSupported(Stat stat, CharacterClass characterClass) { BuildLookpUpTable(); Dictionary <Stat, ProgressionStat> characterDict = loopUpTable[characterClass]; if (characterDict == null) { Debug.LogError("Progression stats was not implemented for the class: " + characterClass); return(1); } ProgressionStat progressionStat = characterDict[stat]; return(progressionStat.GetMaxSupportedLevel()); }
public float GetStat(Stat stat, CharacterClass characterClass, int level) { BuildLookpUpTable(); Dictionary <Stat, ProgressionStat> characterTable = loopUpTable[characterClass]; if (characterTable == null) { Debug.LogError("Progression stats was not implemented for the class: " + characterClass); return(defaultErrorValue); } ProgressionStat progStat = characterTable[stat]; return(GetStatValue(stat, level, progStat, characterClass)); }