add mind reading and mind wipe

This commit is contained in:
Mike Bloy 2024-05-25 11:13:02 -05:00
parent 4908c6d4a7
commit 1cd4a08990
3 changed files with 87 additions and 0 deletions

View File

@ -33,6 +33,10 @@ export class MindReadingEffect extends PowerEffect {
return false; return false;
} }
get isRaisable() {
return false;
}
get modifiers() { get modifiers() {
return [ return [
...super.modifiers, ...super.modifiers,

View File

@ -0,0 +1,81 @@
import { PowerEffect } from './basePowers.js';
export class MindWipeEffect extends PowerEffect {
get name() {
return 'Mind Wipe';
}
get icon() {
return 'icons/magic/control/hypnosis-mesmerism-eye.webp';
}
get duration() {
return 0;
}
get isTargeted() {
return true;
}
get isDamaging() {
return false;
}
get oneTarget() {
return true;
}
get basePowerPoints() {
return 3;
}
get usePrimaryEffect() {
return false;
}
get isRaisable() {
return false;
}
get modifiers() {
return [
...super.modifiers,
{
type: 'checkbox',
name: 'Edit',
id: 'edit',
value: 1,
epic: false,
effect: false,
},
{
type: 'checkbox',
name: 'Fast Cast',
id: 'fast',
value: 2,
epic: false,
effect: false,
},
{
type: 'checkbox',
default: false,
name: 'Greater Mind Wipe',
value: 2,
epic: true,
effect: false,
id: 'greater',
},
];
}
get description() {
let text = super.description;
text += `<p>Opposed roll vs victim's Smarts. Mind Wipe takes
${this.data.fast ? 'a single action' : 'a full minute of concentration'}
to complete. On success by the caster, the caster may
${this.data.edit ? 'edit or alter' : 'remove'} the subject's memory of
${this.data.greater ? 'a single event, person, place or thing' : 'about 30 minutes of time, or several hours with a raise'}.
`;
return text;
}
}

View File

@ -38,6 +38,7 @@ import { LightDarknessEffect } from './lightdarkness.js';
import { LocateEffect } from './locate.js'; import { LocateEffect } from './locate.js';
import { MindLinkEffect } from './mindLink.js'; import { MindLinkEffect } from './mindLink.js';
import { MindReadingEffect } from './mindReading.js'; import { MindReadingEffect } from './mindReading.js';
import { MindWipeEffect } from './mindWipe.js';
const PowerClasses = { const PowerClasses = {
'arcane-protection': ArcaneProtectionEffect, 'arcane-protection': ArcaneProtectionEffect,
@ -89,6 +90,7 @@ const PowerClasses = {
'lower-trait': BoostLowerTraitEffect, 'lower-trait': BoostLowerTraitEffect,
'mind-link': MindLinkEffect, 'mind-link': MindLinkEffect,
'mind-reading': MindReadingEffect, 'mind-reading': MindReadingEffect,
'mind-wipe': MindWipeEffect,
shrink: GrowthShrinkEffect, shrink: GrowthShrinkEffect,
}; };