Example #1
0
            public Level1ClassSkills() : base("Skills", new List <GenericFeature>())
            {
                pool.Add(new SkillProficiencyFeature(AT.Character.Situation.SkillType
                                                     .ACROBATICS,
                                                     ProficiencyLevel.FULL));
                //pool.Add(new SkillProficiencyFeature(Situation.SkillType.ANIMAL_HANDLING, ProficiencyLevel.FULL));
                pool.Add(new SkillProficiencyFeature(AT.Character.Situation.SkillType.ATHLETICS, ProficiencyLevel.FULL));
                //pool.Add(new SkillProficiencyFeature(Situation.SkillType.HISTORY, ProficiencyLevel.FULL));
                //pool.Add(new SkillProficiencyFeature(Situation.SkillType.INSIGHT, ProficiencyLevel.FULL));
                //pool.Add(new SkillProficiencyFeature(Situation.SkillType.INTIMIDATION, ProficiencyLevel.FULL));
                pool.Add(new SkillProficiencyFeature(AT.Character.Situation.SkillType.PERCEPTION, ProficiencyLevel.FULL));
                //pool.Add(new SkillProficiencyFeature(Situation.SkillType.SURVIVAL, ProficiencyLevel.FULL));

                filterPool = (Sheet character) => {
                    List <GenericFeature> ret = new List <GenericFeature> ();
                    foreach (GenericFeature gf in pool)
                    {
                        SkillProficiencyFeature f          = (SkillProficiencyFeature)gf;
                        SkillProficiency        alreadyGot = character.BestSkillProficiencyFromType(f.skillType);
                        if (alreadyGot != null)
                        {
                            if (alreadyGot.Ratio < Proficiency.GetRatio(f.lvl) - 0.0001f)
                            {
                                ret.Add(gf);
                            }
                        }
                        else
                        {
                            ret.Add(gf);
                        }
                    }
                    return(ret);
                };
            }
 public override void WhenDeactivatedOn(Sheet c)
 {
     c.skillProficiencies.Remove(last);
     last = null;
 }
        public override void WhenActivatedOn(Sheet c)
        {
            last = new SkillProficiency(lvl, skillType);

            c.skillProficiencies.Add(last);
        }