Beispiel #1
0
 public Chirurgeon(Classes.Alchemist alchemist)
 {
     Name = "Chirurgeon";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Infused Curative",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonUse
             }
         },
         new ArchetypeAbility
         {
             Name              = "Anaesthetic",
             Level             = 5,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance4
             }
         },
         new ArchetypeAbility
         {
             Name              = "Power Over Death",
             Level             = 10,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonImmunity
             }
         },
     };
 }
 public WastelandBlightbreaker(Classes.Alchemist alchemist)
 {
     Name = "Wasteland Blightbreaker";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Healing Infusion",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance2
             }
         },
         new ArchetypeAbility
         {
             Name              = "Swift Healing Infusions",
             Level             = 6,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.SwiftPoisoning
             }
         },
         new ArchetypeAbility
         {
             Name              = "Banish Blights",
             Level             = 8,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance6, alchemist.Discovery8
             }
         }
     };
 }
Beispiel #3
0
 public BrambleBrewer(Classes.Alchemist alchemist)
 {
     Name = "Bramble Brewer";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Briar Bombs",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Discovery2
             }
         },
         new ArchetypeAbility
         {
             Name              = "Dendrite Mutagen",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Mutagen
             }
         },
         new ArchetypeAbility
         {
             Name              = "Grand Discovery",
             Level             = 20,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.GrandDiscovery
             }
         },
     };
 }
        public IceChemist(Classes.Alchemist alchemist)
        {
            Name = "Ice Chemist";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name              = "Cold Sweat",
                    Level             = 2,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.PoisonResistance2, alchemist.PoisonResistance4, alchemist.PoisonResistance6, alchemist.PoisonImmunity
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Frost Bomb",
                    Level             = 2,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.Discovery2
                    }
                }
            };

            ArchetypeAbilities.AddRange(alchemist.ClassAbilities
                                        .Where(a => a.Name.Contains("Bomb"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = a.Name.Replace("Bomb", "Icy Bombs"),
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                }
            }));
        }
Beispiel #5
0
 public Saboteur(Classes.Alchemist alchemist)
 {
     Name = "Saboteur";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Chameleon Mutagen",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Mutagen
             }
         },
         new ArchetypeAbility
         {
             Name  = "Saboteur Discoveries",
             Level = 2
         },
         new ArchetypeAbility
         {
             Name  = "Grand Discoveries",
             Level = 20
         },
     };
 }
 public Mindchemist(Classes.Alchemist alchemist)
 {
     Name = "Mindchemist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Cognatogen",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Mutagen
             }
         },
         new ArchetypeAbility
         {
             Name              = "Perfect Recall",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonUse
             }
         },
         new ArchetypeAbility
         {
             Name  = "Bonus Feats",
             Level = 2
         },
         new ArchetypeAbility
         {
             Name  = "Languages",
             Level = 2
         }
     };
 }
 public PlagueBringer(Classes.Alchemist alchemist)
 {
     Name = "Plague Bringer";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Plague Vial",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Mutagen
             }
         },
         new ArchetypeAbility
         {
             Name              = "Disease Immunity",
             Level             = 10,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonImmunity
             }
         }
     };
     ArchetypeAbilities.AddRange(alchemist.ClassAbilities
                                 .Where(a => a.Name.Contains("Poison Resistance"))
                                 .Select(a => new ArchetypeAbility
     {
         Name              = a.Name.Replace("Poison", "Disease"),
         Level             = a.Level,
         ReplacedAbilities = new List <ClassAbility> {
             a
         }
     }));
 }
Beispiel #8
0
 public BlazingTorchbearer(Classes.Alchemist alchemist)
 {
     Name = "Blazing Torchbearer";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Everburning Flame",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.BrewPotion
             }
         },
         new ArchetypeAbility
         {
             Name              = "Intense Light",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonUse
             },
         },
         new ArchetypeAbility
         {
             Name              = "Explosive Torch",
             Level             = 4,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Discovery4
             },
         },
     };
 }
 public Aerochemist(Classes.Alchemist alchemist)
 {
     Name = "Aerochemist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Aeromantic Concoction",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Mutagen, alchemist.SwiftPoisoning, alchemist.PersistentMutagen
             }
         },
         new ArchetypeAbility
         {
             Name              = "Bombs Away",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonUse, alchemist.SwiftAlchemy
             }
         },
         new ArchetypeAbility
         {
             Name              = "Aerodynamic Prowess",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance2, alchemist.PoisonResistance4, alchemist.PoisonResistance6, alchemist.PoisonImmunity
             }
         }
     };
 }
