Example #1
0
        public IdRager(Classes.Bloodrager bloodrager)
        {
            Name = "Id Rager";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name              = "Atavistic Avatar",
                    Level             = 1,
                    ReplacedAbilities = new List <ClassAbility>(bloodrager.ClassAbilities.Where(a => a.Name.Contains("Bloodline Spell") || a.Name.Contains("Bloodline Power")))
                    {
                        bloodrager.Bloodline
                    },
                },
                new ArchetypeAbility
                {
                    Name              = "Atavistic Caster",
                    Level             = 4,
                    ReplacedAbilities = new List <ClassAbility> {
                        bloodrager.Spells, bloodrager.EschewMaterials
                    },
                },
            };

            ArchetypeAbilities.AddRange(bloodrager.ClassAbilities
                                        .Where(a => a.Name.Contains("Bloodline Feat"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = "Bonus Feat",
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                },
            }));
        }
Example #2
0
        public UrbanBloodrager(Classes.Bloodrager bloodrager)
        {
            Name = "Urban Bloodrager";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name              = "Controlled Bloodrage",
                    Level             = 1,
                    ReplacedAbilities = new List <ClassAbility> {
                        bloodrager.Bloodrage
                    },
                },
                new ArchetypeAbility
                {
                    Name              = "Restrained Magic",
                    Level             = 3,
                    ReplacedAbilities = new List <ClassAbility> {
                        bloodrager.BloodSanctuary
                    },
                },
            };

            ArchetypeAbilities.AddRange(bloodrager.ClassAbilities
                                        .Where(a => a.Name.Contains("Damage Reduction"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = "Adopted Magic",
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                },
            }));
        }
        public Spelleater(Classes.Bloodrager bloodrager)
        {
            Name = "Spelleater";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name              = "Blood of Life 1",
                    Level             = 2,
                    ReplacedAbilities = new List <ClassAbility> {
                        bloodrager.UncannyDodge
                    },
                },
                new ArchetypeAbility
                {
                    Name              = "Spell Eating",
                    Level             = 5,
                    ReplacedAbilities = new List <ClassAbility> {
                        bloodrager.ImprovedUncannyDodge
                    },
                }
            };

            ArchetypeAbilities.AddRange(bloodrager.ClassAbilities
                                        .Where(a => a.Name.Contains("Damage Reduction"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = $"Blood of Life {Math.Round(0.33 * a.Level - 0.33)}",
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                },
            }));
        }
Example #4
0
 public SymbolStriker(Classes.Bloodrager bloodrager)
 {
     Name = "Symbol Striker";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Rune Training",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.FastMovement
             },
         },
         new ArchetypeAbility
         {
             Name              = "Weapon Rune",
             Level             = 6,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodlineFeat6, bloodrager.BloodlineFeat12, bloodrager.BloodlineFeat18
             },
         },
         new ArchetypeAbility
         {
             Name              = "Rune Trap",
             Level             = 9,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodlineFeat9
             },
         }
     };
 }
 public Greenrager(Classes.Bloodrager bloodrager)
 {
     Name = "Greenrager";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Unfettered Fury",
             Level             = 3,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodSanctuary
             },
         },
         new ArchetypeAbility
         {
             Name              = "Summoning Rager",
             Level             = 6,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodlineFeat6
             },
         },
         new ArchetypeAbility
         {
             Name              = "Furious Summoning",
             Level             = 9,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodlineFeat9
             },
         }
     };
 }
Example #6
0
 public Bloodrider(Classes.Bloodrager bloodrager)
 {
     Name = "Bloodrider";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Fast Rider",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.FastMovement
             },
         },
         new ArchetypeAbility
         {
             Name              = "Feral Mount",
             Level             = 5,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.UncannyDodge, bloodrager.ImprovedUncannyDodge
             },
         },
         new ArchetypeAbility
         {
             Name              = "Blood Bond",
             Level             = 9,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodlineFeat9
             },
         }
     };
 }
 public ProwlerAtWorldsEnd(Classes.Bloodrager bloodrager)
 {
     Name = "Prowler at World's End";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Bloodline",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.Bloodline
             },
         },
         new ArchetypeAbility
         {
             Name              = "Spirit",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodlinePower1, bloodrager.BloodlinePower8, bloodrager.BloodlinePower16
             },
         },
         new ArchetypeAbility
         {
             Name              = "Bloodline Power",
             Level             = 9,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodlineFeat9
             },
         },
         new ArchetypeAbility
         {
             Name              = "Bloodline Power",
             Level             = 15,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodlineFeat15
             },
         },
         new ArchetypeAbility
         {
             Name              = "Chosen of the Spirits",
             Level             = 11,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.GreaterBloodrage, bloodrager.MightyBloodrage
             },
         },
         new ArchetypeAbility
         {
             Name              = "Shapeshifted Spellcasting",
             Level             = 12,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodlineFeat12
             },
         }
     };
 }
 public MetamagicRager(Classes.Bloodrager bloodrager)
 {
     Name = "Metamagic Rager";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Meta-Rage",
             Level             = 5,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.ImprovedUncannyDodge
             },
         }
     };
 }
