import { PowerEffect } from './basePowers.js'; export class ConjureItemEffect extends PowerEffect { get name() { return 'Conjure Item'; } get icon() { return 'icons/commodities/tech/cog-steel-grey.webp'; } get duration() { return 0; } get isTargeted() { return false; } get isRaisable() { return true; } get basePowerPoints() { return 2; } get modifiers() { return [ { name: 'Weight in pounds OR daily rations', type: 'number', default: 1, value: 0, id: 'weight', epic: false, effect: false, }, { name: 'Complete Set', type: 'checkbox', default: false, value: 1, id: 'complete', epic: false, effect: false, }, { name: 'Create Food and Water (Special)', type: 'checkbox', default: false, value: 0, id: 'rations', epic: false, effect: false, }, { name: 'Durable (+1 per pound)', type: 'checkbox', default: false, value: 0, id: 'durable', epic: false, effect: false, }, ]; } get powerPoints() { if (this.data.rations) { return this.data.weight; } return this.data.weight * (this.data.durable ? 3 : 2) + (this.data.complete ? 1 : 0); } get description() { if (this.data.rations) { return ( super.description + `
Conjure enough food and drink to feed ${this.data.weight} size 0 humanoid${this.data.weight > 1 ? 's' : ''} for 1 day. The food decays and is inedible after 24 hours if not consumed.
` ); } let desc = super.description + `Conjure an item up to ${this.data.weight} in pounds. `; if (this.data.raise) { desc += 'It is a more durable item than usual for its type. '; } if (this.data.complete) { desc += 'Whatever is conjured is a complete set. '; } if (this.data.durable) { desc += 'The item remains until it is dispelled or dismissed by the caster. '; } else { desc += 'The item lasts for one hour. '; } desc += 'Once it is dismissed or expires, the item fades from existance.
'; return desc; } }