Exemplo n.º 1
0
        public static void DivineSoul(Character character)
        {
            int lvl = character.Lvl;

            Cantrips.AddRange(ClericSpells.Cantrips);
            AllSpells clericSpells = new AllSpells("Cleric");

            for (int i = 1; i <= 9; i++)
            {
                Spells[i].AddRange(clericSpells.Cleric[i]);
            }
            var affinity = new List <string> {
                "Good", "Evil", "Law", "Chaos", "Neutrality"
            };

            Console.WriteLine("Pick an affinity to an alignment that is the source of your divine power");
            string alignment = CLIHelper.PrintChoices(affinity);
            string wingType  = "";

            switch (alignment)
            {
            case "Good":
                character.Spells[1].Add("Cure Wounds");
                wingType = "eagle";
                break;

            case "Evil":
                character.Spells[1].Add("Inflict Wounds");
                wingType = "bat";
                break;

            case "Law":
                character.Spells[1].Add("Bless");
                wingType = "eagle";
                break;

            case "Chaos":
                character.Spells[1].Add("Bane");
                wingType = "bat";
                break;

            case "Neutrality":
                character.Spells[1].Add("Protection from Evil and Good");
                wingType = "dragonfly";
                break;
            }
            character.ClassFeatures.Add("Divine Magic", "gain access to the Cleric spell list");
            character.ClassFeatures.Add("Favored by the Gods", "SR, if you fail a save or miss an atk, +2D4 to the save or atk");
            if (lvl >= 6)
            {
                character.ClassFeatures.Add("Empowered Healing", "1/turn, 1 sorcery pt, when you or adj ally rolls to recover HP, reroll the dice once");
            }
            if (lvl >= 14)
            {
                character.ClassFeatures.Add("Otherworldly Wings", $"bonus, manifest spectral {wingType} wings, gain Fly speed 30ft");
                if (!character.Speedstring.Contains("Fly"))
                {
                    character.Speedstring += ", Fly 30ft";
                }
            }
            if (lvl >= 18)
            {
                character.ClassFeatures.Add("Unearthly Recovery", "LR, bonus, when bloodied, regain HP = 1/2 max HP");
            }
        }