public ModifiedSpell(Spell s, IEnumerable <Keyword> kwToAdd, Ability ability = Ability.None, RechargeModifier recharge = RechargeModifier.Unmodified) { Name = s.Name; Keywords = s.Keywords; if (kwToAdd != null) { AdditionalKeywords = new List <Keyword>(kwToAdd); } else { AdditionalKeywords = new List <Keyword>(); } Level = s.Level; CastingTime = s.CastingTime; Range = s.Range; Duration = s.Duration; Description = s.Description; Descriptions = s.Descriptions; differentAbility = ability; RechargeModifier = recharge; AdditionalKeywords.RemoveAll(k => Keywords.Contains(k)); AddAlwaysPreparedToName = false; Source = s.Source; CantripDamage = s.CantripDamage; used = 0; FormsCompanionsFilter = s.FormsCompanionsFilter; FormsCompanionsCount = s.FormsCompanionsCount; displayShort = false; Modifikations = new List <Feature>(); count = 1; }
public ModifiedSpell(Spell s, IEnumerable <Keyword> kwToAdd, bool addAlwaysPreparedToName, bool includeResources = true) { Name = s.Name; Keywords = s.Keywords; if (kwToAdd != null) { AdditionalKeywords = new List <Keyword>(kwToAdd); } else { AdditionalKeywords = new List <Keyword>(); } Level = s.Level; CastingTime = s.CastingTime; Range = s.Range; Duration = s.Duration; Description = s.Description; Descriptions = s.Descriptions; differentAbility = Ability.None; RechargeModifier = RechargeModifier.Unmodified; AdditionalKeywords.RemoveAll(k => Keywords.Contains(k)); AddAlwaysPreparedToName = addAlwaysPreparedToName; Source = s.Source; CantripDamage = s.CantripDamage; used = 0; displayShort = false; Modifikations = new List <Feature>(); this.includeResources = includeResources; includeRecharge = includeResources; count = 1; }
public ModifiedSpell(Spell s, bool onlyAsRitual) { Name = s.Name; Keywords = s.Keywords; AdditionalKeywords = new List <Keyword>(); Level = s.Level; CastingTime = s.CastingTime; Range = s.Range; Duration = s.Duration; Description = s.Description; Descriptions = s.Descriptions; differentAbility = Ability.None; RechargeModifier = RechargeModifier.Unmodified; AdditionalKeywords.RemoveAll(k => Keywords.Contains(k)); AddAlwaysPreparedToName = false; Source = s.Source; CantripDamage = s.CantripDamage; used = 0; displayShort = false; Modifikations = new List <Feature>(); this.includeResources = false; includeRecharge = includeResources; OnlyAsRitual = true; FormsCompanionsFilter = s.FormsCompanionsFilter; FormsCompanionsCount = s.FormsCompanionsCount; count = 1; }
public ResourceFeature(string name, string text, string resourceID, string exclusionID, int value, RechargeModifier recharge, int level = 1, bool hidden = false) : base(name, text, level, hidden) { Value = value.ToString(); ResourceID = resourceID; ExclusionID = exclusionID; Recharge = recharge; }
public SpellcastingFeature() : base() { OverwrittenByMulticlassing = true; SpellcastingID = ""; DisplayName = "Spellcasting"; Preparation = PreparationMode.LearnSpells; PreparationChange = RechargeModifier.LongRest; SpellcastingAbility = Ability.None; }
public ResourceInfo(string id, string name, int used, int max, RechargeModifier recharge, bool displayUsed) { ResourceID = id; Name = name; Used = used; Max = max; Recharge = recharge; DisplayUsed = displayUsed; }
public SpellcastingFeature(string name, string text, string spellcastingID, Ability spellcastingAbility, string displayName, bool overwrittenByMulticlassing = true, int level = 1, bool hidden = false) : base(name, text, level, hidden) { Preparation = PreparationMode.LearnSpells; SpellcastingID = spellcastingID; DisplayName = displayName; PrepareableSpells = "false"; OverwrittenByMulticlassing = overwrittenByMulticlassing; PrepareCountAdditionalModifier = Ability.None; PrepareCountPerClassLevel = 0; PreparationChange = RechargeModifier.LongRest; SpellcastingAbility = spellcastingAbility; PrepareCountAdditional = 0; }
public SpellcastingFeature(string name, string text, string spellcastingID, Ability spellcastingAbility, string displayName, PreparationMode preparation, string prepareableSpells, Ability prepareCountAdditionalModifier = Ability.None, int prepareCountPerClassLevel = 1, bool overwrittenByMulticlassing = true, int level = 1, bool hidden = false) : base(name, text, level, hidden) { Action = Base.ActionType.ForceHidden; Preparation = preparation; SpellcastingID = spellcastingID; DisplayName = displayName; PrepareableSpells = prepareableSpells; OverwrittenByMulticlassing = overwrittenByMulticlassing; PrepareCountAdditionalModifier = prepareCountAdditionalModifier; PrepareCountPerClassLevel = prepareCountPerClassLevel; PreparationChange = RechargeModifier.LongRest; SpellcastingAbility = spellcastingAbility; PrepareCountAdditional = 0; }
public BonusSpellFeature(string name, string text, Ability spellability, Spell spell, RechargeModifier spellmodifier = RechargeModifier.Unmodified, List <Keyword> kwToAdd = null, int level = 1, bool hidden = false) : base(name, text, level, hidden) { Spell = spell.Name; KeywordsToAdd = new List <Keyword>(); SpellCastingAbility = spellability; SpellCastModifier = spellmodifier; if (kwToAdd == null) { KeywordsToAdd = new List <Keyword>(); } else { KeywordsToAdd = kwToAdd; } }
public string Recharge(RechargeModifier r, RechargeModifier defaultRecharge = RechargeModifier.LongRest) { if (!includeRecharge) { return(""); } if (r == RechargeModifier.Unmodified) { return(Recharge(defaultRecharge)); } return("(" + RechargeName(r) + ")"); //if (r.HasFlag(RechargeModifier.AtWill)) return ""; //if (r == RechargeModifier.Ritual) return "Ritual"; //if (r == RechargeModifier.ShortRest) if (displayShort) return "(Short Rest)"; // else return "Recharge: Short Rest"; //if (displayShort) return "(Long Rest)"; //return "Recharge: Long Rest"; }
public BonusSpellKeywordChoiceFeature(string name, string text, string condition, String uniqueID, Ability spellability, RechargeModifier spellmodifier = RechargeModifier.Unmodified, List <Keyword> kwToAdd = null, int amount = 1, int level = 1, bool hidden = false) : base(name, text, level, hidden) { KeywordsToAdd = new List <Keyword>(); Condition = condition; SpellCastingAbility = spellability; UniqueID = uniqueID; Amount = amount; SpellCastModifier = spellmodifier; if (kwToAdd == null) { KeywordsToAdd = new List <Keyword>(); } else { KeywordsToAdd = kwToAdd; } }
public static string RechargeName(RechargeModifier Recharge) { if (Recharge == RechargeModifier.LongRest) { return("Long Rest"); } if (Recharge == RechargeModifier.ShortRest) { return("Any Rest"); } if (Recharge == RechargeModifier.Dawn) { return("At Dawn"); } if (Recharge == RechargeModifier.Dusk) { return("At Dusk"); } if (Recharge == RechargeModifier.Special) { return("Special"); } if (Recharge == RechargeModifier.Charges) { return("Used with Charges"); } if (Recharge == RechargeModifier.NoRecharge) { return("No Recharge"); } if (Recharge == RechargeModifier.Ritual) { return("Ritual"); } return("Other"); }