All user data for FoundryVTT. Includes worlds, systems, modules, and any asset in the "foundryuserdata" directory. Does NOT include the FoundryVTT installation itself.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

165 lines
11 KiB

{{#with entry as |entry|}}
<ol class="directory-list spell-list" data-category="{{entry.category}}">
{{!-- Add section for each level --}}
{{#each entry.levels as |section|}}
{{#if (or (gt section.active.length 0) entry.showSlotlessLevels)}}
<li class="spell-level-header spellbook-header item" data-item-id="{{entry.id}}" data-item-type="spellLevel" data-level="{{section.level}}">
<div class="item-name flexrow">
<h3>{{localize section.label}}</h3>
{{#if (and section.isCantrip (not section.uses))}}
<span class="spell-slots infinity">&infin;</span>
<span class="flex0"> / </span>
<span class="spell-max infinity">&infin;</span>
{{else if (and entry.isFocusPool (not (eq @root.actor.type "character")))}}
<div class="focus-pool-input">
<span class="spell-slots-input">
<input type="number" name="system.resources.focus.value" value="{{@root.data.resources.focus.value}}" title="{{localize "PF2E.Focus.pointTitle"}}" placeholder="0" />
</span>
<span class="slash"> / </span>
<span class="spell-max-input">
<input type="number" name="system.resources.focus.max" value="{{@root.data.resources.focus.max}}" title="{{localize "PF2E.Focus.poolTitle"}}" placeholder="0" />
</span>
</div>
{{else if (and section.uses (not entry.isFocusPool))}}
{{#if section.uses.value includeZero=true}}
<span class="spell-slots-input">
<input type="number" data-item-id="{{entry.id}}" data-item-property="system.slots.slot{{section.level}}.value" value="{{section.uses.value}}" placeholder="0" />
</span>
<span class="slash"> / </span>
{{/if}}
<span class="spell-max-input">
<input type="number" data-item-id="{{entry.id}}" data-item-property="system.slots.slot{{section.level}}.max" value="{{section.uses.max}}" placeholder="0" />
</span>
{{#if section.uses.value includeZero=true}}
{{#if @root.options.editable}}
<a class="spell-slots-increment-reset" data-item-id="{{entry.id}}" data-level="{{section.level}}"><i class="fas fa-redo"></i></a>
{{/if}}
{{/if}}
{{/if}}
</div>
<div class="spell-range">
{{#if entry.isInnate}}
{{localize "PF2E.SpellUsesLabel"}}
{{else}}
{{localize "PF2E.SpellRangeLabel"}}
{{/if}}
</div>
<div class="spell-components">{{localize "PF2E.SpellComponentsLabel"}}</div>
{{#if (and (not entry.isPrepared) @root.options.editable)}}
<div class="item-controls">
<a class="item-control spell-create" title="{{localize "PF2E.CreateSpellTitle"}}" data-type="spell"
data-level="{{section.level}}" data-location="{{entry.id}}"><i class="fas fa-fw fa-plus"></i></a>
<a class="item-control spell-browse" title="{{localize "PF2E.OpenSpellBrowserTitle"}}" data-type="spell"
data-level="{{section.level}}" data-location="{{entry.id}}"><i class="fas fa-fw fa-search"></i></a>
</div>
{{/if}}
</li>
{{!-- Add spell items for each spell level --}}
{{#each section.active as |active i|}}
{{#with active}}
<li
class="item spell{{#if virtual}} virtual{{/if}}"
data-item-id="{{spell.id}}"
data-entry-id="{{entry.id}}"
data-cast-level="{{coalesce castLevel spell.level}}"
data-slot-level="{{section.level}}"
{{#if entry.isPrepared}}data-slot-id="{{i}}"{{/if}}
data-item-type="spell"
data-expended-state="{{expended}}"
data-item-summary-id="{{spell.id}}-{{section.level}}-{{i}}"
>
<div class="drag-handle item-name rollable">
<div class="item-image framed">
<img class="item-icon" src="{{spell.img}}" alt="{{spell.name}}">
<i class="fa-solid fa-message"></i>
</div>
<h4>{{spell.name}}{{{actionGlyph spell.system.time.value}}}</h4>
</div>
<div class="spell-range">
{{!-- Innate spells replace range for uses --}}
{{#if (not entry.isInnate)}}
{{spell.system.range.value}}
{{else if uses}}
<div class="uses">
<span class="spell-slots-input">
<input type="number" data-item-id="{{spell.id}}" data-item-property="system.location.uses.value" value="{{uses.value}}" placeholder="0" />
</span>
<span class="slash"> / </span>
<span class="spell-max-input">
<input type="number" data-item-id="{{spell.id}}" data-item-property="system.location.uses.max" value="{{uses.max}}" placeholder="0" />
</span>
{{#if @root.options.editable}}
<a class="spell-slots-increment-reset" data-item-id="{{spell.id}}"><i class="fas fa-redo"></i></a>
{{/if}}
</div>
{{else}}
{{localize "PF2E.SpellUnlimitedLabel"}}
{{/if}}
</div>
<div class="spell-components tags">
{{#if spell.system.components.focus}}
<span class="tag tag_transparent">{{localize "PF2E.SpellComponentShortF"}}</span>
{{/if}}
{{#if spell.system.components.material}}
<span class="tag tag_transparent">{{localize "PF2E.SpellComponentShortM"}}</span>
{{/if}}
{{#if spell.system.components.somatic}}
<span class="tag tag_transparent">{{localize "PF2E.SpellComponentShortS"}}</span>
{{/if}}
{{#if spell.system.components.verbal}}
<span class="tag tag_transparent">{{localize "PF2E.SpellComponentShortV"}}</span>
{{/if}}
</div>
{{#if @root.options.editable}}
<button type="button" class="cast-spell" data-action="cast-spell">{{localize "PF2E.CastLabel"}}</button>
{{#unless (and entry.isFlexible (not section.isCantrip))}}
<div class="item-controls">
{{#if entry.isPrepared}}
{{#unless section.isCantrip}}
<a class="item-control item-toggle-prepare" title="{{#if expended}}{{localize "PF2E.RestoreSpellTitle"}}{{else}}{{localize "PF2E.ExpendSpellTitle"}}{{/if}}"><i class="fas fa-fw fa-{{#if expended}}plus{{else}}minus{{/if}}-square"></i></a>
{{/unless}}
<a class="item-control item-unprepare" title="{{localize "PF2E.UnprepareItemTitle"}}"><i class="fas fa-fw fa-trash"></i></a>
{{else}}
{{#if (and entry.isSpontaneous (not section.isCantrip))}}
<a class="item-control toggle-signature-spell" title="{{localize "PF2E.ToggleSignatureSpellTitle"}}">
{{#if signature}}<i class="fas fa-fw fa-star"></i>{{else}}<i class="far fa-fw fa-star"></i>{{/if}}
</a>
{{/if}}
{{#unless virtual}}
<a class="item-control item-edit" title="{{localize "PF2E.EditItemTitle"}}"><i class="fas fa-fw fa-edit"></i></a>
<a class="item-control item-delete" title="{{localize "PF2E.DeleteItemTitle"}}"><i class="fas fa-fw fa-trash"></i></a>
{{/unless}}
{{/if}}
</div>
{{/unless}}
{{/if}}
</li>
{{else}}
<li class="item" data-item-id="{{i}}" data-slot-level="{{section.level}}" data-item-type="spellSlot" data-slot-id="{{i}}" data-entry-id="{{entry.id}}" draggable="true">
<div class="item-name empty"><h4>{{localize "PF2E.SpellSlotEmpty"}}</h4></div>
</li>
{{/with}}
{{/each}}
{{/if}}
{{/each}}
{{#if (and (not entry.levels) @root.options.editable)}}
<li class="spellbook-header spellbook-empty">
<h4>{{localize "PF2E.SpellSlotEmpty"}}</h4>
<a class="item-control spell-create" title="{{localize "PF2E.CreateSpellTitle"}}" data-type="spell" data-location="{{entry.id}}">
<i class="fas fa-fw fa-plus"></i>{{localize "PF2E.AddSpellTitle"}}
</a>
<a class="item-control spell-browse" title="{{localize "PF2E.OpenSpellBrowserTitle"}}" data-type="spell" data-location="{{entry.id}}">
<i class="fas fa-fw fa-search"></i>{{localize "PF2E.OpenSpellBrowserTitle"}}
</a>
</li>
{{/if}}
</ol>
{{/with}}