/// <summary> /// Initializes a new instance of the <see cref="T:Core.Domain.Items.Enchantments.Paizo.CoreRulebook.Shadow"/> class. /// </summary> /// <param name="strength">The strength of the enchantment.</param> /// <exception cref="System.ComponentModel.InvalidEnumArgumentException">Thrown when an argument is a nonstandard enum.</exception> internal Shadow(ShadowStrength strength) { switch (strength) { case ShadowStrength.Regular: this.CasterLevel = 5; this.Cost = 3750; break; case ShadowStrength.Improved: this.CasterLevel = 10; this.Cost = 15_000; break; case ShadowStrength.Greater: this.CasterLevel = 15; this.Cost = 33_750; break; default: throw new InvalidEnumArgumentException(nameof(strength), (int)strength, strength.GetType()); } byte skillBonus = Convert.ToByte((int)strength); this.ApplicationEffects = (c) => c.Skills?.Stealth?.CompetenceBonuses?.Add(() => skillBonus); this.Name = new NameFragment(Shadow.BuildName(strength), Shadow.BuildWebAddress(strength)); }
private static string BuildName(ShadowStrength strength) { string magnitude = (ShadowStrength.Regular != strength) ? $"{ strength }" : String.Empty; return($"{ magnitude } Shadow".Trim()); }
private static string BuildWebAddress(ShadowStrength strength) { switch (strength) { case ShadowStrength.Regular: return("http://www.d20pfsrd.com/magic-items/magic-armor/magic-armor-and-shield-special-abilities/shadow/"); case ShadowStrength.Improved: return("http://www.d20pfsrd.com/magic-items/magic-armor/magic-armor-and-shield-special-abilities/shadow-improved/"); case ShadowStrength.Greater: return("http://www.d20pfsrd.com/magic-items/magic-armor/magic-armor-and-shield-special-abilities/shadow-greater/"); default: throw new InvalidEnumArgumentException(nameof(strength), (int)strength, strength.GetType()); } }
/// <summary> /// Enchants this armor with Shadow. /// </summary> /// <exception cref="System.InvalidOperationException">Thrown when this armor does not already have a magical enhancement bonus, or when this enchantment has already been applied.</exception> /// <exception cref="System.ComponentModel.InvalidEnumArgumentException">Thrown when an argument is a nonstandard enum.</exception> new public FullPlate EnchantWithShadow(ShadowStrength strength) { base.EnchantWithShadow(strength); return(this); }
private void Awake() { instance = this; }
/// <summary> /// Enchants this armor with Shadow. /// </summary> /// <exception cref="System.InvalidOperationException">Thrown when this armor does not already have a magical enhancement bonus, or when this enchantment has already been applied.</exception> /// <exception cref="System.ComponentModel.InvalidEnumArgumentException">Thrown when an argument is a nonstandard enum.</exception> new public ChainShirt EnchantWithShadow(ShadowStrength strength) { base.EnchantWithShadow(strength); return(this); }
/// <summary> /// Enchants this armor with Shadow. /// </summary> /// <exception cref="System.InvalidOperationException">Thrown when this armor does not already have a magical enhancement bonus, or when this enchantment has already been applied.</exception> /// <exception cref="System.ComponentModel.InvalidEnumArgumentException">Thrown when an argument is a nonstandard enum.</exception> new public BandedMail EnchantWithShadow(ShadowStrength strength) { base.EnchantWithShadow(strength); return(this); }
/// <summary> /// Enchants this armor with Shadow. /// </summary> /// <exception cref="System.InvalidOperationException">Thrown when this armor does not already have a magical enhancement bonus, or when this enchantment has already been applied.</exception> /// <exception cref="System.ComponentModel.InvalidEnumArgumentException">Thrown when an argument is a nonstandard enum.</exception> new public PaddedArmor EnchantWithShadow(ShadowStrength strength) { base.EnchantWithShadow(strength); return this; }
/// <summary> /// Enchants this armor with Shadow. /// </summary> /// <exception cref="System.InvalidOperationException">Thrown when this armor does not already have a magical enhancement bonus, or when this enchantment has already been applied.</exception> /// <exception cref="System.ComponentModel.InvalidEnumArgumentException">Thrown when an argument is a nonstandard enum.</exception> new public HideArmor EnchantWithShadow(ShadowStrength strength) { base.EnchantWithShadow(strength); return(this); }
/// <summary> /// Enchants this armor with Shadow. /// </summary> /// <exception cref="System.InvalidOperationException">Thrown when this armor does not already have a magical enhancement bonus, or when this enchantment has already been applied.</exception> /// <exception cref="System.ComponentModel.InvalidEnumArgumentException">Thrown when an argument is a nonstandard enum.</exception> new public StuddedLeatherArmor EnchantWithShadow(ShadowStrength strength) { base.EnchantWithShadow(strength); return(this); }