lingering damage helper
This commit is contained in:
parent
7637977018
commit
7141073a7a
@ -141,6 +141,32 @@ class TargetedPowerEffect extends PowerEffect {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class LingeringDamagePowerEffect extends TargetedPowerEffect {
|
||||||
|
get baseDurationRounds () {
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
async prepMenu () {
|
||||||
|
this.menuData.inputs.splice(this.menuData.inputs.length - 1, 0, {
|
||||||
|
type: 'checkbox', label: 'Lingering Damage (+2)'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
globalModifierEffects () {
|
||||||
|
super.globalModifierEffects()
|
||||||
|
this.inputIndex += 1
|
||||||
|
if (this.inputs[7]) { // lingering damage
|
||||||
|
const doc = shim.createEffectDocument(
|
||||||
|
'icons/magic/death/skull-poison-green.webp',
|
||||||
|
`Lingering Damage (${this.name})`,
|
||||||
|
1
|
||||||
|
)
|
||||||
|
doc.flags.swade.expiration = CONST.SWADE.STATUS_EFFECT_EXPIRATION.StartOfTurnPrompt
|
||||||
|
this.effectDocs.push(doc)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class ArcaneProtectionEffect extends TargetedPowerEffect {
|
class ArcaneProtectionEffect extends TargetedPowerEffect {
|
||||||
get name () {
|
get name () {
|
||||||
return 'Arcane Protection'
|
return 'Arcane Protection'
|
||||||
@ -166,6 +192,12 @@ class ArcaneProtectionEffect extends TargetedPowerEffect {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class BlastEffect extends LingeringDamagePowerEffect {
|
||||||
|
get name () {
|
||||||
|
return 'Blast'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class BlindEffect extends TargetedPowerEffect {
|
class BlindEffect extends TargetedPowerEffect {
|
||||||
async prepMenu (token, targets) {
|
async prepMenu (token, targets) {
|
||||||
this.menuData.inputs.push({
|
this.menuData.inputs.push({
|
||||||
@ -209,6 +241,12 @@ class BlindEffect extends TargetedPowerEffect {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class BoltEffect extends LingeringDamagePowerEffect {
|
||||||
|
get name () {
|
||||||
|
return 'Bolt'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class BoostLowerTraitEffect extends TargetedPowerEffect {
|
class BoostLowerTraitEffect extends TargetedPowerEffect {
|
||||||
get name () {
|
get name () {
|
||||||
return 'Boost/Lower Trait'
|
return 'Boost/Lower Trait'
|
||||||
@ -304,6 +342,12 @@ class BoostLowerTraitEffect extends TargetedPowerEffect {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class BurstEffect extends LingeringDamagePowerEffect {
|
||||||
|
get name () {
|
||||||
|
return 'Burst'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class ConfusionEffect extends TargetedPowerEffect {
|
class ConfusionEffect extends TargetedPowerEffect {
|
||||||
get name () {
|
get name () {
|
||||||
return 'Confusion'
|
return 'Confusion'
|
||||||
@ -942,9 +986,12 @@ class SummonUndeadEffect extends SummonEffect {
|
|||||||
|
|
||||||
const PowerClasses = {
|
const PowerClasses = {
|
||||||
'arcane protection': ArcaneProtectionEffect,
|
'arcane protection': ArcaneProtectionEffect,
|
||||||
|
blast: BlastEffect,
|
||||||
blind: BlindEffect,
|
blind: BlindEffect,
|
||||||
|
bolt: BoltEffect,
|
||||||
'boost/lower trait': BoostLowerTraitEffect,
|
'boost/lower trait': BoostLowerTraitEffect,
|
||||||
'boost trait': BoostLowerTraitEffect,
|
'boost trait': BoostLowerTraitEffect,
|
||||||
|
burst: BurstEffect,
|
||||||
confusion: ConfusionEffect,
|
confusion: ConfusionEffect,
|
||||||
deflection: DeflectionEffect,
|
deflection: DeflectionEffect,
|
||||||
entangle: EntangleEffect,
|
entangle: EntangleEffect,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user