Beispiel #10
0
 public SacramentAlchemist(Classes.Alchemist alchemist)
 {
     Name = "Sacrament Alchemist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name  = "Faithful",
             Level = 1,
         },
         new ArchetypeAbility
         {
             Name              = "Sacramental Cognatogen",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Mutagen
             }
         },
         new ArchetypeAbility
         {
             Name              = "Divinely Inspired Alchemy",
             Level             = 3,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.SwiftAlchemy
             }
         }
     };
 }
Beispiel #11
0
 public Cruourchymist(Classes.Alchemist alchemist)
 {
     Name = "Cruorchymist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Blood Famliliar",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Mutagen
             }
         },
         new ArchetypeAbility
         {
             Name              = "Blood Treatment",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.BrewPotion
             }
         },
         new ArchetypeAbility
         {
             Name  = "Blood Augmentation",
             Level = 4,
         }
     };
 }
Beispiel #12
0
        public Psychonaut(Classes.Alchemist alchemist)
        {
            Name = "Psychonaut";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name              = "Precognition",
                    Level             = 5,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.PoisonResistance4
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Psychic Senses",
                    Level             = 8,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.PoisonResistance6
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Remote Consciousness",
                    Level             = 10,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.PoisonImmunity
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Greater Precognition",
                    Level             = 15,
                    ReplacedAbilities = new List <ClassAbility>(alchemist.ClassAbilities.Where(a => a.Name.Contains("Bomb") && a.Level == 15))
                },
                new ArchetypeAbility
                {
                    Name              = "Master Precognition",
                    Level             = 17,
                    ReplacedAbilities = new List <ClassAbility>(alchemist.ClassAbilities.Where(a => a.Name.Contains("Bomb") && a.Level == 17))
                },
                new ArchetypeAbility
                {
                    Name              = "Bomb 8d4",
                    Level             = 19,
                    ReplacedAbilities = new List <ClassAbility>(alchemist.ClassAbilities.Where(a => a.Name.Contains("Bomb") && a.Level == 19))
                }
            };

            ArchetypeAbilities.AddRange(alchemist.ClassAbilities
                                        .Where(a => a.Name.Contains("Bomb") && a.Level < 15)
                                        .Select(a => new ArchetypeAbility
            {
                Name              = a.Name.Replace("d6", "d4"),
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                }
            }));
        }
Beispiel #13
0
 public InspiredChemist(Classes.Alchemist alchemist)
 {
     Name = "Inspired Chemist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Inspiring Cognatogen",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Mutagen
             }
         },
         new ArchetypeAbility
         {
             Name  = "Bonus Feats",
             Level = 2,
         },
         new ArchetypeAbility
         {
             Name  = "Bonus Investigator Talents",
             Level = 2,
         },
         new ArchetypeAbility
         {
             Name  = "Languages",
             Level = 2,
         },
     };
 }
 public Ragechemist(Classes.Alchemist alchemist)
 {
     Name = "Ragechemist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Rage Mutagen",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonUse
             }
         },
         new ArchetypeAbility
         {
             Name              = "Sturdy Rage",
             Level             = 6,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.SwiftPoisoning
             }
         },
         new ArchetypeAbility
         {
             Name              = "Lumbering Rage",
             Level             = 10,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonImmunity
             }
         },
     };
 }
Beispiel #15
0
        public FirstWorldInnovator(Classes.Alchemist alchemist)
        {
            Name = "First World Innovator";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name              = "Primal Reagents",
                    Level             = 1,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.BrewPotion, alchemist.PoisonUse, alchemist.SwiftPoisoning, alchemist.PoisonImmunity
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Refined Reagents",
                    Level             = 2,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.PoisonResistance2, alchemist.PoisonResistance4, alchemist.PoisonResistance6
                    }
                }
            };

            ArchetypeAbilities.AddRange(alchemist.ClassAbilities
                                        .Where(a => a.Name.Contains("Bomb"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = "Limited " + a.Name,
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                }
            }));
        }
Beispiel #16
0
 public ConstructRider(Classes.Alchemist alchemist)
 {
     Name = "Construct Rider";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Craft Mount",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.BrewPotion, alchemist.Mutagen, alchemist.Discovery4
             }
         },
         new ArchetypeAbility
         {
             Name              = "Diminished Extracts",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Extracts
             },
             Add    = () => alchemist.LimitedExtracts(true),
             Remove = () => alchemist.LimitedExtracts(false)
         },
         new ArchetypeAbility
         {
             Name  = "Construct Rider Discoveries",
             Level = 2,
         }
     };
 }
