Beispiel #1
0
        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;
        }