partial summon power update

This commit is contained in:
Mike Bloy 2025-06-03 21:18:59 -05:00
parent f396636713
commit 0560cc5778
8 changed files with 21 additions and 30 deletions

View File

@ -3,6 +3,6 @@
"mbhelpers.settings.morphablesCompendiumHint": "UUID of a Compendium that holds all the morphables.",
"mbhelpers.settings.summonablesCompendiumName": "Summonables Compendium",
"mbhelpers.settings.summonablesCompendiumHint": "UUID of a Compendium that holds all the summonables.",
"mbhelpers.settings.summonablesJournalName": "Summonables Journal Entry",
"mbhelpers.settings.summonablesJournalHint": "UUID of a journal entry that lists the costs of all summonables. There should be a page named identically to every available spell name"
"mbhelpers.settings.powersJournalName": "Powers Journal",
"mbhelpers.settings.powersJournalHint": "UUID of a helper journal for actor-based powers (summonables and morphables)."
}

View File

@ -1,24 +1,23 @@
import { log, moduleHelpers, settingKeys } from './globals.js';
import { requestFearRollFromTokens, requestRollFromTokens } from './helpers.js';
import { powers, powerEffectsMenu } from './powers/powers.js';
import { powers, PowerClasses, powerEffectsMenu } from './powers/powers.js';
import { setSummonCosts } from './powers/summonSupport.js';
export class api {
static registerFunctions() {
log('SWADE MB Helpers initialized');
api.globals();
}
static globals() {
const moduleName = 'swade-mb-helpers';
game.modules.get(moduleName).api = {
const mbSwadeApi = {
fearTable: moduleHelpers.fearTableHelper,
powerEffects: powers,
PowerClasses,
powerEffectsMenu,
requestFearRollFromTokens,
requestRollFromTokens,
rulesVersion: moduleHelpers.rulesVersion,
setSummonCosts,
};
game.modules.get(moduleName).api = mbSwadeApi;
game.mbSwade = mbSwadeApi;
}
}

View File

@ -2,8 +2,8 @@ export const moduleName = 'swade-mb-helpers';
export const settingKeys = {
summonablesCompendium: 'summonablesCompendium',
summonablesJournal: 'summonablesJournal',
morphablesCompendium: 'morphablesCompendium',
powersJournal: 'powersJournal',
};
export function log(...args) {

View File

@ -35,10 +35,6 @@ export class BalefulPolymorphEffect extends ActorFolderEffect {
return false;
}
get actorFolderBase() {
return 'Morphables';
}
actorValue(actor) {
const size = actor.system.stats.size;
const targetSize = this.targets[0].actor.system.stats.size;

View File

@ -35,10 +35,6 @@ export class ShapeChangeEffect extends ActorFolderEffect {
return false;
}
get actorFolderBase() {
return 'Morphables';
}
actorValue(actor) {
const size = actor.system.stats.size;
let value = 3;

View File

@ -3,7 +3,7 @@ import { BaseSummonEffect } from './summonSupport.js';
class BaseAllyEffect extends BaseSummonEffect {
get actorFolder() {
return `${this.actorFolderBase}/Creatures`;
return 'Creatures';
}
get basePowerPoints() {
@ -244,14 +244,14 @@ export class SummonAllyEffect extends BaseAllyEffect {
return 'Summon Ally';
}
get actorFolder() {
return `${this.actorFolderBase}/${this.name}`;
}
get commonActorPool() {
return false;
}
get actorFolder() {
return this.name;
}
get icon() {
return 'icons/magic/control/silhouette-hold-beam-blue.webp';
}

View File

@ -1,15 +1,15 @@
/* globals Sequencer */
import { log, moduleHelpers, moduleName } from '../globals.js';
import { log, moduleHelpers, moduleName, settingKeys } from '../globals.js';
import { templates } from '../preloadTemplates.js';
import { ActorFolderEffect } from './basePowers.js';
export class BaseSummonEffect extends ActorFolderEffect {
get name() {
return 'Base Summon';
get actorFolderPackId() {
return moduleHelpers.getSetting(settingKeys.summonablesCompendium);
}
get actorFolderBase() {
return 'Summonables';
get name() {
return 'Base Summon';
}
get summonCount() {

View File

@ -1,8 +1,8 @@
import { moduleName, moduleHelpers, settingKeys } from './globals.js';
export function registerSettings() {
moduleHelpers.registerSetting(settingKeys.summonablesJournal, {
name: 'mbhelpers.settings.summonablesJournalName',
hint: 'mbhelpers.settings.summonablesJournalHint',
moduleHelpers.registerSetting(settingKeys.powersJournal, {
name: 'mbhelpers.settings.powersJournalName',
hint: 'mbhelpers.settings.powersJournalHint',
scope: 'world',
config: true,
requiresReload: false,