<fieldset>
|
|
<li class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellCategoryLabel"}}</label>
|
|
<select name="system.category.value">
|
|
{{#select data.category.value}}
|
|
{{#each spellCategories as |label key|}}
|
|
<option value="{{key}}">{{localize label}}</option>
|
|
{{/each}}
|
|
{{/select}}
|
|
</select>
|
|
</li>
|
|
|
|
<li class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellTraditionsLabel"}}</label>
|
|
<input class="tags paizo-style" name="system.traditions.value" value="{{json data.traditions.value}}" data-dtype="JSON" />
|
|
</li>
|
|
|
|
{{#unless isRitual}}
|
|
<li class="form-group">
|
|
<label class="large">{{localize "PF2E.TraitCantrip"}}</label>
|
|
<input class="toggle-trait" type="checkbox" {{checked isCantrip}} data-trait="cantrip" />
|
|
</li>
|
|
{{/unless}}
|
|
</fieldset>
|
|
|
|
<fieldset>
|
|
<legend>{{localize "PF2E.CastLabel"}}</legend>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellTimeLabel"}}</label>
|
|
<input type="text" name="system.time.value" value="{{data.time.value}}" />
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellComponentsLabel"}}</label>
|
|
<div class="form-fields spell-components">
|
|
<label>
|
|
<input type="checkbox" name="system.components.focus" {{checked data.components.focus}} />
|
|
<span>{{localize "PF2E.SpellComponentShortF"}}</span>
|
|
</label>
|
|
<label>
|
|
<input type="checkbox" name="system.components.material" {{checked data.components.material}} />
|
|
<span>{{localize "PF2E.SpellComponentShortM"}}</span>
|
|
</label>
|
|
<label>
|
|
<input type="checkbox" name="system.components.somatic" {{checked data.components.somatic}} />
|
|
<span>{{localize "PF2E.SpellComponentShortS"}}</span>
|
|
</label>
|
|
<label>
|
|
<input type="checkbox" name="system.components.verbal" {{checked data.components.verbal}} />
|
|
<span>{{localize "PF2E.SpellComponentShortV"}}</span>
|
|
</label>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellRequirementsLabel"}}</label>
|
|
<input type="text" name="system.materials.value" value="{{data.materials.value}}" />
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellCostLabel"}}</label>
|
|
<input type="text" name="system.cost.value" value="{{data.cost.value}}" />
|
|
</div>
|
|
</fieldset>
|
|
|
|
{{#if isRitual}}
|
|
<ol class="form-list">
|
|
<h3>{{localize "PF2E.SpellRitualLabel"}}</h3>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellPrimaryCheckLabel"}}</label>
|
|
<input type="text" name="system.primarycheck.value" value="{{data.primarycheck.value}}" />
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellSecondaryChecksLabel"}}</label>
|
|
<input type="text" name="system.secondarycheck.value" value="{{data.secondarycheck.value}}" />
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellSecondaryCasters"}}</label>
|
|
<input type="text" name="system.secondarycasters.value" value="{{data.secondarycasters.value}}" />
|
|
</div>
|
|
</ol>
|
|
{{/if}}
|
|
|
|
<fieldset>
|
|
<legend>{{localize "PF2E.Usage"}}</legend>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellRangeLabel"}}</label>
|
|
<input type="text" name="system.range.value" value="{{data.range.value}}" />
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellTargetLabel"}}</label>
|
|
<input type="text" name="system.target.value" value="{{data.target.value}}" />
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.AreaLabel"}}</label>
|
|
<div class="details-container-two-columns">
|
|
<select name="system.area.value" data-dtype="Number">
|
|
<option value="0"></option>
|
|
{{#select data.area.value}}
|
|
{{#each areaSizes as |label key|}}
|
|
<option value="{{key}}">{{localize label}}</option>
|
|
{{/each}}
|
|
{{/select}}
|
|
</select>
|
|
<select name="system.area.type">
|
|
<option value=""></option>
|
|
{{#select data.area.type}}
|
|
{{#each areaTypes as |label type|}}
|
|
<option value="{{type}}">{{localize label}}</option>
|
|
{{/each}}
|
|
{{/select}}
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellDurationLabel"}}</label>
|
|
<input type="text" name="system.duration.value" value="{{data.duration.value}}" />
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="large">{{localize "PF2E.Item.Spell.Counteract.Label"}}</label>
|
|
<input type="checkbox" name="system.hasCounteractCheck.value" {{checked data.hasCounteractCheck.value}} />
|
|
</div>
|
|
</fieldset>
|
|
|
|
<fieldset>
|
|
<legend>{{localize "PF2E.DamageLabel"}}</legend>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellTypeLabel"}}</label>
|
|
<select name="system.spellType.value">
|
|
{{#select data.spellType.value}}
|
|
{{#each spellTypes as |name type|}}
|
|
<option value="{{type}}">{{localize name}}</option>
|
|
{{/each}}
|
|
{{/select}}
|
|
</select>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellSaveLabel"}}</label>
|
|
<div class="details-container-two-columns">
|
|
<select name="system.save.basic">
|
|
{{#select data.save.basic}}
|
|
<option value=""></option>
|
|
<option value="basic">{{localize "PF2E.SpellBasicSaveOption"}}</option>
|
|
{{/select}}
|
|
</select>
|
|
<select name="system.save.value">
|
|
{{#select data.save.value}}
|
|
<option value=""></option>
|
|
{{#each saves as |ability a|}}
|
|
<option value="{{a}}">{{localize ability}}</option>
|
|
{{/each}}
|
|
{{/select}}
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="damage-formulas">
|
|
<h3>
|
|
{{localize "PF2E.FormulaPlaceholder"}}
|
|
<div class="item-controls">
|
|
<i class="fa-solid fa-fw fa-plus" data-action="damage-create"></i>
|
|
</div>
|
|
</h3>
|
|
|
|
{{#each data.damage.value as |damage id|}}
|
|
<div class="form-group">
|
|
<div class="form-fields">
|
|
<input type="text" name="system.damage.value.{{id}}.value" value="{{damage.value}}" placeholder="{{localize "PF2E.FormulaPlaceholder"}}" />
|
|
<label>
|
|
<span> {{localize "PF2E.SpellAbilityModLabel"}}</span>
|
|
<input type="checkbox" name="system.damage.value.{{id}}.applyMod" {{checked damage.applyMod}} />
|
|
</label>
|
|
<select name="system.damage.value.{{id}}.type.subtype">
|
|
{{#select damage.type.subtype}}
|
|
<option></option>
|
|
{{#each @root.damageSubtypes as |name type|}}
|
|
<option value="{{type}}">{{localize name}}</option>
|
|
{{/each}}
|
|
{{/select}}
|
|
</select>
|
|
<select name="system.damage.value.{{id}}.type.value">
|
|
{{#select damage.type.value}}
|
|
<option value=""></option>
|
|
{{#each @root.damageTypes as |name type|}}
|
|
<option value="{{type}}">{{localize name}}</option>
|
|
{{/each}}
|
|
{{/select}}
|
|
</select>
|
|
<div class="item-controls">
|
|
<a
|
|
class="tag-selector"
|
|
data-tag-selector="basic"
|
|
data-title="PF2E.DamageCategoriesLabel"
|
|
data-config-types="materialDamageEffects"
|
|
data-property="system.damage.value.{{id}}.type.categories"
|
|
><i class="fa-solid fa-fw fa-edit"></i></a>
|
|
<a data-action="damage-delete" data-id="{{id}}"><i class="fa-solid fa-fw fa-trash"></i></a>
|
|
</div>
|
|
</div>
|
|
{{#if damage.type.categories}}
|
|
<div class="traits-list">
|
|
{{#each damage.type.categories}}
|
|
<div class="tag-legacy">{{localize (lookup @root.damageCategories this)}}</div>
|
|
{{/each}}
|
|
</div>
|
|
{{/if}}
|
|
</div>
|
|
{{/each}}
|
|
</div>
|
|
</fieldset>
|
|
|
|
{{#unless data.heightening.type}}
|
|
{{#if canHeighten}}
|
|
<button type="button" data-action="heightening-interval-create"><i class="fa-solid fa-fw fa-plus"></i> {{localize "PF2E.SpellScalingInterval.Add"}}</button>
|
|
{{/if}}
|
|
{{/unless}}
|
|
|
|
{{#if (eq data.heightening.type "interval")}}
|
|
<fieldset>
|
|
<div class="form-group">
|
|
<h3>{{localize "PF2E.SpellScalingInterval.Header"}}</h3>
|
|
<div class="item-controls">
|
|
<i class="fa-solid fa-fw fa-trash" data-action="heightening-delete" data-idx="{{idx}}"></i>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="short">{{localize "PF2E.SpellScalingInterval.Label"}}</label>
|
|
<select name="system.heightening.interval" data-dtype="Number">
|
|
{{#select data.heightening.interval}}
|
|
{{#each @root.heightenIntervals as |key|}}
|
|
<option value="{{key}}">{{localize "PF2E.SpellScalingInterval.Selection" interval=key}}</option>
|
|
{{/each}}
|
|
{{/select}}
|
|
</select>
|
|
</div>
|
|
|
|
{{#each data.damage.value as |damage idx|}}
|
|
<div class="form-group">
|
|
<label class="short">{{localize (lookup @root.damageTypes damage.type.value)}}</label>
|
|
<input type="text" name="system.heightening.damage.{{idx}}" value="{{lookup ../data.heightening.damage idx}}" />
|
|
</div>
|
|
{{/each}}
|
|
</fieldset>
|
|
{{/if}}
|
|
|
|
{{! Spell heightening for fixed levels}}
|
|
{{#unless (eq data.heightening.type "interval")}}
|
|
{{#each heightenOverlays}}
|
|
{{> systems/pf2e/templates/items/spell-overlay.hbs this=this}}
|
|
{{/each}}
|
|
{{#if canHeighten}}
|
|
<button type="button" data-action="heightening-fixed-create" data-overlay-type="heightening">
|
|
<i class="fa-solid fa-fw fa-plus"></i> {{localize "PF2E.SpellScalingOverlay.Add"}}
|
|
</button>
|
|
{{/if}}
|
|
{{/unless}}
|
|
|
|
{{#if (not isVariant)}}
|
|
<fieldset class="variants" data-can-drop="true">
|
|
<legend class="form-group">
|
|
{{localize "PF2E.Item.Spell.Variants.LabelPlural"}}
|
|
<a data-action="variant-create"><i class="fa-solid fa-fw fa-plus"></i></a>
|
|
</legend>
|
|
|
|
{{#each variants as |variant|}}
|
|
<div class="variant" data-variant-id="{{variant.id}}">
|
|
<label>{{variant.name}}</label>
|
|
<span class="action-glyph">{{variant.actions}}</span>
|
|
<div class="item-controls">
|
|
<a data-action="variant-edit" data-id="{{variant.id}}"><i class="fa-solid fa-fw fa-edit"></i></a>
|
|
<a data-action="variant-delete" data-id="{{variant.id}}"><i class="fa-solid fa-fw fa-trash"></i></a>
|
|
</div>
|
|
</div>
|
|
{{/each}}
|
|
</fieldset>
|
|
{{/if}}
|