Beispiel #17
0
        public Herbalist(Classes.Alchemist alchemist)
        {
            Name = "Herbalist";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name              = "Natural Magic",
                    Level             = 1,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.ThrowAnything
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Seedpods 1d6",
                    Level             = alchemist.Bomb1.Level,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.Bomb1, alchemist.PoisonUse, alchemist.PoisonResistance2, alchemist.PoisonResistance4, alchemist.PoisonResistance6, alchemist.PoisonImmunity
                    }
                },
            };

            ArchetypeAbilities.AddRange(alchemist.ClassAbilities
                                        .Where(a => a.Name.Contains("Bomb"))
                                        .Skip(1)
                                        .Select(a => new ArchetypeAbility
            {
                Name              = a.Name.Replace("Bomb", "Seedpods"),
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                }
            }));
        }
        public Horticulturist(Classes.Alchemist alchemist)
        {
            Name = "Horticulturist";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name              = "Seed Extract",
                    Level             = 1,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.Mutagen, alchemist.Discovery2
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Plant Voice +2",
                    Level             = 2,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.PoisonResistance2, alchemist.PoisonResistance4, alchemist.PoisonResistance6, alchemist.PoisonUse
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Plant Voice (Speak With Plants)",
                    Level             = 10,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.PoisonImmunity
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Plant Familiar",
                    Level             = 4,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.Discovery4
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Fury of Nature",
                    Level             = 14,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.PersistentMutagen
                    }
                }
            };

            ArchetypeAbilities.AddRange(alchemist.ClassAbilities
                                        .Where(a => a.Name.Contains("Bomb"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = a.Name.Replace("Bomb", "Herbal Bomb"),
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                }
            }));
        }
Beispiel #19
0
 public Preservationist(Classes.Alchemist alchemist)
 {
     Name = "Preservationist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Bottled Ally I",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonUse
             }
         },
         new ArchetypeAbility
         {
             Name              = "Bottled Ally II",
             Level             = 5,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance4
             }
         },
         new ArchetypeAbility
         {
             Name              = "Bottled Ally III",
             Level             = 8,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance6
             }
         },
         new ArchetypeAbility
         {
             Name              = "Bottled Ally IV",
             Level             = 10,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonImmunity
             }
         },
         new ArchetypeAbility
         {
             Name              = "Bottled Ally V",
             Level             = 14,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PersistentMutagen
             }
         },
         new ArchetypeAbility
         {
             Name              = "Bottled Ally VI",
             Level             = 18,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Discovery18
             }
         },
     };
 }
Beispiel #20
0
 public DragonbloodChymist(Classes.Alchemist alchemist)
 {
     Name = "Dragonblood Chymist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Dragonblood Mutagen",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Mutagen, alchemist.Discovery2, alchemist.Discovery12, alchemist.Discovery16
             }
         },
         new ArchetypeAbility
         {
             Name              = "Explosive Breath",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.ThrowAnything
             }
         },
         new ArchetypeAbility
         {
             Name              = "Draconic Resistances +2",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance2, alchemist.PoisonUse
             }
         },
         new ArchetypeAbility
         {
             Name              = "Draconic Resistances +4",
             Level             = 6,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance4, alchemist.SwiftPoisoning
             }
         },
         new ArchetypeAbility
         {
             Name              = "Draconic Resistances +6",
             Level             = 10,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance6
             }
         },
         new ArchetypeAbility
         {
             Name              = "Draconic Resistances Immunity",
             Level             = 10,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonImmunity
             }
         },
     };
 }
 public Mixologist(Classes.Alchemist alchemist)
 {
     Name = "Mixologist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Alcoholic Alchemy",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Alchemy, alchemist.Mutagen
             }
         },
         new ArchetypeAbility
         {
             Name              = "Brew Potion",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.BrewPotion
             }
         },
         new ArchetypeAbility
         {
             Name              = "Alcoholic Bombs",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Discovery2
             }
         },
         new ArchetypeAbility
         {
             Name              = "Mixologist Master",
             Level             = 14,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PersistentMutagen
             }
         },
     };
     ArchetypeAbilities.AddRange(alchemist.ClassAbilities
                                 .Where(a => a.Name.Contains("Poison Resistance"))
                                 .Select(a => new ArchetypeAbility
     {
         Name              = a.Name.Replace("Poison", "Alcoholic"),
         Level             = a.Level,
         ReplacedAbilities = new List <ClassAbility> {
             a
         }
     }));
 }
 public WingedMarauder(Classes.Alchemist alchemist)
 {
     Name = "Winged Marauder";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Flying Beast Tamer",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Mutagen, alchemist.PersistentMutagen
             }
         }
     };
 }
 public RoyalAlchemist(Classes.Alchemist alchemist)
 {
     Name = "Royal Alchemist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Alchemical Antidote",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonUse, alchemist.SwiftPoisoning
             }
         }
     };
 }
Beispiel #24
0
 public BogbornAlchemist(Classes.Alchemist alchemist)
 {
     Name = "Bogborn Alchemist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Amphibious Mutagen",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.ThrowAnything
             }
         }
     };
 }
