add timestop

This commit is contained in:
Mike Bloy 2024-06-05 17:02:42 -05:00
parent f4bfa13cab
commit ba99dc08e2
3 changed files with 46 additions and 2 deletions

View File

@ -607,7 +607,7 @@ export class PowerEffect {
}
async apply() {
const maintId = randomID();
const maintId = foundry.utils.randomID();
const secondaryDocs = await this.createSecondaryEffects(maintId);
const primaryDoc = await this.createPrimaryEffect(maintId);
const maintainDoc = await this.createMaintainEffect(maintId);
@ -873,7 +873,7 @@ export class ActorFolderEffect extends PowerEffect {
async parseValues() {
await super.parseValues();
this.data.maintId = randomID();
this.data.maintId = foundry.utils.randomID();
this.targetActor = await game.actors.get(this.data.actorId);
this.targetTokenDoc = await this.targetActor.getTokenDocument();
const sourceUpdates = {

View File

@ -59,6 +59,7 @@ import { StunEffect } from './stun.js';
import { SummonAllyEffect } from './summon.js';
import { TelekinesisEffect } from './telekinesis.js';
import { TeleportEffect } from './teleport.js';
import { TimeStopEffect } from './timeStop.js';
const PowerClasses = {
'arcane-protection': ArcaneProtectionEffect,
@ -138,6 +139,7 @@ const PowerClasses = {
'summon-ally': SummonAllyEffect,
telekinesis: TelekinesisEffect,
teleport: TeleportEffect,
'time-stop': TimeStopEffect,
};
/* ---------------------------------------------------------------- */

View File

@ -0,0 +1,42 @@
import { PowerEffect } from './basePowers.js';
export class TimeStopEffect extends PowerEffect {
get name() {
return 'Time Stop';
}
get icon() {
return 'icons/magic/time/hourglass-tilted-gray.webp';
}
get duration() {
return 0;
}
get isTargeted() {
return false;
}
get isRaisable() {
return true;
}
get basePowerPoints() {
return 10;
}
get description() {
let desc = super.description;
desc += `<p>Stop time for all but the caster, granting [[/r 1d4+1]] new turns
immediately after this one. During these turns the caster may act as normal
on their current Action Card.
`;
if (this.data.raise) {
desc += `With the raise, the caster may choose to draw a new Action Card each turn.
`;
}
desc += `</p><p><em>Time stop</em> ends if any of the caster's action affect
another character or creature.</p>`;
return desc;
}
}