add new deflection effect

This commit is contained in:
Mike Bloy 2024-05-07 13:29:59 -05:00
parent 13e6c9bcf7
commit eccb4778cb

View File

@ -754,6 +754,36 @@ class DarksightEffect extends PowerEffect {
} }
} }
class DeflectionEffect extends PowerEffect {
get name () { return 'Deflection' }
get icon () { return 'icons/magic/defensive/shield-barrier-deflect-teal.webp' }
get duration () { return 5 }
get basePowerPoints () { return 2 }
get isTargeted () { return true }
get hasAdditionalRecipients () { return true }
get additionalRecipientCost () { return 1 }
get menuButtons () {
const data = [
{ label: 'Melee', value: 'melee' },
{ label: 'Ranged', value: 'vulnerable' },
{ label: 'Raise (both)', value: 'raise' },
{ label: 'Cancel', value: 'cancel' },
]
return data
}
async parseValues () {
await super.parseValues()
this.data.affects = this.data.button === 'raise' ? 'all' : this.data.button
}
get effectName () {
return `Deflection (${this.data.affects})`
}
get description () {
return super.description + `<p>Attackers subtract -2 from ${this.data.affects}
attacks when targeting this creature.</p>`
}
}
const PowerClasses = { const PowerClasses = {
"arcane-protection": ArcaneProtectionEffect, "arcane-protection": ArcaneProtectionEffect,
banish: BanishEffect, banish: BanishEffect,
@ -770,6 +800,7 @@ const PowerClasses = {
curse: CurseEffect, curse: CurseEffect,
"damage-field": DamageFieldEffect, "damage-field": DamageFieldEffect,
darksight: DarksightEffect, darksight: DarksightEffect,
deflection: DeflectionEffect,
"lower-trait": BoostLowerTraitEffect, "lower-trait": BoostLowerTraitEffect,
} }