Beispiel #25
0
 public Grenadier(Classes.Alchemist alchemist)
 {
     Name = "Grenadier";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Martial Weapon Proficiency",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.BrewPotion
             }
         },
         new ArchetypeAbility
         {
             Name              = "Alchemical Weapon",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance2, alchemist.PoisonResistance4, alchemist.PoisonResistance6
             }
         },
         new ArchetypeAbility
         {
             Name              = "Precise Bombs",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonUse
             }
         },
         new ArchetypeAbility
         {
             Name              = "Directed Blast",
             Level             = 6,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.SwiftPoisoning
             }
         },
         new ArchetypeAbility
         {
             Name              = "Staggering Blast",
             Level             = 10,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonImmunity
             }
         }
     };
 }
Beispiel #26
0
        public Vaultbreaker(Classes.Alchemist alchemist)
        {
            Name = "Vaultbreaker";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name              = "Breaking and Entering",
                    Level             = 1,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.BrewPotion
                    }
                },
                new ArchetypeAbility
                {
                    Name  = "Rogue Talents",
                    Level = 2,
                },
                new ArchetypeAbility
                {
                    Name              = "Safecracking",
                    Level             = 1,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.ThrowAnything
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Enhanced Safecracking",
                    Level             = 3,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.PoisonUse
                    }
                }
            };

            ArchetypeAbilities.AddRange(alchemist.ClassAbilities
                                        .Where(a => a.Name.Contains("Bomb"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = a.Name,
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                }
            }));
        }
 public Fermenter(Classes.Alchemist alchemist)
 {
     Name = "Fermenter";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Substance Tolerance +2",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance2, alchemist.PoisonResistance4
             }
         },
         new ArchetypeAbility
         {
             Name              = "Substance Tolerance +3",
             Level             = 8,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonResistance6
             }
         },
         new ArchetypeAbility
         {
             Name              = "Substance Tolerance +4",
             Level             = 10,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonImmunity, alchemist.Discovery10
             }
         },
         new ArchetypeAbility
         {
             Name              = "Volatile Bombs",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.PoisonUse
             }
         },
         new ArchetypeAbility
         {
             Name              = "Batch Brew",
             Level             = 6,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.SwiftPoisoning
             }
         }
     };
 }
Beispiel #28
0
 public Homunculist(Classes.Alchemist alchemist)
 {
     Name = "Homunculist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Diminished Poisoning",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility>(alchemist.ClassAbilities.Where(a => a.Name.Contains("Poison")))
         },
         new ArchetypeAbility
         {
             Name              = "Homunculus Familiar",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 alchemist.Mutagen
             }
         },
         new ArchetypeAbility
         {
             Name  = "Experimentation 1",
             Level = 4,
         },
         new ArchetypeAbility
         {
             Name  = "Experimentation 2",
             Level = 8,
         },
         new ArchetypeAbility
         {
             Name  = "Experimentation 3",
             Level = 12,
         },
         new ArchetypeAbility
         {
             Name  = "Experimentation 4",
             Level = 16,
         },
         new ArchetypeAbility
         {
             Name  = "Experimentation 5",
             Level = 20,
         },
     };
 }
        public Vivisectionist(Classes.Alchemist alchemist)
        {
            Name = "Vivisectionist";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name  = "Torturer's Eye",
                    Level = 2,
                },
                new ArchetypeAbility
                {
                    Name  = "Cruel Anatomist",
                    Level = 3,
                },
                new ArchetypeAbility
                {
                    Name  = "Torturous Transformation",
                    Level = 7
                },
                new ArchetypeAbility
                {
                    Name  = "Bleeding Attack",
                    Level = 2,
                },
                new ArchetypeAbility
                {
                    Name  = "Crippling Strike",
                    Level = 10,
                }
            };

            ArchetypeAbilities.AddRange(alchemist.ClassAbilities
                                        .Where(a => a.Name.Contains("Bomb"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = a.Name.Replace("Bomb ", "Sneak Attack +"),
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                }
            }));
        }
Beispiel #30
0
        public Perfumer(Classes.Alchemist alchemist)
        {
            Name = "Perfumer";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name              = "Atomized Extracts",
                    Level             = 1,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.BrewPotion, alchemist.Extracts
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Pheromones",
                    Level             = 1,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.Mutagen
                    }
                },
                new ArchetypeAbility
                {
                    Name              = "Persistent Pheromones",
                    Level             = 14,
                    ReplacedAbilities = new List <ClassAbility> {
                        alchemist.PersistentMutagen
                    }
                }
            };

            ArchetypeAbilities.AddRange(alchemist.ClassAbilities
                                        .Where(a => a.Name.Contains("Bomb"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = a.Name.Replace("Bomb", "Effervescent Bombs").Replace("d6", "d4"),
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                }
            }));
        }