Beginning of global styling; Full Sidebar restyle

This commit is contained in:
Nathanael Phillips 2020-11-02 12:23:55 -07:00
parent a8c2881a7b
commit f7d7580b3a
53 changed files with 6671 additions and 1811 deletions

View file

@ -0,0 +1,256 @@
<form class="{{cssClass}} flexcol" autocomplete="off">
{{!-- Sheet Header --}}
<header class="sheet-header flexrow">
<img class="profile" src="{{actor.img}}" title="{{actor.name}}" data-edit="img"/>
<section class="header-details flexrow">
<h1 class="charname">
<input name="name" type="text" value="{{actor.name}}" placeholder="{{ localize 'SW5E.Name' }}"/>
</h1>
<aside class="header-exp flexcol">
<div class="charlevel">
<label>{{ localize "SW5E.Level" }} {{data.details.level}}</label>
<span class="levels">{{classLabels}}</span>
</div>
{{#unless disableExperience}}
<div class="experience flexrow">
<input name="data.details.xp.value" type="text" value="{{data.details.xp.value}}" placeholder="0" data-dtype="Number"/>
<span class="sep">/</span>
<span class="max">{{data.details.xp.max}}</span>
</div>
<div class="xpbar">
<span class="bar" style="width: {{data.details.xp.pct}}%"></span>
</div>
{{/unless}}
</aside>
{{!-- Character Summary --}}
<ul class="summary flexrow">
<li>
<input type="text" name="data.details.species" value="{{data.details.species}}" placeholder="{{ localize 'SW5E.Species' }}"/>
</li>
<li>
<input type="text" name="data.details.background" value="{{data.details.background}}" placeholder="{{ localize 'SW5E.Background' }}"/>
</li>
<li>
<input type="text" name="data.details.alignment" value="{{data.details.alignment}}" placeholder="{{ localize 'SW5E.Alignment' }}"/>
</li>
<li class="proficiency">
<span>{{ localize "SW5E.Proficiency" }} {{numberFormat data.attributes.prof decimals=0 sign=true}}</span>
</li>
</ul>
{{!-- Header Attributes --}}
<ul class="attributes flexrow">
<li class="attribute health">
<h4 class="attribute-name box-title">{{ localize "SW5E.Health" }}</h4>
<div class="attribute-value multiple">
<input name="data.attributes.hp.value" type="text" value="{{data.attributes.hp.value}}" placeholder="10" data-dtype="Number"/>
<span class="sep"> / </span>
<input name="data.attributes.hp.max" type="text" value="{{data.attributes.hp.max}}" placeholder="10" data-dtype="Number"/>
</div>
<footer class="attribute-footer">
<input name="data.attributes.hp.temp" type="text" class="temphp" placeholder="+{{ localize 'SW5E.Temp' }}"
value="{{data.attributes.hp.temp}}" data-dtype="Number"/>
<input name="data.attributes.hp.tempmax" type="text" class="temphp" placeholder="+{{ localize 'SW5E.Max' }}"
value="{{data.attributes.hp.tempmax}}" data-dtype="Number"/>
</footer>
</li>
<li class="attribute">
<h4 class="attribute-name box-title">{{ localize "SW5E.HitDice" }}</h4>
<div class="attribute-value multiple">
<label class="hit-dice">{{data.attributes.hd}} <span class="sep"> / </span> {{data.details.level}}</label>
</div>
<footer class="attribute-footer">
<a class="rest short-rest">{{ localize "SW5E.RestS" }}</a>
<a class="rest long-rest">{{ localize "SW5E.RestL" }}</a>
</footer>
</li>
<li class="attribute">
<h4 class="attribute-name box-title">{{ localize "SW5E.ArmorClass" }}</h4>
<div class="attribute-value">
<input name="data.attributes.ac.value" type="number" value="{{data.attributes.ac.value}}" placeholder="10"/>
</div>
<footer class="attribute-footer">
<span class="power-dc">{{localize "SW5E.PowerDC"}} {{data.attributes.powerdc}}</span>
</footer>
</li>
<li class="attribute">
<h4 class="attribute-name box-title">{{ localize "SW5E.Speed" }}</h4>
<div class="attribute-value">
<input name="data.attributes.speed.value" type="text"
value="{{data.attributes.speed.value}}" placeholder="0"/>
</div>
<footer class="attribute-footer">
<input type="text" class="speed" name="data.attributes.speed.special"
value="{{data.attributes.speed.special}}" placeholder="{{ localize 'SW5E.SpeedSpecial' }}"/>
</footer>
</li>
<li class="attribute initiative">
<h4 class="attribute-name box-title">{{ localize "SW5E.Initiative" }}</h4>
<div class="attribute-value">
<span>{{numberFormat data.attributes.init.total decimals=0 sign=true}}</span>
</div>
<footer class="attribute-footer">
<span>{{ localize "SW5E.Modifier" }}</span>
<input name="data.attributes.init.value" type="number" placeholder="0"
value="{{numberFormat data.attributes.init.value decimals=0 sign=true}}"/>
</footer>
</li>
</ul>
</section>
</header>
{{!-- NPC Sheet Navigation --}}
<nav class="sheet-navigation tabs" data-group="primary">
<a class="item active" data-tab="attributes">{{ localize "SW5E.Attributes" }}</a>
<a class="item" data-tab="inventory">{{ localize "SW5E.Inventory" }}</a>
<a class="item" data-tab="features">{{ localize "SW5E.Features" }}</a>
<a class="item" data-tab="powerbook">{{ localize "SW5E.Powerbook" }}</a>
<a class="item" data-tab="effects">{{ localize "SW5E.Effects" }}</a>
<a class="item" data-tab="biography">{{ localize "SW5E.Biography" }}</a>
</nav>
{{!-- NPC Sheet Body --}}
<section class="sheet-body">
<div class="tab attributes flexrow" data-group="primary" data-tab="attributes">
{{!-- Ability Scores --}}
<ul class="ability-scores flexrow">
{{#each data.abilities as |ability id|}}
<li class="ability {{#if ability.proficient}}proficient{{/if}}" data-ability="{{id}}">
<h4 class="ability-name box-title rollable">{{ability.label}}</h4>
<input class="ability-score" name="data.abilities.{{id}}.value" type="number" value="{{ability.value}}" placeholder="10"/>
<div class="ability-modifiers flexrow">
<span class="ability-mod" title="Modifier">{{numberFormat ability.mod decimals=0 sign=true}}</span>
<input type="hidden" name="data.abilities.{{id}}.proficient" value="{{ability.proficient}}" data-dtype="Number"/>
<a class="proficiency-toggle ability-proficiency" title="{{ localize 'SW5E.Proficiency' }}">{{{ability.icon}}}</a>
<span class="ability-save" title="Saving Throw">{{numberFormat ability.save decimals=0 sign=true}}</span>
</div>
</li>
{{/each}}
</ul>
{{!-- Skills --}}
<ul class="skills-list">
{{#each data.skills as |skill s|}}
<li class="skill flexrow {{#if skill.value}}proficient{{/if}}" data-skill="{{s}}">
<input type="hidden" name="data.skills.{{s}}.value" value="{{skill.value}}" data-dtype="Number"/>
<a class="proficiency-toggle skill-proficiency" title="{{skill.hover}}">{{{skill.icon}}}</a>
<h4 class="skill-name rollable">{{skill.label}}</h4>
<span class="skill-ability">{{skill.ability}}</span>
<span class="skill-mod">{{numberFormat skill.total decimals=0 sign=true}}</span>
<span class="skill-passive">({{skill.passive}})</span>
</li>
{{/each}}
</ul>
<section class="center-pane flexcol">
{{!-- Body Attributes --}}
<ul class="attributes flexrow">
{{#each resources as |res|}}
<li class="attribute resource">
<h4 class="attribute-name box-title">
<input name="data.resources.{{res.name}}.label" type="text" value="{{res.label}}"
placeholder="{{res.placeholder}}" />
</h4>
<div class="attribute-value">
<label class="recharge checkbox">
{{ localize "SW5E.AbbreviationSR" }} <input name="data.resources.{{res.name}}.sr" type="checkbox" {{checked res.sr}}/>
</label>
<input name="data.resources.{{res.name}}.value" type="number" value="{{res.value}}" placeholder="0"/>
<span class="sep"> / </span>
<input name="data.resources.{{res.name}}.max" type="number" value="{{res.max}}" placeholder="0"/>
<label class="recharge checkbox">
{{ localize "SW5E.AbbreviationLR" }} <input name="data.resources.{{res.name}}.lr" type="checkbox" {{checked res.lr}}/>
</label>
</div>
</li>
{{/each}}
</ul>
{{!-- Counters --}}
<div class="counters">
<div class="counter flexrow death-saves">
<h4 class="death-save rollable">{{ localize "SW5E.DeathSave" }}</h4>
<div class="counter-value">
<i class="fas fa-check"></i>
<input name="data.attributes.death.success" type="number" placeholder="0"
value="{{data.attributes.death.success}}"/>
<i class="fas fa-times"></i>
<input name="data.attributes.death.failure" type="number" placeholder="0"
value="{{data.attributes.death.failure}}"/>
</div>
</div>
<div class="counter flexrow exhaustion">
<h4>{{ localize "SW5E.Exhaustion" }}</h4>
<div class="counter-value">
<input name="data.attributes.exhaustion" type="number" placeholder="0"
value="{{data.attributes.exhaustion}}" />
</div>
</div>
<div class="counter flexrow inspiration">
<h4>{{ localize "SW5E.Inspiration" }}</h4>
<div class="counter-value">
<input type="checkbox" name="data.attributes.inspiration" data-dtype="Boolean"
{{checked data.attributes.inspiration}}/>
</div>
</div>
</div>
{{!-- Traits --}}
{{> "systems/sw5e/templates/actors/oldActor/parts/actor-traits.html"}}
</section>
</div>
{{!-- Inventory Tab --}}
<div class="tab inventory flexcol" data-group="primary" data-tab="inventory">
{{> "systems/sw5e/templates/actors/oldActor/parts/actor-inventory.html" sections=inventory}}
</div>
{{!-- Features Tab --}}
<div class="tab features flexcol" data-group="primary" data-tab="features">
{{> "systems/sw5e/templates/actors/oldActor/parts/actor-features.html" sections=features}}
</div>
{{!-- Powerbook Tab --}}
<div class="tab powerbook flexcol" data-group="primary" data-tab="powerbook">
{{> "systems/sw5e/templates/actors/oldActor/parts/actor-powerbook.html"}}
</div>
{{!-- Effects Tab --}}
<div class="tab effects flexcol" data-group="primary" data-tab="effects">
{{> "systems/sw5e/templates/actors/oldActor/parts/actor-effects.html"}}
</div>
{{!-- Biography Tab --}}
<div class="tab flexrow" data-group="primary" data-tab="biography">
<div class="characteristics flexcol">
<label>{{ localize "SW5E.Appearance" }}</label>
<textarea name="data.details.appearance">{{data.details.appearance}}</textarea>
<label>{{ localize "SW5E.PersonalityTraits" }}</label>
<textarea name="data.details.trait">{{data.details.trait}}</textarea>
<label>{{ localize "SW5E.Ideals" }}</label>
<textarea name="data.details.ideal">{{data.details.ideal}}</textarea>
<label>{{ localize "SW5E.Bonds" }}</label>
<textarea name="data.details.bond">{{data.details.bond}}</textarea>
<label>{{ localize "SW5E.Flaws" }}</label>
<textarea name="data.details.flaw">{{data.details.flaw}}</textarea>
</div>
<div class="biography">
{{editor content=data.details.biography.value target="data.details.biography.value" button=true owner=owner editable=editable}}
</div>
</div>
</section>
</form>

View file

@ -0,0 +1,20 @@
<form class="{{cssClass}} flexcol limited" autocomplete="off">
{{!-- Sheet Header --}}
<header class="sheet-header flexrow">
<img class="profile" src="{{actor.img}}" title="{{actor.name}}" data-edit="img"/>
<section class="header-details flexrow">
<h1 class="charname">
<input name="name" type="text" value="{{actor.name}}" placeholder="{{ localize 'SW5E.Name' }}"/>
</h1>
</section>
</header>
{{!-- Sheet Body --}}
<section class="sheet-body">
<div class="tab biography">
{{editor content=data.details.biography.value target="data.details.biography.value" button=true owner=owner editable=editable}}
</div>
</section>
</form>

View file

@ -0,0 +1,171 @@
<form class="{{cssClass}} flexcol" autocomplete="off">
{{!-- NPC Sheet Header --}}
<header class="sheet-header flexrow">
<img class="profile" src="{{actor.img}}" title="{{actor.name}}" data-edit="img"/>
<section class="header-details flexrow">
<h1 class="charname">
<input name="name" type="text" value="{{actor.name}}" placeholder="{{ localize 'SW5E.Name' }}"/>
</h1>
<aside class="header-exp flexcol">
<div class="cr">
<label>{{ localize "SW5E.AbbreviationCR" }}</label>
<input name="data.details.cr" type="text" value="{{labels.cr}}" placeholder="1"/>
</div>
<div class="experience">
<span>{{data.details.xp.value}} XP</span>
</div>
</aside>
{{!-- Character Summary --}}
<ul class="summary flexrow">
<li>
<span>{{lookup config.actorSizes data.traits.size}}</span>
</li>
<li>
<input type="text" name="data.details.alignment" value="{{data.details.alignment}}" placeholder="{{ localize 'SW5E.Alignment' }}"/>
</li>
<li>
<input type="text" name="data.details.type" value="{{data.details.type}}" placeholder="{{ localize 'SW5E.Type' }}"/>
</li>
<li>
<input type="text" name="data.details.source" value="{{data.details.source}}" placeholder="{{ localize 'SW5E.Source' }}"/>
</li>
</ul>
{{!-- Header Attributes --}}
<ul class="attributes flexrow">
<li class="attribute health">
<h4 class="attribute-name box-title rollable">{{ localize "SW5E.Health" }}</h4>
<div class="attribute-value multiple">
<input name="data.attributes.hp.value" type="text" value="{{data.attributes.hp.value}}" placeholder="10" data-dtype="Number"/>
<span class="sep"> / </span>
<input name="data.attributes.hp.max" type="text" value="{{data.attributes.hp.max}}" placeholder="10" data-dtype="Number"/>
</div>
<footer class="attribute-footer">
<input name="data.attributes.hp.formula" class="hpformula" type="text" placeholder="{{ localize 'SW5E.HealthFormula' }}"
value="{{data.attributes.hp.formula}}"/>
</footer>
</li>
<li class="attribute">
<h4 class="attribute-name box-title">{{ localize "SW5E.ArmorClass" }}</h4>
<div class="attribute-value">
<input name="data.attributes.ac.value" type="number" value="{{data.attributes.ac.value}}" placeholder="10"/>
</div>
<footer class="attribute-footer">
<span>{{ localize "SW5E.Proficiency" }}</span>
<span>{{numberFormat data.attributes.prof decimals=0 sign=true}}</span>
</footer>
</li>
<li class="attribute">
<h4 class="attribute-name box-title">{{ localize "SW5E.Speed" }}</h4>
<div class="attribute-value">
<input name="data.attributes.speed.value" type="text"
value="{{data.attributes.speed.value}}" placeholder="0"/>
</div>
<footer class="attribute-footer">
<input type="text" class="speed" name="data.attributes.speed.special"
value="{{data.attributes.speed.special}}" placeholder="{{ localize 'SW5E.SpeedSpecial' }}"/>
</footer>
</li>
</ul>
</section>
</header>
{{!-- NPC Sheet Navigation --}}
<nav class="sheet-navigation tabs" data-group="primary">
<a class="item active" data-tab="attributes">{{ localize "SW5E.Attributes" }}</a>
<a class="item" data-tab="features">{{ localize "SW5E.Features" }}</a>
<a class="item" data-tab="powerbook">{{ localize "SW5E.Powerbook" }}</a>
<a class="item" data-tab="biography">{{ localize "SW5E.Biography" }}</a>
</nav>
{{!-- NPC Sheet Body --}}
<section class="sheet-body">
<div class="tab attributes flexrow" data-group="primary" data-tab="attributes">
{{!-- Ability Scores --}}
<ul class="ability-scores flexrow">
{{#each data.abilities as |ability id|}}
<li class="ability {{#if ability.proficient}}proficient{{/if}}" data-ability="{{id}}">
<h4 class="ability-name box-title rollable">{{ability.label}}</h4>
<input class="ability-score" name="data.abilities.{{id}}.value" type="number" value="{{ability.value}}" placeholder="10"/>
<div class="ability-modifiers flexrow">
<span class="ability-mod" title="Modifier">{{numberFormat ability.mod decimals=0 sign=true}}</span>
<input type="hidden" name="data.abilities.{{id}}.proficient" value="{{ability.proficient}}" data-dtype="Number"/>
<a class="proficiency-toggle ability-proficiency" title="{{ localize 'SW5E.Proficiency' }}">{{{ability.icon}}}</a>
<span class="ability-save" title="Saving Throw">{{numberFormat ability.save decimals=0 sign=true}}</span>
</div>
</li>
{{/each}}
</ul>
{{!-- Skills --}}
<ul class="skills-list">
{{#each data.skills as |skill s|}}
<li class="skill flexrow {{#if skill.value}}proficient{{/if}}" data-skill="{{s}}">
<input type="hidden" name="data.skills.{{s}}.value" value="{{skill.value}}" data-dtype="Number"/>
<a class="proficiency-toggle skill-proficiency" title="{{skill.hover}}">{{{skill.icon}}}</a>
<h4 class="skill-name rollable">{{skill.label}}</h4>
<span class="skill-ability">{{skill.ability}}</span>
<span class="skill-mod">{{numberFormat skill.total decimals=0 sign=true}}</span>
<span class="skill-passive">({{skill.passive}})</span>
</li>
{{/each}}
</ul>
<section class="center-pane flexcol">
{{!-- Legendary Actions --}}
<div class="counters">
<div class="counter flexrow legendary">
<h4>{{ localize "SW5E.LegAct" }}</h4>
<div class="counter-value">
<input name="data.resources.legact.value" type="number" value="{{data.resources.legact.value}}" placeholder="0"/>
<span class="sep">/</span>
<input name="data.resources.legact.max" type="number" value="{{data.resources.legact.max}}" placeholder="0"/>
</div>
</div>
<div class="counter flexrow legendary">
<h4>{{ localize "SW5E.LegRes" }}</h4>
<div class="counter-value">
<input name="data.resources.legres.value" type="number" value="{{data.resources.legres.value}}" placeholder="0"/>
<span class="sep">/</span>
<input name="data.resources.legres.max" type="number" value="{{data.resources.legres.max}}" placeholder="0"/>
</div>
</div>
<div class="counter flexrow lair">
<h4>{{ localize "SW5E.LairAct" }}</h4>
<div class="counter-value">
<input name="data.resources.lair.value" type="checkbox" value="{{data.resources.lair.value}}"
data-dtype="Boolean" {{checked data.resources.lair.value}}/>
<input name="data.resources.lair.initiative" type="number" value="{{data.resources.lair.initiative}}" placeholder="20"/>
</div>
</div>
</div>
{{!-- Traits --}}
{{> "systems/sw5e/templates/actors/parts/actor-traits.html"}}
</section>
</div>
{{!-- Features Tab --}}
<div class="tab features flexcol" data-group="primary" data-tab="features">
{{> "systems/sw5e/templates/actors/parts/actor-features.html" sections=features}}
</div>
{{!-- Powerbook Tab --}}
<div class="tab powerbook flexcol" data-group="primary" data-tab="powerbook">
{{> "systems/sw5e/templates/actors/parts/actor-powerbook.html"}}
</div>
{{!-- Biography Tab --}}
<div class="tab biography flexcol" data-group="primary" data-tab="biography">
{{editor content=data.details.biography.value target="data.details.biography.value" button=true owner=owner editable=editable}}
</div>
</section>
</form>

View file

@ -0,0 +1,28 @@
<ol class="inventory-list">
{{#each effects as |section sid|}}
<li class="inventory-header flexrow">
<h3 class="effect-name flexrow">{{localize section.label}}</h3>
<div class="effect-source">Source</div>
<div class="effect-source">Duration</div>
<div class="effect-controls"></div>
</li>
<ol class="effects-list item-list">
{{#each section.effects as |effect|}}
<li class="effect flexrow" data-effect-id="{{effect.id}}">
<div class="effect-name flexrow">
<img class="effect-icon" src="{{effect.data.icon}}"/>
<h4>{{effect.data.label}}</h4>
</div>
<div class="effect-source">{{effect.sourceName}}</div>
<div class="effect-duration">{{effect.duration.label}}</div>
<div class="effect-controls">
<a class="effect-control" data-action="toggle"><i class="fas fa-circle-notch"></i></a>
<a class="effect-control" data-action="edit"><i class="fas fa-edit"></i></a>
<a class="effect-control" data-action="delete"><i class="fas fa-trash"></i></a>
</div>
</li>
{{/each}}
</ol>
{{/each}}
</ol>

View file

@ -0,0 +1,122 @@
{{#unless isVehicle}}
<div class="inventory-filters flexrow">
<ul class="filter-list flexrow" data-filter="features">
<li class="filter-item" data-filter="action">{{localize "SW5E.Action"}}</li>
<li class="filter-item" data-filter="bonus">{{localize "SW5E.BonusAction"}}</li>
<li class="filter-item" data-filter="reaction">{{localize "SW5E.Reaction"}}</li>
</ul>
</div>
{{/unless}}
<ol class="inventory-list">
{{#each sections as |section sid|}}
<li class="inventory-header flexrow">
<h3 class="item-name flexrow">{{localize section.label}}</h3>
{{#if section.hasActions}}
<div class="item-detail item-uses">{{localize "SW5E.Uses"}}</div>
<div class="item-detail item-action">{{localize "SW5E.Usage"}}</div>
{{/if}}
{{#if section.columns}}
{{#each section.columns}}
<div class="item-detail {{css}}">{{label}}</div>
{{/each}}
{{/if}}
{{#if ../owner}}
<div class="item-controls">
<a class="item-control item-create" title="{{localize 'SW5E.FeatureAdd'}}" {{#each section.dataset as |v k|}}data-{{k}}="{{v}}"{{/each}}>
<i class="fas fa-plus"></i> {{localize "SW5E.Add"}}
</a>
</div>
{{/if}}
</li>
<ol class="item-list">
{{#each section.items as |item iid|}}
<li class="item flexrow {{#if isDepleted}}depleted{{/if}}" data-item-id="{{item._id}}">
<div class="item-name flexrow rollable">
<div class="item-image" style="background-image: url('{{item.img}}')"></div>
<h4>{{item.name}}</h4>
</div>
{{#if section.hasActions}}
<div class="item-detail item-uses">
{{#if item.isOnCooldown}}
<a class="item-recharge rollable">{{item.labels.recharge}}</a>
{{else if item.data.recharge.value}}
{{localize "SW5E.Charged"}}
{{else if item.hasUses}}
<input type="text" value="{{item.data.uses.value}}" placeholder="0"/>/ {{item.data.uses.max}}
{{/if}}
</div>
<div class="item-detail item-action">
{{#if item.data.activation.type }}
{{item.labels.activation}}
{{/if}}
</div>
{{else if section.isSpecies}}
<div class="item-detail player-species">
</div>
{{else if section.isArchetype}}
<div class="item-detail player-archetype">
{{item.data.name}}
</div>
{{else if section.isBackground}}
<div class="item-detail player-background">
</div>
{{else if section.isClassfeatures}}
<div class="item-detail player-classfeatures">
{{item.data.name}}
</div>
{{else if section.isClass}}
<div class="item-detail player-class">
{{item.data.subclass}}
</div>
<div class="item-detail item-action">
Level {{item.data.levels}}
</div>
{{/if}}
{{#if section.columns}}
{{#each section.columns}}
<div class="item-detail {{css}}">
{{#with (getProperty item property)}}
{{#if ../editable}}
<input type="text" value="{{this}}" placeholder="&mdash;"
data-dtype="{{../editable}}">
{{else}}
{{this}}
{{/if}}
{{/with}}
</div>
{{/each}}
{{/if}}
{{#if ../../owner}}
<div class="item-controls">
{{#if section.crewable}}
<a class="item-control item-toggle {{item.toggleClass}}"
title="{{item.toggleTitle}}">
<i class="fas fa-sun"></i>
</a>
{{/if}}
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
{{/if}}
</li>
{{/each}}
</ol>
{{/each}}
</ol>

View file

@ -0,0 +1,138 @@
<div class="inventory-filters flexrow">
{{#unless isNPC}}
<ol class="currency flexrow">
<h3>
{{localize "SW5E.Currency"}}
<a class="currency-convert" title="Convert Currency"><i class="fas fa-coins"></i></a>
</h3>
{{#each data.currency as |v k|}}
<label class="denomination {{k}}">{{ lookup ../config.currencies k }}</label>
<input type="text" name="data.currency.{{k}}" value="{{v}}" data-dtype="Number"/>
{{/each}}
</ol>
{{/unless}}
{{#unless isVehicle}}
<ul class="filter-list flexrow" data-filter="inventory">
<li class="filter-item" data-filter="action">{{localize "SW5E.Action"}}</li>
<li class="filter-item" data-filter="bonus">{{localize "SW5E.BonusAction"}}</li>
<li class="filter-item" data-filter="reaction">{{localize "SW5E.Reaction"}}</li>
<li class="filter-item" data-filter="equipped">{{localize "SW5E.Equipped"}}</li>
</ul>
{{/unless}}
</div>
<ol class="inventory-list">
{{#each sections as |section sid|}}
<li class="inventory-header flexrow">
<h3 class="item-name flexrow">{{localize section.label}}</h3>
{{#if section.columns}}
{{#each section.columns}}
<div class="item-detail {{css}}">{{label}}</div>
{{/each}}
{{else}}
{{#if ../isCharacter}}
<div class="item-detail item-weight">{{localize "SW5E.Weight"}}</div>
{{/if}}
<div class="item-detail item-uses">{{localize "SW5E.Charges"}}</div>
<div class="item-detail item-action">{{localize "SW5E.Usage"}}</div>
{{/if}}
{{#if ../owner}}
<div class="item-controls">
<a class="item-control item-create" title='{{localize "SW5E.ItemCreate"}}'
{{#each section.dataset as |v k|}}data-{{k}}="{{v}}"{{/each}}>
<i class="fas fa-plus"></i> {{localize "SW5E.Add"}}
</a>
</div>
{{/if}}
</li>
<ol class="item-list">
{{#each section.items as |item iid|}}
<li class="item flexrow {{section.css}}"
data-item-id="{{#if section.editableName}}{{iid}}{{else}}{{item._id}}{{/if}}">
<div class="item-name flexrow rollable">
{{#if section.editableName}}
<input type="text" value="{{item.name}}">
{{else}}
<div class="item-image" style="background-image: url('{{item.img}}')"></div>
<h4>
{{item.name~}}
{{~#if item.isStack}} ({{item.data.quantity}}){{/if}}
{{~#if item.data.attuned}} <i class="fas fa-sun attuned" title={{localize "SW5E.Attuned"}}></i>{{/if}}
</h4>
{{/if}}
</div>
{{#if section.columns}}
{{#each section.columns}}
<div class="item-detail {{css}}">
{{#with (getProperty item property)}}
{{#if ../editable}}
<input type="text" value="{{this}}" placeholder="&mdash;"
data-dtype="{{../editable}}" data-property="{{../property}}">
{{else}}
{{this}}
{{/if}}
{{/with}}
</div>
{{/each}}
{{else}}
{{#if ../../isCharacter}}
<div class="item-detail item-weight">
{{#if item.totalWeight}}
<div class="item-detail">
{{ item.totalWeight }} {{localize "SW5E.AbbreviationLbs"}}
</div>
{{/if}}
</div>
{{/if}}
<div class="item-detail item-uses">
{{#if item.hasUses }}
<input type="text" value="{{item.data.uses.value}}" placeholder="0"/>
/ {{item.data.uses.max}}
{{/if}}
</div>
<div class="item-detail item-action">
{{#if item.data.activation.type }}
{{item.labels.activation}}
{{/if}}
</div>
{{/if}}
{{#if ../../owner}}
<div class="item-controls">
{{#unless @root.isVehicle}}
<a class="item-control item-toggle {{item.toggleClass}}" title='{{item.toggleTitle}}'><i class="fas fa-shield-alt"></i></a>
{{/unless}}
{{#unless section.editableName}}
<a class="item-control item-edit" title='{{localize "SW5E.ItemEdit"}}'><i class="fas fa-edit"></i></a>
{{/unless}}
<a class="item-control item-delete" title='{{localize "SW5E.ItemDelete"}}'><i class="fas fa-trash"></i></a>
</div>
{{/if}}
</li>
{{/each}}
</ol>
{{/each}}
</ol>
{{#unless isNPC}}
{{#with data.attributes.encumbrance}}
<div class="encumbrance {{#if encumbered}}encumbered{{/if}}">
<span class="encumbrance-bar" style="width:{{pct}}%"></span>
<span class="encumbrance-label">{{value}} / {{max}}</span>
<i class="encumbrance-breakpoint encumbrance-33 arrow-up"></i>
<i class="encumbrance-breakpoint encumbrance-33 arrow-down"></i>
<i class="encumbrance-breakpoint encumbrance-66 arrow-up"></i>
<i class="encumbrance-breakpoint encumbrance-66 arrow-down"></i>
</div>
{{/with}}
{{/unless}}

View file

@ -0,0 +1,122 @@
<div class="inventory-filters powerbook-filters flexrow">
<div class="form-group powercasting-ability">
{{#unless isNPC}}
<label>{{localize "SW5E.PowerAbility"}}</label>
{{else}}
<label>{{localize "SW5E.Level"}}</label>
<input class="powercasting-level" type="text" name="data.details.powerLevel"
value="{{data.details.powerLevel}}" data-dtype="Number" placeholder="0"/>
{{/unless}}
<select name="data.attributes.powercasting" data-type="String">
{{#select data.attributes.powercasting}}
<option value="">{{localize "SW5E.None"}}</option>
{{#each data.abilities as |abl a|}}
<option value="{{a}}">{{abl.label}}</option>
{{/each}}
{{/select}}
</select>
</div>
<ul class="filter-list flexrow" data-filter="powerbook">
<li class="filter-item" data-filter="action">{{localize "SW5E.Action"}}</li>
<li class="filter-item" data-filter="bonus">{{localize "SW5E.BonusAction"}}</li>
<li class="filter-item" data-filter="reaction">{{localize "SW5E.Reaction"}}</li>
<li class="filter-item" data-filter="concentration">{{localize "SW5E.AbbreviationConc"}}</li>
<li class="filter-item" data-filter="ritual">{{localize "SW5E.Ritual"}}</li>
<li class="filter-item" data-filter="prepared">{{localize "SW5E.Prepared"}}{{#if preparedPowers}} ({{preparedPowers}}){{/if}}</li>
</ul>
</div>
<ol class="inventory-list">
{{#each powerbook as |section|}}
<li class="item flexrow inventory-header powerbook-header">
<div class="item-name flexrow">
<h3>{{section.label}}</h3>
</div>
<div class="power-slots">
{{#if section.usesSlots}}
<input type="text" name="data.powers.{{section.prop}}.value" value="{{section.uses}}" placeholder="0"
data-dtype="Number"/>
<span class="sep"> / </span>
<span class="power-max" data-level="{{section.prop}}" data-slots="{{section.slots}}">
{{{section.slots}}}
{{#if ../editable}}
<a class="slot-max-override" title="{{localize 'SW5E.PowerProgOverride'}}">
<i class="fas fa-edit"></i>
</a>
{{/if}}
{{ else }}
<span>{{{section.uses}}}</span>
<span class="sep"> / </span>
<span class="power-max">{{{section.slots}}}</span>
{{/if}}
</div>
<div class="power-school">{{localize "SW5E.PowerSchool"}}</div>
<div class="power-action">{{localize "SW5E.PowerUsage"}}</div>
<div class="power-target">{{localize "SW5E.PowerTarget"}}</div>
<div class="item-controls">
{{#if section.canCreate}}
<a class="item-control item-create" title="{{localize 'SW5E.PowerCreate'}}" {{#each section.dataset as |v k|}}data-{{k}}="{{v}}"{{/each}}>
<i class="fas fa-plus"></i> {{localize "SW5E.Add"}}
</a>
{{/if}}
</div>
</li>
<ol class="item-list">
{{#each section.powers as |item i|}}
<li class="item flexrow" data-item-id="{{item._id}}">
<div class="item-name flexrow rollable">
<div class="item-image" style="background-image: url('{{item.img}}')"></div>
<h4>{{item.name}}</h4>
{{#if item.data.uses.per }}
<div class="item-detail power-uses">Uses {{item.data.uses.value}} / {{item.data.uses.max}}</div>
{{/if}}
</div>
<div class="power-comps">
{{#each labels.components}}
<span class="power-component {{this}}">{{this}}</span>
{{/each}}
</div>
<div class="power-school">{{labels.school}}</div>
<div class="power-action">{{labels.activation}}</div>
<div class="power-target" title="{{localize 'SW5E.Range'}}: {{labels.range}}">
{{#if labels.target}}
{{labels.target}}
{{else}}None
{{/if}}
</div>
{{#if ../../owner}}
<div class="item-controls">
{{#if section.canPrepare}}
<a class="item-control item-toggle {{item.toggleClass}}" title="{{item.toggleTitle}}"><i class="fas fa-sun"></i></a>
{{/if}}
<a class="item-control item-edit" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
{{/if}}
</li>
{{/each}}
</ol>
{{else}}
{{#if owner}}
{{#if filters.powerbook.size}}
<li class="item flexrow"><p class="notes">{{localize "SW5E.FilterNoPowers"}}</p></li>
{{else}}
<li class="item flexrow inventory-header powerbook-header powerbook-empty">
<div class="item-controls">
<a class="item-control item-create" title="{{localize 'SW5E.PowerCreate'}}" data-type="power"
data-level="{{lvl}}"><i class="fas fa-plus"></i> {{localize "SW5E.PowerAdd"}}</a>
</div>
</li>
<li class="item flexrow"><p class="notes">{{localize "SW5E.NoPowerLevels"}}</p></li>
{{/if}}
{{/if}}
{{/each}}
</ol>

View file

@ -0,0 +1,124 @@
<div class="traits">
<div class="form-group">
<label>{{localize "SW5E.Size"}}</label>
<select class="actor-size" name="data.traits.size">
{{#select data.traits.size}}
{{#each config.actorSizes as |label size|}}
<option value="{{size}}">{{label}}</option>
{{/each}}
{{/select}}
</select>
</div>
{{#unless isVehicle}}
<div class="form-group {{#unless data.traits.senses}}inactive{{/unless}}">
<label>{{localize "SW5E.Senses"}}</label>
<input type="text" name="data.traits.senses" value="{{data.traits.senses}}" placeholder="{{ localize 'SW5E.None' }}"/>
</div>
<div class="form-group {{data.traits.languages.cssClass}}">
<label>{{localize "SW5E.Languages"}}</label>
<a class="trait-selector" data-options="languages" data-target="data.traits.languages">
<i class="fas fa-edit"></i>
</a>
<ul class="traits-list">
{{#each data.traits.languages.selected as |v k|}}
<li class="tag {{k}}">{{v}}</li>
{{/each}}
</ul>
</div>
{{/unless}}
<div class="form-group {{data.traits.di.cssClass}}">
<label>{{localize "SW5E.DamImm"}}</label>
<a class="trait-selector" data-options="damageResistanceTypes" data-target="data.traits.di">
<i class="fas fa-edit"></i>
</a>
<ul class="traits-list">
{{#each data.traits.di.selected as |v k|}}
<li class="tag {{k}}">{{v}}</li>
{{/each}}
</ul>
</div>
<div class="form-group {{data.traits.dr.cssClass}}">
<label>{{localize "SW5E.DamRes"}}</label>
<a class="trait-selector" data-options="damageResistanceTypes" data-target="data.traits.dr">
<i class="fas fa-edit"></i>
</a>
<ul class="traits-list">
{{#each data.traits.dr.selected as |v k|}}
<li class="tag {{k}}">{{v}}</li>
{{/each}}
</ul>
</div>
<div class="form-group {{data.traits.dv.cssClass}}">
<label>{{localize "SW5E.DamVuln"}}</label>
<a class="trait-selector" data-options="damageResistanceTypes" data-target="data.traits.dv">
<i class="fas fa-edit"></i>
</a>
<ul class="traits-list">
{{#each data.traits.dv.selected as |v k|}}
<li class="tag {{k}}">{{v}}</li>
{{/each}}
</ul>
</div>
<div class="form-group {{data.traits.ci.cssClass}}">
<label>{{localize "SW5E.ConImm"}}</label>
<a class="trait-selector" data-options="conditionTypes" data-target="data.traits.ci">
<i class="fas fa-edit"></i>
</a>
<ul class="traits-list">
{{#each data.traits.ci.selected as |v k|}}
<li class="tag {{k}}">{{v}}</li>
{{/each}}
</ul>
</div>
{{#if isCharacter}}
<div class="form-group {{data.traits.weaponProf.cssClass}}">
<label>{{localize "SW5E.TraitWeaponProf"}}</label>
<a class="trait-selector" data-options="weaponProficiencies" data-target="data.traits.weaponProf">
<i class="fas fa-edit"></i>
</a>
<ul class="traits-list">
{{#each data.traits.weaponProf.selected as |v k|}}
<li class="tag {{k}}">{{v}}</li>
{{/each}}
</ul>
</div>
<div class="form-group {{data.traits.armorProf.cssClass}}">
<label>{{localize "SW5E.TraitArmorProf"}}</label>
<a class="trait-selector" data-options="armorProficiencies" data-target="data.traits.armorProf">
<i class="fas fa-edit"></i>
</a>
<ul class="traits-list">
{{#each data.traits.armorProf.selected as |v k|}}
<li class="tag {{k}}">{{v}}</li>
{{/each}}
</ul>
</div>
<div class="form-group {{data.traits.toolProf.cssClass}}">
<label>{{localize "SW5E.TraitToolProf"}}</label>
<a class="trait-selector" data-options="toolProficiencies" data-target="data.traits.toolProf">
<i class="fas fa-edit"></i>
</a>
<ul class="traits-list">
{{#each data.traits.toolProf.selected as |v k|}}
<li class="tag {{k}}">{{v}}</li>
{{/each}}
</ul>
</div>
{{/if}}
{{#unless isVehicle}}
<div class="form-group ">
<label>{{localize "SW5E.SpecialTraits"}}</label>
<a class="configure-flags"><i class="fas fa-cog"></i></a>
</div>
{{/unless}}
</div>

View file

@ -0,0 +1,159 @@
<form class="{{cssClass}} flexcol" autocomplete="off">
<header class="sheet-header flexrow">
<img class="profile" src="{{actor.img}}" title="{{actor.name}}" alt="{{actor.name}}"
data-edit="img">
<section class="header-details flexrow">
<h1 class="charnam">
<input name="name" type="text" value="{{actor.name}}"
placeholder="{{localize 'SW5E.Name'}}">
</h1>
<ul class="summary flexrow">
<li>
<span>{{lookup config.actorSizes data.traits.size}}</span>
</li>
<li>
<span>{{localize 'SW5E.Vehicle'}}</span>
</li>
<li>
<input type="text" name="data.traits.dimensions"
value="{{data.traits.dimensions}}"
placeholder="{{localize 'SW5E.Dimensions'}}">
</li>
<li>
<input type="text" name="data.details.source"
value="{{data.details.source}}"
placeholder="{{localize 'SW5E.Source'}}">
</li>
</ul>
<ul class="attributes flexrow">
<li class="attribute health">
<h4 class="attribute-name box-title">{{localize 'SW5E.Health'}}</h4>
<div class="attribute-value multiple">
<input name="data.attributes.hp.value" type="text" placeholder="&mdash;"
value="{{data.attributes.hp.value}}" data-dtype="Number">
<span class="sep"> &sol; </span>
<input name="data.attributes.hp.max" type="text" placeholder="&mdash;"
value="{{data.attributes.hp.max}}" data-dtype="Number">
</div>
<footer class="attribute-footer">
<input name="data.attributes.hp.dt" type="text" class="temphp"
placeholder="{{localize 'SW5E.Threshold'}}"
value="{{data.attributes.hp.dt}}" data-dtype="Number">
<input name="data.attributes.hp.mt" type="text" class="temphp"
placeholder="{{localize 'SW5E.VehicleMishap'}}"
value="{{data.attributes.hp.mt}}" data-dtype="Number">
</footer>
</li>
<li class="attribute">
<h4 class="attribute-name box-title">{{localize 'SW5E.ArmorClass'}}</h4>
<div class="attribute-value">
<input name="data.attributes.ac.value" type="text" placeholder="&mdash;"
value="{{data.attributes.ac.value}}" data-dtype="Number">
</div>
<footer class="attribute-footer">
<input type="text" name="data.attributes.ac.motionless"
placeholder="&mdash;" value="{{data.attributes.ac.motionless}}">
</footer>
</li>
<li class="attribute">
<h4 class="attribute-name box-title">{{localize 'SW5E.Speed'}}</h4>
<div class="attribute-value">
<input name="data.attributes.speed.value" type="text" placeholder="&mdash;"
value="{{data.attributes.speed.value}}">
</div>
</li>
</ul>
</section>
</header>
<nav class="sheet-navigation tabs" data-group="primary">
<a class="item active" data-tab="attributes">{{localize 'SW5E.Attributes'}}</a>
<a class="item" data-tab="features">{{localize 'SW5E.Features'}}</a>
<a class="item" data-tab="cargo">{{localize 'SW5E.VehicleCargoCrew'}}</a>
<a class="item" data-tab="biography">{{localize 'SW5E.Description'}}</a>
</nav>
<section class="sheet-body">
<div class="tab attributes flexrow" data-group="primary" data-tab="attributes">
<ul class="ability-scores flexrow">
{{#each data.abilities as |ability id|}}
<li class="ability" data-ability="{{id}}">
<h4 class="ability-name box-title rollable">{{ability.label}}</h4>
<input class="ability-score" name="data.abilities.{{id}}.value" type="text"
value="{{ability.value}}" data-dtype="Number" placeholder="0">
<div class="ability-modifiers flexrow">
<span class="ability-mod" title="{{localize 'SW5E.Modifier'}}">
{{numberFormat ability.mod decimals=0 sign=true}}
</span>
</div>
</li>
{{/each}}
</ul>
<section class="center-pane flexcol">
<div class="counters">
<div class="counter flexrow creature-cap">
<h4>{{localize 'SW5E.VehicleCreatureCapacity'}}</h4>
<div class="counter-value">
<input type="text" placeholder="&mdash;"
name="data.attributes.capacity.creature"
value="{{data.attributes.capacity.creature}}">
</div>
</div>
<div class="counter flexrow cargo-cap">
<h4>{{localize 'SW5E.VehicleCargoCapacity'}}</h4>
<div class="counter-value">
<input type="text" name="data.attributes.capacity.cargo" placeholder="0"
data-dtype="Number" value="{{data.attributes.capacity.cargo}}">
</div>
</div>
<div class="counter flexrow stations">
<h4>{{localize 'SW5E.VehicleActionStations'}}</h4>
<div class="counter-value">
<input name="data.attributes.actions.stations" type="checkbox"
data-dtype="Boolean" value="{{data.attributes.actions.stations}}"
{{checked data.attributes.actions.stations}}>
</div>
</div>
<div class="counter flexrow actions">
<h4>{{localize 'SW5E.ActionPl'}}</h4>
<div class="counter-value">
<input type="text" name="data.attributes.actions.value" placeholder="0"
data-dtype="Number" value="{{data.attributes.actions.value}}">
</div>
</div>
<div class="counter flexrow action-thresholds">
<h4>{{localize 'SW5E.VehicleActionThresholds'}}</h4>
<div class="counter-value">
<span class="sep">&lt;</span>
<input type="text" placeholder="&mdash;" data-dtype="Number"
value="{{data.attributes.actions.thresholds.[2]}}"
name="data.attributes.actions.thresholds.2">
<span class="sep">&lt;</span>
<input type="text" placeholder="&mdash;" data-dtype="Number"
value="{{data.attributes.actions.thresholds.[1]}}"
name="data.attributes.actions.thresholds.1">
<span class="sep">&lt;</span>
<input type="text" placeholder="&mdash;" data-dtype="Number"
value="{{data.attributes.actions.thresholds.[0]}}"
name="data.attributes.actions.thresholds.0">
</div>
</div>
</div>
{{> 'systems/sw5e/templates/actors/parts/actor-traits.html'}}
</section>
</div>
<div class="tab features flexcol" data-group="primary" data-tab="features">
{{> 'systems/sw5e/templates/actors/parts/actor-features.html' sections=features}}
</div>
<div class="tab cargo flexcol" data-group="primary" data-tab="cargo">
{{> 'systems/sw5e/templates/actors/parts/actor-inventory.html' sections=cargo}}
</div>
<div class="tab biography flexcol" data-group="primary" data-tab="biography">
{{editor content=data.details.biography.value target='data.details.biography.value'
button=true owner=owner editable=editable}}
</div>
</section>
</form>