179 lines
7.1 KiB
Handlebars
179 lines
7.1 KiB
Handlebars
|
{{!--
|
||
|
SPDX-FileCopyrightText: 2022 Johannes Loher
|
||
|
|
||
|
SPDX-License-Identifier: MIT
|
||
|
--}}
|
||
|
|
||
|
<form autocomplete="off">
|
||
|
|
||
|
<!-- Effect Header -->
|
||
|
<header class="sheet-header">
|
||
|
<img class="effect-icon" src="{{ data.icon }}" data-edit="icon">
|
||
|
<h1 class="effect-title">{{ data.label }}</h1>
|
||
|
</header>
|
||
|
|
||
|
<!-- Effect Configuration Tabs -->
|
||
|
<nav class="sheet-tabs tabs">
|
||
|
<a class="item" data-tab="details"><i class="fas fa-book"></i> {{localize "EFFECT.TabDetails"}}</a>
|
||
|
<a class="item" data-tab="duration"><i class="fas fa-clock"></i> {{localize "EFFECT.TabDuration"}}</a>
|
||
|
<a class="item" data-tab="effects"><i class="fas fa-cogs"></i> {{localize "EFFECT.TabEffects"}}</a>
|
||
|
</nav>
|
||
|
|
||
|
<!-- Details Tab -->
|
||
|
<section class="tab" data-tab="details">
|
||
|
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "EFFECT.Label" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<input type="text" name="label" value="{{ data.label }}" />
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "EFFECT.Icon" }}</label>
|
||
|
<div class="form-fields">
|
||
|
{{filePicker target="icon" type="image"}}
|
||
|
<input class="image" type="text" name="icon" placeholder="path/image.png" value="{{data.icon}}" />
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "EFFECT.IconTint" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<input class="color" type="text" name="tint" value="{{data.tint}}" />
|
||
|
<input type="color" value="{{data.tint}}" data-edit="tint" />
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "EFFECT.Disabled" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<input type="checkbox" name="disabled" {{ checked data.disabled }} />
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
{{#if isActorEffect}}
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "EFFECT.Origin" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<input type="text" name="origin" value="{{ data.origin }}" disabled />
|
||
|
</div>
|
||
|
</div>
|
||
|
{{/if}}
|
||
|
|
||
|
{{#if isItemEffect}}
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "EFFECT.Transfer" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<input type="checkbox" name="transfer" {{checked data.transfer}} />
|
||
|
</div>
|
||
|
</div>
|
||
|
{{/if}}
|
||
|
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "DS4.ActiveEffectApplyToItems" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<input type="checkbox" name="flags.ds4.itemEffectConfig.applyToItems" {{checked
|
||
|
data.flags.ds4.itemEffectConfig.applyToItems}} />
|
||
|
</div>
|
||
|
|
||
|
</div>
|
||
|
|
||
|
<div
|
||
|
class="form-group ds4-item-effect-config{{#unless data.flags.ds4.itemEffectConfig.applyToItems}} ds4-hidden{{/unless}}">
|
||
|
<label>{{ localize "DS4.ActiveEffectItemName" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<input type="text" name="flags.ds4.itemEffectConfig.itemName"
|
||
|
value="{{ data.flags.ds4.itemEffectConfig.itemName }}" />
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<div
|
||
|
class="form-group ds4-item-effect-config{{#unless data.flags.ds4.itemEffectConfig.applyToItems}} ds4-hidden{{/unless}}">
|
||
|
<label>{{ localize "DS4.ActiveEffectItemCondition" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<input class="ds4-code-input" type="text" name="flags.ds4.itemEffectConfig.condition"
|
||
|
value="{{ data.flags.ds4.itemEffectConfig.condition }}" />
|
||
|
</div>
|
||
|
</div>
|
||
|
</section>
|
||
|
|
||
|
<!-- Duration Tab -->
|
||
|
<section class="tab" data-tab="duration">
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "EFFECT.DurationSecs" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<input type="number" name="duration.seconds" value="{{ data.duration.seconds }}" />
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "EFFECT.StartTime" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<input type="number" name="duration.startTime" value="{{ data.duration.startTime }}" />
|
||
|
</div>
|
||
|
</div>
|
||
|
<hr />
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "EFFECT.DurationTurns" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<label>{{ localize "COMBAT.Rounds" }}</label>
|
||
|
<input type="number" name="duration.rounds" value="{{ data.duration.rounds }}" />
|
||
|
<label>{{ localize "COMBAT.Turns" }}</label>
|
||
|
<input type="number" name="duration.turns" value="{{ data.duration.turns }}" />
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "EFFECT.Combat" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<input type="text" name="duration.combat" value="{{ data.duration.combat }}" disabled />
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<div class="form-group">
|
||
|
<label>{{ localize "EFFECT.StartTurns" }}</label>
|
||
|
<div class="form-fields">
|
||
|
<label>{{ localize "COMBAT.Round" }}</label>
|
||
|
<input type="number" name="duration.startRound" value="{{ data.duration.startRound }}" />
|
||
|
<label>{{ localize "COMBAT.Turn" }}</label>
|
||
|
<input type="number" name="duration.startTurn" value="{{ data.duration.startTurn }}" />
|
||
|
</div>
|
||
|
</div>
|
||
|
</section>
|
||
|
|
||
|
<!-- Effects Tab -->
|
||
|
<section class="tab" data-tab="effects">
|
||
|
<header class="effect-change effects-header flexrow">
|
||
|
<div class="key">{{ localize "EFFECT.ChangeKey" }}</div>
|
||
|
<div class="mode">{{ localize "EFFECT.ChangeMode" }}</div>
|
||
|
<div class="value">{{ localize "EFFECT.ChangeValue" }}</div>
|
||
|
<div class="effect-controls">
|
||
|
<a class="effect-control" data-action="add"><i class="far fa-plus-square"></i></a>
|
||
|
</div>
|
||
|
</header>
|
||
|
<ol class="changes-list">
|
||
|
{{#each data.changes as |change i|}}
|
||
|
<li class="effect-change flexrow" data-index="{{i}}">
|
||
|
<div class="key">
|
||
|
<input type="text" name="changes.{{i}}.key" value="{{change.key}}" />
|
||
|
</div>
|
||
|
<div class="mode">
|
||
|
<select name="changes.{{i}}.mode" data-dtype="Number">
|
||
|
{{selectOptions ../modes selected=change.mode}}
|
||
|
</select>
|
||
|
</div>
|
||
|
<div class="value">
|
||
|
<input type="text" name="changes.{{i}}.value" value="{{change.value}}" />
|
||
|
</div>
|
||
|
<div class="effect-controls">
|
||
|
<a class="effect-control" data-action="delete"><i class="fas fa-trash"></i></a>
|
||
|
</div>
|
||
|
</li>
|
||
|
{{/each}}
|
||
|
</ol>
|
||
|
</section>
|
||
|
|
||
|
<footer class="sheet-footer">
|
||
|
<button type="submit"><i class="fas fa-save"></i> {{localize submitText}}</button>
|
||
|
</footer>
|
||
|
</form>
|