diff --git a/scripts/powers.js b/scripts/powers.js index 35142ca..73ad9cd 100644 --- a/scripts/powers.js +++ b/scripts/powers.js @@ -716,6 +716,44 @@ class DamageFieldEffect extends PowerEffect { } } +class DarksightEffect extends PowerEffect { + get name () { return 'Darksight' } + get icon () { return 'icons/magic/perception/third-eye-blue-red.webp' } + get duration () { return 600 } + get basePowerPoints () { return 1 } + get isTargeted () { return true } + get hasAdditionalRecipients () { return true } + get additionalRecipientCost () { return 1 } + get modifiers () { + const mods = super.modifiers + mods.push({name: 'Greater Darksight', value: 2, id: 'greater', epic: true, effect: false}) + return mods + } + get description () { + let desc = super.description + desc += '

' + if (this.data.mods.has('greater')) { + desc += `Can see in all darkness, ignoring all illumination penalties and + 4 points of penalties from invisible creatures` + } else if (this.data.raise) { + desc += 'Can see in Pitch Darkness and ignore up to 6 points of illumination penalties' + } else { + desc += 'Can see in darkness and ignore 4 points of illumination penalties' + } + desc += '

' + return desc + } + get effectName () { + if (this.data.mods.has('greater')) { + return 'Greater Darksight' + } else if (this.data.raise) { + return 'Major Darksight' + } else { + return 'Darksignt' + } + } +} + const PowerClasses = { "arcane-protection": ArcaneProtectionEffect, banish: BanishEffect, @@ -731,6 +769,7 @@ const PowerClasses = { confusion: ConfusionEffect, curse: CurseEffect, "damage-field": DamageFieldEffect, + darksight: DarksightEffect, "lower-trait": BoostLowerTraitEffect, }