203 lines
8.7 KiB
Handlebars
203 lines
8.7 KiB
Handlebars
<section class="{{cssClass}} directory flexcol" id="{{cssId}}"
|
|
data-tab="{{tabName}}">
|
|
<header class="combat-tracker-header">
|
|
{{#if user.isGM}}
|
|
<nav class="encounters flexrow" aria-label="COMBAT.NavLabel">
|
|
<a class="combat-button combat-create" data-tooltip="COMBAT.Create">
|
|
<i class="fas fa-plus"></i>
|
|
</a>
|
|
{{#if combatCount}}
|
|
<a class="combat-button combat-cycle"
|
|
data-tooltip="COMBAT.EncounterPrevious"
|
|
{{#if
|
|
previousId}}data-document-id="{{previousId}}"{{else}}disabled{{/if}}>
|
|
<i class="fas fa-caret-left"></i>
|
|
</a>
|
|
<h4 class="encounter">{{localize "COMBAT.Encounter"}}
|
|
{{currentIndex}} / {{combatCount}}</h4>
|
|
<a class="combat-button combat-cycle"
|
|
data-tooltip="COMBAT.EncounterNext"
|
|
{{#if
|
|
nextId}}data-document-id="{{nextId}}"{{else}}disabled{{/if}}>
|
|
<i class="fas fa-caret-right"></i>
|
|
</a>
|
|
{{/if}}
|
|
<a class="combat-button combat-control" data-tooltip="COMBAT.Delete"
|
|
data-control="endCombat" {{#unless
|
|
combatCount}}disabled{{/unless}}>
|
|
<i class="fas fa-trash"></i>
|
|
</a>
|
|
</nav>
|
|
{{/if}}
|
|
|
|
<div class="encounter-controls flexrow {{#if hasCombat}}combat{{/if}}">
|
|
{{#if user.isGM}}
|
|
<a class="combat-button combat-control"
|
|
data-tooltip="COMBAT.RollAll" data-control="rollAll" {{#unless
|
|
turns}}disabled{{/unless}}>
|
|
<i class="fas fa-users"></i>
|
|
</a>
|
|
<a class="combat-button combat-control"
|
|
data-tooltip="COMBAT.RollNPC" data-control="rollNPC" {{#unless
|
|
turns}}disabled{{/unless}}>
|
|
<i class="fas fa-users-cog"></i>
|
|
</a>
|
|
{{/if}}
|
|
|
|
{{#if combatCount}}
|
|
{{#if combat.round}}
|
|
<h3 class="encounter-title noborder">{{localize 'COMBAT.Round'}}
|
|
{{combat.round}}</h3>
|
|
{{else}}
|
|
<h3 class="encounter-title noborder">{{localize
|
|
'COMBAT.NotStarted'}}</h3>
|
|
{{/if}}
|
|
{{else}}
|
|
<h3 class="encounter-title noborder">{{localize "COMBAT.None"}}</h3>
|
|
{{/if}}
|
|
|
|
{{#if user.isGM}}
|
|
<a class="combat-button combat-control"
|
|
data-tooltip="COMBAT.InitiativeReset" data-control="resetAll"
|
|
{{#unless hasCombat}}disabled{{/unless}}>
|
|
<i class="fas fa-undo"></i>
|
|
</a>
|
|
<a class="combat-button combat-control"
|
|
data-tooltip="{{labels.scope}}"
|
|
data-control="toggleSceneLink" {{#unless
|
|
hasCombat}}disabled{{/unless}}>
|
|
<i class="fas fa-{{#unless linked}}un{{/unless}}link"></i>
|
|
</a>
|
|
<a class="combat-button combat-settings"
|
|
data-tooltip="COMBAT.Settings" data-control="trackerSettings">
|
|
<i class="fas fa-cog"></i>
|
|
</a>
|
|
{{/if}}
|
|
</div>
|
|
</header>
|
|
|
|
<ol id="combat-tracker" class="directory-list">
|
|
{{#each turns as |turn index|}}
|
|
{{log turn}}
|
|
<li class="combatant actor directory-item flexrow {{turn.css}}"
|
|
data-combatant-id="{{turn.id}}">
|
|
<img class="token-image" data-src="{{turn.img}}"
|
|
alt="{{turn.name}}" />
|
|
<div class="token-name flexcol">
|
|
<h4
|
|
class="{{getCombatTrackerColor turn.isPlayer turn.isNpc}}">{{turn.name}}</h4>
|
|
<div class="combatant-controls flexrow flex-between">
|
|
<div class="flexrow flex-around">
|
|
<a
|
|
class="combatant-control {{#if turn.hidden}}active{{/if}}"
|
|
data-tooltip="COMBAT.ToggleVis"
|
|
data-control="toggleHidden">
|
|
<i class="fas fa-eye-slash"></i>
|
|
</a>
|
|
<a
|
|
class="combatant-control {{#if turn.defeated}}active{{/if}}"
|
|
data-tooltip="COMBAT.ToggleDead"
|
|
data-control="toggleDefeated">
|
|
<i class="fas fa-skull"></i>
|
|
</a>
|
|
|
|
{{#if turn.canPing}}
|
|
<a class="combatant-control"
|
|
data-tooltip="COMBAT.PingCombatant"
|
|
data-control="alertPingCombatant">
|
|
<i class="fa-solid fa-bullseye-arrow"></i>
|
|
</a>
|
|
{{/if}}
|
|
</div>
|
|
{{#if turn.owner }}
|
|
|
|
<div class="flexrow flex-around">
|
|
<a class="combatant-control offensive status"
|
|
data-tooltip="{{localize 'ATTITUDES.offensive.name'}}"
|
|
data-attitude="offensive">
|
|
<i
|
|
class="fas fa-fist-raised"
|
|
style="{{#if (eq turn.attitude "offensive")}}color:white
|
|
{{else}}color:gray {{/if}}"></i>
|
|
</a>
|
|
<a class="combatant-control active status"
|
|
data-tooltip="{{localize 'ATTITUDES.active.name'}}"
|
|
data-attitude="active">
|
|
<i
|
|
class="fas fa-bow-arrow"
|
|
style="{{#if (eq turn.attitude "active")}}color:white
|
|
{{else}} color:gray
|
|
{{/if}}"></i>
|
|
</a>
|
|
<a class="combatant-control passive status"
|
|
data-tooltip="{{localize 'ATTITUDES.passive.name'}}"
|
|
data-attitude="passive">
|
|
<i class="fas fa-snooze"
|
|
style="{{#if (eq turn.attitude "passive")}}color:white
|
|
{{else}} color:gray{{/if}}"></i>
|
|
</a>
|
|
</div>
|
|
{{/if}}
|
|
|
|
<div class="token-effects">
|
|
{{#each turn.effects}}
|
|
<img class="token-effect" src="{{this}}" />
|
|
{{/each}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{{#if this.hasResource}}
|
|
<div class="token-resource">
|
|
<span class="resource">{{this.resource}}</span>
|
|
</div>
|
|
{{/if}}
|
|
|
|
<div class="token-initiative">
|
|
{{#if this.hasRolled}}
|
|
<span class="initiative">{{this.initiative}}</span>
|
|
{{else if this.owner}}
|
|
<a class="combatant-control roll"
|
|
data-tooltip="COMBAT.InitiativeRoll"
|
|
data-control="rollInitiative"></a>
|
|
{{/if}}
|
|
</div>
|
|
</li>
|
|
{{/each}}
|
|
</ol>
|
|
|
|
<nav id="combat-controls" class="directory-footer flexrow"
|
|
data-tooltip-direction="UP">
|
|
{{#if hasCombat}}
|
|
{{#if user.isGM}}
|
|
{{#if round}}
|
|
<a class="combat-control" data-tooltip="COMBAT.RoundPrev"
|
|
data-control="previousRound"><i
|
|
class="fas fa-step-backward"></i></a>
|
|
<a class="combat-control" data-tooltip="COMBAT.TurnPrev"
|
|
data-control="previousTurn"><i
|
|
class="fas fa-arrow-left"></i></a>
|
|
<a class="combat-control center" data-control="endCombat">{{localize
|
|
'COMBAT.End'}}</a>
|
|
<a class="combat-control" data-tooltip="COMBAT.TurnNext"
|
|
data-control="nextTurn"><i class="fas fa-arrow-right"></i></a>
|
|
<a class="combat-control" data-tooltip="COMBAT.RoundNext"
|
|
data-control="nextRound"><i class="fas fa-step-forward"></i></a>
|
|
{{else}}
|
|
<a class="combat-control center"
|
|
data-control="startCombat">{{localize
|
|
'COMBAT.Begin'}}</a>
|
|
{{/if}}
|
|
{{else if control}}
|
|
<a class="combat-control" data-tooltip="COMBAT.TurnPrev"
|
|
data-control="previousTurn"><i
|
|
class="fas fa-arrow-left"></i></a>
|
|
<a class="combat-control center" data-control="nextTurn">{{localize
|
|
'COMBAT.TurnEnd'}}</a>
|
|
<a class="combat-control" data-tooltip="COMBAT.TurnNext"
|
|
data-control="nextTurn"><i class="fas fa-arrow-right"></i></a>
|
|
{{/if}}
|
|
{{/if}}
|
|
</nav>
|
|
</section>
|