public void SetSkillsAndSavingThrows() { // SKILLS var Intelligence = (int)AbilityScores.getAbilityScoreModifier(AbilityScores.GetIntelligenceScore()); var Strength = (int)AbilityScores.getAbilityScoreModifier(AbilityScores.GetStrengthScore()); var Constitution = (int)AbilityScores.getAbilityScoreModifier(AbilityScores.GetConstitutionScore()); var Dexterity = (int)AbilityScores.getAbilityScoreModifier(AbilityScores.GetDexterityScore()); var Wisdom = (int)AbilityScores.getAbilityScoreModifier(AbilityScores.GetWisdomScore()); var Charisma = (int)AbilityScores.getAbilityScoreModifier(AbilityScores.GetCharismaScore()); var skillAndMods = new Dictionary <string, int>(); skillAndMods["athletics"] = Strength; skillAndMods["acrobatics"] = Dexterity; skillAndMods["sleightOfHand"] = Dexterity; skillAndMods["arcana"] = Intelligence; skillAndMods["stealth"] = Dexterity; skillAndMods["history"] = Intelligence; skillAndMods["nature"] = Intelligence; skillAndMods["religion"] = Intelligence; skillAndMods["animalHandling"] = Wisdom; skillAndMods["insight"] = Wisdom; skillAndMods["medicine"] = Wisdom; skillAndMods["perception"] = Wisdom; skillAndMods["survival"] = Wisdom; skillAndMods["deception"] = Charisma; skillAndMods["intimidation"] = Charisma; skillAndMods["investigation"] = Intelligence; skillAndMods["performance"] = Charisma; skillAndMods["persuasion"] = Charisma; // Add prof bonus var profBonuses = ClassDetails.GetProficiencies()["Skills"]; foreach (var skill in profBonuses) { if (skillAndMods.ContainsKey(skill)) { skillAndMods[skill] += ClassDetails.GetProficiencyBonus(); } } Skills = skillAndMods; // SAVING THROWS var savingThrowProfs = ClassDetails.GetProficiencies()["Saving Throws"]; var savingThrows = new Dictionary <string, int>() { { "Strength", Strength }, { "Dexterity", Dexterity }, { "Constitution", Constitution }, { "Intelligence", Intelligence }, { "Wisdom", Wisdom }, { "Charisma", Charisma } }; foreach (var savingThrow in savingThrowProfs) { if (skillAndMods.ContainsKey(savingThrow)) { savingThrows[savingThrow] += ClassDetails.GetProficiencyBonus(); } } SavingThrows = savingThrows; }