Example #9
0
 public EnlightenedBloodrager(Classes.Bloodrager bloodrager)
 {
     Name = "Enlightened Bloodrager";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Enlightened Spellcasting",
             Level             = 4,
             ReplacedAbilities = new List <ClassAbility>(bloodrager.ClassAbilities.Where(a => a.Name.Contains("Bloodline Spell")))
             {
                 bloodrager.BloodlinePower1
             },
         },
         new ArchetypeAbility
         {
             Name              = "Enlightened Bloodrage",
             Level             = 4,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodlinePower4
             },
         },
         new ArchetypeAbility
         {
             Name              = "Bloodline Feat",
             Level             = 6,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.DamageReduction1, bloodrager.DamageReduction3, bloodrager.DamageReduction5
             },
         },
         new ArchetypeAbility
         {
             Name              = bloodrager.DamageReduction1.Name,
             Level             = bloodrager.DamageReduction2.Level,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.DamageReduction2
             },
         },
         new ArchetypeAbility
         {
             Name              = bloodrager.DamageReduction2.Name,
             Level             = bloodrager.DamageReduction4.Level,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.DamageReduction4
             },
         },
     };
 }
        public CrossbloodedRager(Classes.Bloodrager bloodrager)
        {
            Name = "Crossblooded Rager";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name  = "Drawbacks",
                    Level = 1,
                }
            };

            ArchetypeAbilities.AddRange(bloodrager.ClassAbilities
                                        .Where(a => a.Name.Contains("Bloodline Feat"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = a.Name,
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                },
            }));

            ArchetypeAbilities.AddRange(bloodrager.ClassAbilities
                                        .Where(a => a.Name.Contains("Bloodline Spell"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = a.Name,
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                },
            }));

            ArchetypeAbilities.AddRange(bloodrager.ClassAbilities
                                        .Where(a => a.Name.Contains("Bloodline Power"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = a.Name,
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                },
            }));
        }
        public HagRiven(Classes.Bloodrager bloodrager)
        {
            Name = "Hag-Riven";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name  = "Arcane Influence",
                    Level = 1,
                },
                new ArchetypeAbility
                {
                    Name              = "Claws of the Hag",
                    Level             = 1,
                    ReplacedAbilities = new List <ClassAbility> {
                        bloodrager.FastMovement, bloodrager.UncannyDodge
                    },
                },
                new ArchetypeAbility
                {
                    Name              = "Sorcerous Claws",
                    Level             = 5,
                    ReplacedAbilities = new List <ClassAbility> {
                        bloodrager.ImprovedUncannyDodge
                    },
                },
                new ArchetypeAbility
                {
                    Name  = "Hexing Claws",
                    Level = 10,
                }
            };

            ArchetypeAbilities.AddRange(bloodrager.ClassAbilities
                                        .Where(a => a.Name.Contains("Damage Reduction"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = $"Scarred Hide +{Math.Round(0.33 * a.Level - 1.33)}",
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                },
            }));
        }
