add healing
This commit is contained in:
parent
3062e1bfcb
commit
b4fd301a4f
@ -56,6 +56,7 @@ export class HavocEffect extends PowerEffect {
|
|||||||
value: 2,
|
value: 2,
|
||||||
id: 'greater',
|
id: 'greater',
|
||||||
epic: true,
|
epic: true,
|
||||||
|
type: 'checkbox',
|
||||||
effect: false,
|
effect: false,
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|||||||
105
src/module/powers/healing.js
Normal file
105
src/module/powers/healing.js
Normal file
@ -0,0 +1,105 @@
|
|||||||
|
import { PowerEffect } from './basePowers.js';
|
||||||
|
|
||||||
|
export class HealingEffect extends PowerEffect {
|
||||||
|
get name() {
|
||||||
|
return 'Healing';
|
||||||
|
}
|
||||||
|
|
||||||
|
get icon() {
|
||||||
|
return 'icons/magic/life/heart-cross-strong-flame-purple-orange.webp';
|
||||||
|
}
|
||||||
|
|
||||||
|
get duration() {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
get isTargeted() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
get usePrimaryEffect() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
get isDamaging() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
get basePowerPoints() {
|
||||||
|
return 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
get hasAoe() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
get modifiers() {
|
||||||
|
const mods = super.modifiers;
|
||||||
|
mods.push(
|
||||||
|
{
|
||||||
|
name: 'Area of Effect',
|
||||||
|
id: 'aoe',
|
||||||
|
type: 'select',
|
||||||
|
default: 'none',
|
||||||
|
choices: {
|
||||||
|
none: 'None',
|
||||||
|
mbt: '⭐ Medium Blast Template',
|
||||||
|
lbt: '⭐ Large Blast Template',
|
||||||
|
},
|
||||||
|
effects: { none: null, mbt: null, lbt: null },
|
||||||
|
values: { none: 0, mbt: 2, lbt: 3 },
|
||||||
|
epic: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Neutralize Poison or Disease',
|
||||||
|
value: 1,
|
||||||
|
id: 'poison',
|
||||||
|
epic: false,
|
||||||
|
type: 'checkbox',
|
||||||
|
effect: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Crippling Injuries',
|
||||||
|
value: 15,
|
||||||
|
id: 'crippling',
|
||||||
|
epic: false,
|
||||||
|
type: 'checkbox',
|
||||||
|
effect: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Greater Healing',
|
||||||
|
value: 10,
|
||||||
|
id: 'greater',
|
||||||
|
epic: false,
|
||||||
|
type: 'checkbox',
|
||||||
|
effect: false,
|
||||||
|
},
|
||||||
|
);
|
||||||
|
return mods;
|
||||||
|
}
|
||||||
|
|
||||||
|
get description() {
|
||||||
|
const size =
|
||||||
|
this.data.aoe !== 'none'
|
||||||
|
? `all allies within a ${this.data.aoe.toUpperCase()} centered on the caster`
|
||||||
|
: 'a single subject';
|
||||||
|
let text =
|
||||||
|
super.description +
|
||||||
|
`
|
||||||
|
<p>Heal ${size} of ${this.data.raise ? '2 Wounds' : '1 Wound'}
|
||||||
|
${this.data.greater ? 'of any age' : 'sustained in the last hour'}.
|
||||||
|
`;
|
||||||
|
if (this.data.crippling) {
|
||||||
|
text += `This casting is the only one possible for this Crippling Injury by this
|
||||||
|
caster, and preparation took an hour. If successful, the subject is
|
||||||
|
Exhausted for 24 hours.
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
if (this.data.poison) {
|
||||||
|
text += `Negate any poison or disease, taking into account the affects of
|
||||||
|
any penalty from the poison or disease on the arcane skill roll.`;
|
||||||
|
}
|
||||||
|
text += '</p>';
|
||||||
|
return text;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -30,6 +30,7 @@ import { FearEffect } from './fear.js';
|
|||||||
import { FlyEffect } from './fly.js';
|
import { FlyEffect } from './fly.js';
|
||||||
import { GrowthShrinkEffect } from './growthShrink.js';
|
import { GrowthShrinkEffect } from './growthShrink.js';
|
||||||
import { HavocEffect } from './havoc.js';
|
import { HavocEffect } from './havoc.js';
|
||||||
|
import { HealingEffect } from './healing.js';
|
||||||
|
|
||||||
const PowerClasses = {
|
const PowerClasses = {
|
||||||
'arcane-protection': ArcaneProtectionEffect,
|
'arcane-protection': ArcaneProtectionEffect,
|
||||||
@ -69,6 +70,7 @@ const PowerClasses = {
|
|||||||
'growth-shrink': GrowthShrinkEffect,
|
'growth-shrink': GrowthShrinkEffect,
|
||||||
growthshrink: GrowthShrinkEffect,
|
growthshrink: GrowthShrinkEffect,
|
||||||
havoc: HavocEffect,
|
havoc: HavocEffect,
|
||||||
|
healing: HealingEffect,
|
||||||
'lower-trait': BoostLowerTraitEffect,
|
'lower-trait': BoostLowerTraitEffect,
|
||||||
shrink: GrowthShrinkEffect,
|
shrink: GrowthShrinkEffect,
|
||||||
};
|
};
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user