Example #12
0
        public BloodConduit(Classes.Bloodrager bloodrager)
        {
            Name = "Blood Conduit";
            ArchetypeAbilities = new List <ArchetypeAbility>
            {
                new ArchetypeAbility
                {
                    Name              = "Contact Specialist",
                    Level             = 1,
                    ReplacedAbilities = new List <ClassAbility> {
                        bloodrager.FastMovement
                    },
                },
                new ArchetypeAbility
                {
                    Name              = "Spell Conduit",
                    Level             = 5,
                    ReplacedAbilities = new List <ClassAbility> {
                        bloodrager.UncannyDodge, bloodrager.ImprovedUncannyDodge
                    },
                },
                new ArchetypeAbility
                {
                    Name              = "Reflexive Conduit",
                    Level             = 14,
                    ReplacedAbilities = new List <ClassAbility> {
                        bloodrager.IndomitableWill
                    },
                }
            };

            ArchetypeAbilities.AddRange(bloodrager.ClassAbilities
                                        .Where(a => a.Name.Contains("Bloodline Feat"))
                                        .Select(a => new ArchetypeAbility
            {
                Name              = a.Name,
                Level             = a.Level,
                ReplacedAbilities = new List <ClassAbility> {
                    a
                },
            }));
        }
Example #13
0
 public Primalist(Classes.Bloodrager bloodrager)
 {
     Name = "Primalist";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Bloodline",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.Bloodline
             },
         },
         new ArchetypeAbility
         {
             Name  = "Primal Choices",
             Level = 4,
         }
     };
 }
Example #14
0
 public BloodyKnuckledRowdy(Classes.Bloodrager bloodrager)
 {
     Name = "Bloody-Knuckled Rowdy";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Bloody Knuckles",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility>(bloodrager.ClassAbilities.Where(a => a.Name.Contains("Damage Reduction"))),
         },
         new ArchetypeAbility
         {
             Name  = "Reduced Spells Known",
             Level = 1,
         },
         new ArchetypeAbility
         {
             Name              = "Pugilist",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.FastMovement
             },
         },
         new ArchetypeAbility
         {
             Name              = "Combat Style Student",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.UncannyDodge, bloodrager.ImprovedUncannyDodge
             },
         },
         new ArchetypeAbility
         {
             Name  = "Hand-to-Hand Training",
             Level = 3,
         }
     };
 }
Example #15
0
 public Rageshaper(Classes.Bloodrager bloodrager)
 {
     Name = "Rageshaper";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Bestial Aspect",
             Level             = 4,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.BloodSanctuary
             },
         },
         new ArchetypeAbility
         {
             Name              = "Furious Transformation",
             Level             = 5,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.ImprovedUncannyDodge
             },
         }
     };
 }
 public UntouchableRager(Classes.Bloodrager bloodrager)
 {
     Name = "Untouchable Rager";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Raging Resistance",
             Level             = 4,
             ReplacedAbilities = new List <ClassAbility>(bloodrager.ClassAbilities.Where(a => a.Name.Contains("Bloodline Spell")))
             {
                 bloodrager.Spells, bloodrager.BloodCasting, bloodrager.EschewMaterials
             },
             Add    = () => bloodrager.SpellCaster = false,
             Remove = () => bloodrager.SpellCaster = true,
         },
         new ArchetypeAbility
         {
             Name  = "Resistance Control",
             Level = 14,
         }
     };
 }
 public AncestralHarbinger(Classes.Bloodrager bloodrager)
 {
     Name = "Ancestral Harbinger";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Spirit Guardian",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.UncannyDodge, bloodrager.BloodlineFeat6, bloodrager.BloodlineFeat18
             },
         },
         new ArchetypeAbility
         {
             Name              = "Spirit Servants",
             Level             = 5,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.ImprovedUncannyDodge, bloodrager.BloodlineFeat12
             },
         }
     };
 }
 public Steelblood(Classes.Bloodrager bloodrager)
 {
     Name = "Steelblood";
     ArchetypeAbilities = new List <ArchetypeAbility>
     {
         new ArchetypeAbility
         {
             Name              = "Indomitable Stance",
             Level             = 1,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.FastMovement
             },
         },
         new ArchetypeAbility
         {
             Name              = "Armored Swiftness",
             Level             = 2,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.UncannyDodge
             },
         },
         new ArchetypeAbility
         {
             Name              = "Armor Training",
             Level             = 5,
             ReplacedAbilities = new List <ClassAbility> {
                 bloodrager.ImprovedUncannyDodge
             },
         },
         new ArchetypeAbility
         {
             Name              = "Blood Deflection",
             Level             = 7,
             ReplacedAbilities = new List <ClassAbility>(bloodrager.ClassAbilities.Where(a => a.Name.Contains("Damage Reduction"))),
         }
     };
 }