Files
RingBRP/templates/character-sheet.hbs
T
slaguru666andClaude Opus 5 89ce557355 Death at zero, and a case brief that answers the useful questions
R-223: nothing happened at 0 hit points. An agent was marked down and lay there
forever; the only mention of death in the system was flavour text on a destroyed
head. Zero now starts a clock whose length is the agent's own Major Wound
threshold, ticked from the same hook that charges blood loss. First Aid or
Medicine stabilises and stops the count; healing above zero clears it; heal()
refuses the dead. On death, Coherence decides what the record says — from a
proper death in service down to not being recorded as dead at all.

Case generator: four phases instead of five (the arc drew two interchangeable
middles that read as padding). The brief now leads with Where / When /
Classification / Phases, states the opposition in full, and has a "How you get
back" section. place and duration were generated and never printed. The same
facts are on the case file itself. 300 seeds checked for object leaks; one found
and fixed (group taboo/desire are objects with .text).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-10 22:13:21 +01:00

551 lines
30 KiB
Handlebars
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<form class="ringbrp-sheet" autocomplete="off">
<header class="rb-header">
<img class="rb-portrait" src="{{actor.img}}" data-edit="img" title="{{actor.name}}"/>
<div class="rb-headline">
<input class="rb-name" name="name" type="text" value="{{actor.name}}" placeholder="{{localize 'RINGBRP.Sheet.Name'}}"/>
{{#if isCharacter}}<input class="rb-rank" name="system.rank" type="text" value="{{sys.rank}}" placeholder="{{localize 'RINGBRP.Sheet.RankPlaceholder'}}"/>{{/if}}
<div class="rb-origin">
<label class="rb-style">{{localize "RINGBRP.Sheet.Style"}}
<select name="system.marksmanship.chosenStyle">
{{#each RINGBRP.marksmanship as |m key|}}
<option value="{{key}}" {{#if (rbEq key ../sys.marksmanship.style)}}selected{{/if}}>{{localize m.label}}</option>
{{/each}}
</select>
</label>
<ul class="rb-style-compare" title="{{localize 'RINGBRP.Style.Hint.Title'}}">
{{#each styleHints as |s|}}
<li class="{{#if s.on}}on{{/if}}"><b>{{s.label}}</b> {{s.hint}}</li>
{{/each}}
</ul>
</div>
{{#if isCharacter}}
<div class="rb-ages">
<label>{{localize "RINGBRP.Sheet.Chronological"}}<input type="number" name="system.age.chronological" value="{{sys.age.chronological}}"/></label>
<label>{{localize "RINGBRP.Sheet.Physiological"}}<input type="number" name="system.age.physiological" value="{{sys.age.physiological}}"/></label>
</div>
{{/if}}
</div>
<div class="rb-vitals">
<div class="rb-hp">
<span class="rb-vital-label">{{localize "RINGBRP.Sheet.HP"}}</span>
<input type="number" name="system.hp.value" value="{{sys.hp.value}}"/>
<span class="rb-slash">/</span>
<span class="rb-max">{{sys.hp.max}}</span>
</div>
<div class="rb-mw" title="{{localize 'RINGBRP.Sheet.MajorWoundHint'}}">
<span class="rb-vital-label">{{localize "RINGBRP.Sheet.MajorWound"}}</span>
<span class="rb-big">{{sys.majorWound.value}}</span>
</div>
<div class="rb-armour{{#if armourUnworn.length}} rb-unworn{{/if}}"
{{#if armourUnworn.length}}data-tooltip="{{localize "RINGBRP.Sheet.ArmourUnworn"}}"{{/if}}>
<span class="rb-vital-label">{{localize "RINGBRP.Sheet.Armour"}}</span>
<span class="rb-big">{{sys.armourPoints}}</span>
{{#if armourUnworn.length}}<span class="rb-unworn-flag">{{localize "RINGBRP.Sheet.NotWorn"}}</span>{{/if}}
</div>
{{#if wounds.length}}
<div class="rb-wounded">
<span class="rb-vital-label">{{localize "RINGBRP.Tab.Wounds"}}</span>
<span class="rb-big" style="color:var(--rb-danger)">{{wounds.length}}</span>
<span class="rb-wound-flag">{{localize "RINGBRP.Sheet.Wounded"}}</span>
</div>
{{/if}}
</div>
</header>
<section class="rb-characteristics">
{{#each sys.characteristics as |c key|}}
<div class="rb-char" data-characteristic="{{key}}">
<a class="rb-char-label" data-action="roll-characteristic"
title="{{localize 'RINGBRP.Sheet.RollCharHint'}}">{{localize (rbConcat "RINGBRP.Char." key)}}</a>
<input type="number" name="system.characteristics.{{key}}.value" value="{{c.value}}"/>
<a class="rb-char-x5" data-action="roll-characteristic"
title="{{localize 'RINGBRP.Sheet.RollCharHint'}}">{{rbTimes5 c.value}}</a>
</div>
{{/each}}
</section>
<section class="rb-derived">
<div class="rb-derived-group">
<span class="rb-dl">{{localize "RINGBRP.Sheet.DamageMod"}}</span><span class="rb-dv">{{sys.damageModifier}}</span>
</div>
<div class="rb-derived-group">
<span class="rb-dl">{{localize "RINGBRP.Sheet.MOV"}}</span><span class="rb-dv">{{sys.mov}}</span>
</div>
<div class="rb-derived-group rb-cohgroup rb-coh-{{coherence.band.id}}"
title="{{localize coherence.band.note}}">
<span class="rb-dl">{{localize "RINGBRP.Coh.Label"}}</span>
<span class="rb-dv"><a data-action="coherence-adjust" data-delta="-1" class="rb-cohbtn">&minus;</a>{{sys.coherence.value}}<a data-action="coherence-adjust" data-delta="1" class="rb-cohbtn">+</a></span>
<span class="rb-cohband">{{localize coherence.band.label}}</span>
</div>
<div class="rb-derived-group">
<span class="rb-dl">{{localize "RINGBRP.Sheet.Carry"}}</span>
<span class="rb-dv {{#if sys.encumbrance.steps}}rb-warn{{/if}}">{{sys.carriedKg}} / {{sys.freeCarryKg}} kg</span>
</div>
<div class="rb-rolls">
<button type="button" data-action="roll-attribute" data-attribute="stamina">{{localize "RINGBRP.Roll.stamina"}} {{sys.rolls.stamina}}</button>
<button type="button" data-action="roll-attribute" data-attribute="idea">{{localize "RINGBRP.Roll.idea"}} {{sys.rolls.idea}}</button>
<button type="button" data-action="roll-attribute" data-attribute="luck">{{localize "RINGBRP.Roll.luck"}} {{sys.rolls.luck}}</button>
</div>
</section>
<section class="rb-weaponstrip">
<span class="rb-strip-label">{{localize "RINGBRP.Sheet.Readied"}}</span>
{{#each equippedWeapons as |w|}}
<span class="rb-strip-weapon" data-item-id="{{w.id}}">
<a data-action="roll-attack">{{w.name}}</a>
<span class="rb-strip-dmg" data-action="roll-damage">{{#if (rbEq w.system.damage.mode "byBand")}}{{w.system.damage.short}}/{{w.system.damage.medium}}/{{w.system.damage.long}}{{else}}{{w.system.damage.formula}}{{/if}}</span>
{{#if w.system.rangeSummary}}<span class="rb-strip-range">{{w.system.rangeSummary}}</span>{{/if}}
{{#if w.system.ammo.capacity}}<span class="rb-strip-ammo">{{w.system.ammo.loaded}}/{{w.system.ammo.capacity}}</span>{{/if}}
</span>
{{else}}
<span class="rb-strip-empty">{{localize "RINGBRP.Sheet.NothingReadied"}}</span>
{{/each}}
</section>
<nav class="sheet-tabs rb-tabs" data-group="primary">
<a class="item" data-tab="skills">{{localize "RINGBRP.Tab.Skills"}}</a>
<a class="item" data-tab="combat">{{localize "RINGBRP.Tab.Combat"}}</a>
<a class="item" data-tab="talents">{{localize "RINGBRP.Tab.Talents"}}{{#if talents.length}} ({{talents.length}}){{/if}}</a>
<a class="item" data-tab="powers">{{localize "RINGBRP.Tab.Powers"}}{{#if powers.length}} ({{powers.length}}){{/if}}</a>
<a class="item" data-tab="gear">{{localize "RINGBRP.Tab.Gear"}}</a>
<a class="item" data-tab="anatomy">{{localize "RINGBRP.Tab.Anatomy"}}{{#if sys.disabledLocations}} ({{sys.disabledLocations}}){{/if}}</a>
<a class="item" data-tab="wounds">{{localize "RINGBRP.Tab.Wounds"}}{{#if wounds.length}} ({{wounds.length}}){{/if}}</a>
<a class="item" data-tab="bio">{{localize "RINGBRP.Tab.Bio"}}</a>
</nav>
<section class="sheet-body rb-body">
<div class="tab" data-group="primary" data-tab="skills">
{{#if dyingNow}}
<div class="rb-dyingbar{{#if stabilised}} rb-stable{{/if}}">
<span class="rb-dyingbar-title">{{localize "RINGBRP.Condition.dying"}}</span>
{{#if stabilised}}
<span>{{localize "RINGBRP.Death.StableTag"}}</span>
{{else}}
<span>{{localize "RINGBRP.Death.CountTag"}} {{dyingRounds}} / {{dyingLimit}}</span>
{{/if}}
</div>
{{/if}}
{{#if deadNow}}
<div class="rb-deadbar">
<span class="rb-dyingbar-title">{{localize "RINGBRP.Condition.dead"}}</span>
<span>{{lastEntry}}</span>
</div>
{{/if}}
{{#if impaired.active}}
<div class="rb-woundbar" data-tooltip="{{localize 'RINGBRP.Sheet.WoundBarHint'}}">
<span class="rb-woundbar-title"><i class="fas fa-triangle-exclamation"></i>
{{#if impaired.unconscious}}{{localize "RINGBRP.Sheet.Unconscious"}}
{{else if impaired.defenceOnly}}{{localize "RINGBRP.Sheet.OutOfFight"}}
{{else}}{{localize "RINGBRP.Sheet.Wounded"}}{{/if}}</span>
{{#each impaired.chips as |c|}}<span class="rb-woundchip">{{c}}</span>{{/each}}
<span class="rb-woundbar-pen">{{impaired.summary}}</span>
</div>
{{/if}}
<div class="rb-skillbar">
<span class="rb-dim">{{skillCount}} {{localize "RINGBRP.Sheet.SkillsShown"}}</span>
<a class="rb-cbtn" data-action="full-skills">{{localize "RINGBRP.Sheet.FullList"}}</a>
</div>
{{#each RINGBRP.categories as |cat key|}}
<div class="rb-cat">
<h3 class="rb-cat-head">
{{localize cat.label}}
<span class="rb-catbonus" title="{{localize 'RINGBRP.Sheet.CategoryBonusHint'}}">+{{lookup ../sys.categoryBonus key}}</span>
<a class="rb-add" data-action="item-create" data-type="skill" title="{{localize 'RINGBRP.Sheet.AddSkill'}}"><i class="fas fa-plus"></i></a>
</h3>
<ol class="rb-skills">
{{#unless (rbLen (lookup ../skillsByCategory key))}}
<li class="rb-skill-empty">{{localize "RINGBRP.Sheet.NoSkillsHere"}}</li>
{{/unless}}
{{#each (lookup ../skillsByCategory key) as |sk|}}
<li class="rb-skill" data-item-id="{{sk.id}}">
<a class="rb-tick {{#if sk.system.experienceTicked}}on{{/if}}" data-action="toggle-tick" title="{{localize 'RINGBRP.Sheet.ExperienceTick'}}"></a>
<img class="rb-li-icon" src="{{sk.img}}" alt=""/><a class="rb-skill-name" data-action="roll-skill">{{sk.name}}</a>
<span class="rb-skill-val">{{sk.system.value}}%</span>
<span class="rb-skill-bands" title="{{localize 'RINGBRP.Sheet.BandsHint'}}">{{rbBands sk.system.value}}</span>
<a data-action="item-edit" title="{{localize 'RINGBRP.Sheet.Edit'}}"><i class="fas fa-edit"></i></a>
<a data-action="item-delete" title="{{localize 'RINGBRP.Sheet.Delete'}}"><i class="fas fa-trash"></i></a>
</li>
{{/each}}
</ol>
</div>
{{/each}}
</div>
<div class="tab" data-group="primary" data-tab="combat">
<div class="rb-bodyblock">
<div class="rb-figure">
<svg viewBox="{{bodyMap.viewBox}}" class="rb-body-svg" role="img"
aria-label="{{speciesLabel}}">
{{#each bodyMap.parts as |p|}}
{{#if (rbEq p.shape.t "ellipse")}}
<ellipse class="rb-part rb-part-{{p.state}}" data-loc="{{p.id}}"
cx="{{p.shape.cx}}" cy="{{p.shape.cy}}" rx="{{p.shape.rx}}" ry="{{p.shape.ry}}"
data-tooltip="{{localize p.label}} — {{p.taken}}/{{p.max}}"></ellipse>
{{else if (rbEq p.shape.t "rect")}}
<rect class="rb-part rb-part-{{p.state}}" data-loc="{{p.id}}"
x="{{p.shape.x}}" y="{{p.shape.y}}" width="{{p.shape.w}}" height="{{p.shape.h}}"
rx="{{p.shape.rx}}" data-tooltip="{{localize p.label}} — {{p.taken}}/{{p.max}}"></rect>
{{else}}
<path class="rb-part rb-part-{{p.state}}" data-loc="{{p.id}}"
d="{{p.shape.d}}" data-tooltip="{{localize p.label}} — {{p.taken}}/{{p.max}}"></path>
{{/if}}
{{/each}}
</svg>
<span class="rb-figure-species">{{speciesLabel}}</span>
<a class="rb-cbtn rb-figure-roll" data-action="roll-location"
data-tooltip="{{localize 'RINGBRP.Loc.RollHint'}}">{{localize "RINGBRP.Loc.RollButton"}}</a>
</div>
<div class="rb-bodyside">
<table class="rb-table rb-loctable rb-loctable-compact">
<thead><tr>
<th class="rb-col-loc">{{localize "RINGBRP.Sheet.Locations"}}</th>
<th class="rb-col-num">{{localize "RINGBRP.Loc.Melee"}}</th>
<th class="rb-col-num">{{localize "RINGBRP.Loc.Ranged"}}</th>
<th class="rb-col-num">{{localize "RINGBRP.Loc.Taken"}}</th>
<th class="rb-col-num">{{localize "RINGBRP.Sheet.Armour"}}</th>
</tr></thead>
<tbody>
{{#each bodyMap.parts as |l|}}
<tr class="rb-locrow rb-locrow-{{l.state}}" data-loc="{{l.id}}">
<td class="rb-col-loc">{{localize l.label}}</td>
<td class="rb-col-num">{{l.melee}}</td>
<td class="rb-col-num">{{l.ranged}}</td>
<td class="rb-col-num">{{l.taken}}/{{l.max}}</td>
<td class="rb-col-num">{{l.armour}}</td>
</tr>
{{/each}}
</tbody>
</table>
<h4 class="rb-sub-head">{{localize "RINGBRP.Tab.Wounds"}}{{#if wounds.length}} ({{wounds.length}}){{/if}}</h4>
{{#if wounds.length}}
<ol class="rb-list rb-wounds rb-wounds-compact">
{{#each wounds as |w|}}
<li data-wound-id="{{w.id}}">
<span class="rb-strong">{{localize (rbConcat "RINGBRP.Wound." w.key ".title")}}</span>
<span class="rb-dim">{{localize (rbConcat "RINGBRP.Wound." w.key ".text")}}</span>
<a data-action="wound-clear" title="{{localize 'RINGBRP.Sheet.ClearWound'}}"><i class="fas fa-times"></i></a>
</li>
{{/each}}
</ol>
{{else}}
<p class="rb-empty">{{localize "RINGBRP.Sheet.NoWounds"}}</p>
{{/if}}
</div>
</div>
<div class="rb-defbar">
<span class="rb-defbar-label">{{localize "RINGBRP.Sheet.Defend"}}</span>
<a class="rb-cbtn" data-action="defend" data-type="dodge"
data-tooltip="{{localize 'RINGBRP.Sheet.DefendHint'}}">{{localize "RINGBRP.Defence.dodge"}}</a>
<a class="rb-cbtn" data-action="defend" data-type="parry"
data-tooltip="{{localize 'RINGBRP.Sheet.DefendHint'}}">{{localize "RINGBRP.Defence.parry"}}</a>
<span class="rb-defbar-count">
{{#if sys.combat.defencesThisRound}}
{{sys.combat.defencesThisRound}} {{localize "RINGBRP.Sheet.ThisRound"}} · {{localize "RINGBRP.Sheet.NextAt"}} {{defenceNext}}%
{{else}}{{localize "RINGBRP.Sheet.FirstIsFree"}}{{/if}}
</span>
</div>
<h3 class="rb-cat-head">{{localize "RINGBRP.React.Title"}}</h3>
<div class="rb-railbox">
<div class="rb-rail-head">
<span class="rb-rail-base">{{reaction.printed}}</span>
<span class="rb-rail-cap">{{localize "RINGBRP.React.Printed"}}</span>
<span class="rb-dim">{{localize "RINGBRP.React.Reflex"}} {{reaction.reflex}} · {{localize "RINGBRP.React.Awareness"}} {{reaction.aware}} — {{localize "RINGBRP.React.Uses"}} {{localize (rbConcat "RINGBRP.React.From." reaction.from)}}</span>
{{#if reaction.load}}
<span class="rb-rail-load">{{localize "RINGBRP.React.Base"}} {{reaction.base}} − {{localize "RINGBRP.React.Load"}} {{reaction.load}}</span>
{{/if}}
</div>
<table class="rb-rail">
<tr>{{#each reaction.rail as |r|}}<th class="{{#if r.current}}on{{/if}}">{{rbSign r.mod}}</th>{{/each}}</tr>
<tr>{{#each reaction.rail as |r|}}<td class="{{#if r.current}}on{{/if}}">{{r.value}}</td>{{/each}}</tr>
</table>
<details class="rb-react-work">
<summary>{{localize "RINGBRP.React.HowIsThis"}}</summary>
<table class="rb-worktable">
<tr><th>{{localize "RINGBRP.React.Reflex"}}</th>
<td>DEX {{reaction.work.dex}} &divide; {{reaction.work.dexDiv}}, rounded up</td>
<td class="rb-worknum">{{reaction.work.reflex}}</td></tr>
<tr><th>{{localize "RINGBRP.React.Awareness"}}</th>
<td>{{localize "RINGBRP.React.Readiness"}} {{reaction.work.readiness}} &divide; {{reaction.work.readyDiv}}, rounded up</td>
<td class="rb-worknum">{{reaction.work.aware}}</td></tr>
<tr class="rb-worknote"><td colspan="3">
{{#if reaction.work.fromTraining}}
{{localize "RINGBRP.React.ReadyFromSkill"}} ({{reaction.work.best}}) &mdash; {{localize "RINGBRP.React.ReadyIntFloor"}} {{reaction.work.intFloor}}
{{else}}
{{localize "RINGBRP.React.ReadyFromInt"}} ({{reaction.work.intFloor}}) &mdash; {{localize "RINGBRP.React.ReadyBestSkill"}} {{reaction.work.best}}
{{/if}}
</td></tr>
<tr><th>{{localize "RINGBRP.React.Lane"}}</th>
<td>{{localize "RINGBRP.React.BetterOf"}} &times; {{reaction.work.mult}}</td>
<td class="rb-worknum">{{reaction.work.base}}</td></tr>
{{#if reaction.work.load}}
<tr class="rb-workload"><th>{{localize "RINGBRP.React.Load"}}</th>
<td>{{reaction.work.carried}} / {{reaction.work.free}} kg &mdash; {{reaction.work.overKg}} kg over</td>
<td class="rb-worknum">&minus;{{reaction.work.load}}</td></tr>
{{/if}}
<tr class="rb-worktotal"><th>{{localize "RINGBRP.React.Printed"}}</th>
<td>{{localize "RINGBRP.React.ThenAddDie"}} d{{reaction.work.die}}</td>
<td class="rb-worknum">{{reaction.work.printed}}</td></tr>
</table>
</details>
<p class="rb-hint">{{localize "RINGBRP.React.RailHint"}}</p>
</div>
<h3 class="rb-cat-head">{{localize "RINGBRP.Tab.Weapons"}}
<a class="rb-add" data-action="item-create" data-type="weapon"><i class="fas fa-plus"></i></a>
</h3>
<table class="rb-table">
<thead><tr>
<th>{{localize "RINGBRP.Sheet.Weapon"}}</th><th>{{localize "RINGBRP.Sheet.Damage"}}</th>
<th>{{localize "RINGBRP.Sheet.Range"}}</th><th>{{localize "RINGBRP.Sheet.Ammo"}}</th>
<th class="rb-col-num">{{localize "RINGBRP.Sheet.Mass"}}</th><th></th>
</tr></thead>
<tbody>
{{#each weapons as |w|}}
<tr data-item-id="{{w.id}}">
<td class="rb-td-icon"><img class="rb-li-icon" src="{{w.img}}" alt=""/><a data-action="roll-attack" class="rb-strong">{{w.name}}</a></td>
<td><a data-action="roll-damage">{{#if (rbEq w.system.damage.mode "byBand")}}{{w.system.damage.short}}/{{w.system.damage.medium}}/{{w.system.damage.long}}{{else}}{{w.system.damage.formula}}{{/if}}</a></td>
<td>{{w.system.rangeSummary}}</td>
<td>{{#if w.system.ammo.capacity}}{{w.system.ammo.loaded}}/{{w.system.ammo.capacity}}{{/if}}</td>
<td class="rb-col-num">{{w.system.massKg}} kg</td>
<td class="rb-actions">
<a data-action="item-edit"><i class="fas fa-edit"></i></a>
<a data-action="item-delete"><i class="fas fa-trash"></i></a>
</td>
</tr>
{{/each}}
</tbody>
</table>
<h3 class="rb-cat-head">{{localize "RINGBRP.Tab.Armour"}}
<a class="rb-add" data-action="item-create" data-type="armour"><i class="fas fa-plus"></i></a>
</h3>
<ol class="rb-list">
{{#each armours as |a|}}
<li data-item-id="{{a.id}}">
<a class="rb-equip {{#if a.system.equipped}}on{{/if}}" data-action="toggle-equipped"><i class="fas fa-shield-halved"></i></a>
<img class="rb-li-icon" src="{{a.img}}" alt=""/><span class="rb-strong">{{a.name}}</span>
<span class="rb-dim">{{a.system.points}} {{localize "RINGBRP.Sheet.Points"}}</span>
<span class="rb-dim rb-mass">{{a.system.massKg}} kg</span>
<a data-action="item-edit"><i class="fas fa-edit"></i></a>
<a data-action="item-delete"><i class="fas fa-trash"></i></a>
</li>
{{/each}}
</ol>
</div>
<div class="tab" data-group="primary" data-tab="talents">
{{#each talentGroups as |grp|}}
{{#if grp.items.length}}
<h3 class="rb-cat-head">{{localize grp.label}}</h3>
<ol class="rb-talents">
{{#each grp.items as |t|}}
<li class="rb-talent" data-item-id="{{t.id}}">
<img class="rb-talent-icon" src="{{t.img}}" alt=""/>
<div class="rb-talent-body">
<a class="rb-talent-name" data-action="item-edit">{{t.name}}</a>
<div class="rb-talent-summary">{{t.system.summary}}</div>
<div class="rb-talent-rule">{{t.system.rule}}</div>
</div>
<div class="rb-talent-cost">
{{#if t.active}}
<a class="rb-cbtn {{#unless t.available}}rb-disabled{{/unless}}"
data-action="use-talent" title="{{t.whyUnavailable}}">{{localize "RINGBRP.Talent.Use"}}</a>
{{else}}
<span class="rb-talent-passive">{{localize "RINGBRP.Talent.Passive"}}</span>
{{/if}}
{{#if t.system.coherenceCost}}<span class="rb-talent-coh" title="{{localize 'RINGBRP.Talent.CoherenceCost'}}">&minus;{{t.system.coherenceCost}}</span>{{/if}}
{{#if t.system.usesPerCase}}<span class="rb-talent-uses">{{t.system.usedThisCase}}/{{t.system.usesPerCase}}</span>{{/if}}
{{#if t.system.skillBonus.value}}<span class="rb-talent-bonus">+{{t.system.skillBonus.value}}%</span>{{/if}}
</div>
<a data-action="item-delete" title="{{localize 'RINGBRP.Sheet.Delete'}}"><i class="fas fa-trash"></i></a>
</li>
{{/each}}
</ol>
{{/if}}
{{/each}}
{{#unless talents.length}}<p class="rb-empty">{{localize "RINGBRP.Talent.None"}}</p>{{/unless}}
</div>
<div class="tab" data-group="primary" data-tab="powers">
{{#if powers.length}}
<ol class="rb-list rb-powers">
{{#each powers as |p|}}
<li data-item-id="{{p.id}}">
<div class="rb-power-head">
<img class="rb-li-icon" src="{{p.img}}" alt=""/>
<a class="rb-strong rb-power-name" data-action="power-use">{{p.name}}</a>
<span class="rb-power-val">{{p.system.value}}%</span>
<span class="rb-power-cost">−{{p.system.coherenceCost}}</span>
<a class="rb-cbtn" data-action="power-use">{{localize "RINGBRP.Power.Use"}}</a>
<a class="rb-cbtn rb-power-push" data-action="power-push"
data-tooltip="{{p.system.pushRule}}">{{localize "RINGBRP.Power.Push"}} −{{p.system.pushCost}}</a>
<a data-action="item-edit"><i class="fas fa-edit"></i></a>
<a data-action="item-delete"><i class="fas fa-trash"></i></a>
</div>
<p class="rb-power-summary">{{p.system.summary}}</p>
<p class="rb-power-rule">{{p.system.rule}}</p>
{{#if p.system.origin}}
<p class="rb-power-origin">{{localize "RINGBRP.Power.Origin"}}: {{p.system.origin}}</p>
{{/if}}
</li>
{{/each}}
</ol>
{{else}}
<p class="rb-empty">{{localize "RINGBRP.Power.None"}}</p>
{{/if}}
</div>
<div class="tab" data-group="primary" data-tab="gear">
{{#if authorities.length}}
<h3 class="rb-cat-head">{{localize "RINGBRP.Tab.Access"}}</h3>
<ol class="rb-list rb-authorities">
{{#each authorities as |a|}}
<li data-item-id="{{a.id}}" class="{{#if a.system.burned}}rb-auth-dead{{else if a.system.suspect}}rb-auth-flagged{{/if}}">
<div class="rb-auth-head">
<img class="rb-li-icon" src="{{a.img}}" alt=""/>
<span class="rb-strong">{{#if a.system.holderName}}{{a.system.holderName}}{{else}}{{a.name}}{{/if}}</span>
<span class="rb-dim">{{a.system.holderRole}}</span>
<span class="rb-auth-trust" title="{{localize 'RINGBRP.Authority.Trust'}}">
{{localize "RINGBRP.Authority.Trust"}} {{a.system.trust.value}}/{{a.system.trust.max}}</span>
{{#if a.system.burned}}<span class="rb-auth-tag">{{localize "RINGBRP.Authority.BurnedTag"}}</span>
{{else if a.system.suspect}}<span class="rb-auth-tag">{{localize "RINGBRP.Authority.SuspectTag"}}</span>{{/if}}
<a data-action="item-edit"><i class="fas fa-edit"></i></a>
<a data-action="item-delete"><i class="fas fa-trash"></i></a>
</div>
<div class="rb-auth-body">
<span class="rb-dim">{{a.scopeLabel}}{{#if a.system.scopeNote}} — {{a.system.scopeNote}}{{/if}}</span>
{{#if a.system.expires}}<span class="rb-dim">{{localize "RINGBRP.Authority.Expires"}}: {{a.system.expires}}</span>{{/if}}
{{#if a.flagCount}}<span class="rb-auth-flags">{{a.flagCount}} {{localize "RINGBRP.Authority.RedFlags"}}</span>{{/if}}
{{#if a.merged}}<span class="rb-auth-merge-tag">{{localize "RINGBRP.Authority.MergingTag"}}</span>{{/if}}
</div>
<div class="rb-auth-acts">
<a class="rb-cbtn" data-action="authority-use">{{localize "RINGBRP.Authority.Use"}}</a>
<a class="rb-cbtn" data-action="authority-widen">{{localize "RINGBRP.Authority.Widen"}}</a>
{{#if a.system.suspect}}<a class="rb-cbtn" data-action="authority-rehab">{{localize "RINGBRP.Authority.Rehab"}}</a>{{/if}}
</div>
</li>
{{/each}}
</ol>
{{/if}}
{{#if vehicles.length}}
<h3 class="rb-cat-head">{{localize "RINGBRP.Tab.Transport"}}</h3>
<ol class="rb-list rb-vehicles">
{{#each vehicles as |v|}}
<li data-item-id="{{v.id}}">
<img class="rb-li-icon" src="{{v.img}}" alt=""/><span class="rb-strong">{{v.name}}</span>
<span class="rb-dim">{{v.speedLabel}}</span>
<span class="rb-dim">{{localize "RINGBRP.Vehicle.Hull"}} {{v.system.hull.value}}/{{v.system.hull.max}}</span>
<span class="rb-dim">{{localize "RINGBRP.Vehicle.Seats"}} {{v.system.seats}}</span>
<span class="rb-dim">{{v.rating}}%</span>
<a data-action="item-edit"><i class="fas fa-edit"></i></a>
<a data-action="item-delete"><i class="fas fa-trash"></i></a>
</li>
{{/each}}
</ol>
{{/if}}
<h3 class="rb-cat-head">{{localize "RINGBRP.Tab.Gear"}}
<a class="rb-add" data-action="item-create" data-type="gear"><i class="fas fa-plus"></i></a>
<a class="rb-add" data-action="item-create" data-type="device" title="{{localize 'RINGBRP.New.device'}}"><i class="fas fa-microchip"></i></a>
<a class="rb-add" data-action="item-create" data-type="vehicle" title="{{localize 'RINGBRP.New.vehicle'}}"><i class="fas fa-truck"></i></a>
<a class="rb-add" data-action="item-create" data-type="authority" title="{{localize 'RINGBRP.New.authority'}}"><i class="fas fa-id-badge"></i></a>
</h3>
<ol class="rb-list">
{{#each gear as |g|}}
<li data-item-id="{{g.id}}">
<img class="rb-li-icon" src="{{g.img}}" alt=""/><span class="rb-strong">{{g.name}}</span>
<span class="rb-dim">{{g.system.massKg}} kg</span>
{{#if (rbEq g.type "device")}}
<span class="rb-dim">{{localize "RINGBRP.Sheet.Integrity"}} {{g.system.integrity.value}}/{{g.system.integrity.max}}</span>
{{/if}}
<a data-action="item-edit"><i class="fas fa-edit"></i></a>
<a data-action="item-delete"><i class="fas fa-trash"></i></a>
</li>
{{#if (rbEq g.type "device")}}
<li class="rb-devicebar" data-item-id="{{g.id}}">
{{#each g.functions as |f|}}
<span class="rb-devfn {{#unless f.usable}}rb-devfn-blocked{{/unless}}">
<a class="rb-cbtn {{#unless f.usable}}rb-disabled{{/unless}}"
data-action="device-fn" data-fn="{{f.id}}" title="{{f.why}}">{{localize f.label}}</a>
<span class="rb-devfn-why">{{f.why}}</span>
</span>
{{/each}}
</li>
{{/if}}
{{/each}}
</ol>
</div>
<div class="tab" data-group="primary" data-tab="anatomy">
<h3 class="rb-cat-head">{{speciesLabel}}
<a class="rb-add" data-action="roll-location" title="{{localize 'RINGBRP.Loc.RollHint'}}"><i class="fas fa-crosshairs"></i></a>
</h3>
<table class="rb-table rb-loctable">
<thead><tr>
<th class="rb-col-loc">{{localize "RINGBRP.Sheet.Locations"}}</th>
<th class="rb-col-num">{{localize "RINGBRP.Loc.Melee"}}</th>
<th class="rb-col-num">{{localize "RINGBRP.Loc.Ranged"}}</th>
<th class="rb-col-num">{{localize "RINGBRP.Loc.Taken"}}</th>
<th class="rb-col-num">{{localize "RINGBRP.Sheet.Armour"}}</th>
</tr></thead>
<tbody>
{{#each sys.locations as |l|}}
<tr class="{{#if l.destroyed}}rb-loc-row-destroyed{{else if l.disabled}}rb-loc-row-disabled{{/if}}">
<td class="rb-col-loc rb-loc-cell">{{localize l.label}}
{{#if l.destroyed}}<span class="rb-loc-flag rb-loc-flag-x">{{localize "RINGBRP.Loc.Destroyed"}}</span>
{{else if l.disabled}}<span class="rb-loc-flag">{{localize "RINGBRP.Loc.Disabled"}}</span>{{/if}}</td>
<td class="rb-col-num">{{l.melee}}</td>
<td class="rb-col-num">{{l.ranged}}</td>
<td class="rb-col-num">{{l.taken}}/{{l.max}}</td>
<td class="rb-col-num">{{l.armour}}</td>
</tr>
{{/each}}
</tbody>
</table>
<p class="rb-hint">{{localize "RINGBRP.Sheet.LocationNote"}}</p>
</div>
<div class="tab" data-group="primary" data-tab="wounds">
{{#if wounds.length}}
<ol class="rb-list rb-wounds">
{{#each wounds as |w|}}
<li data-wound-id="{{w.id}}">
<span class="rb-strong">{{localize (rbConcat "RINGBRP.Wound." w.key ".title")}}</span>
<span class="rb-dim">{{localize (rbConcat "RINGBRP.Wound." w.key ".text")}}</span>
<a data-action="wound-clear" title="{{localize 'RINGBRP.Sheet.ClearWound'}}"><i class="fas fa-times"></i></a>
</li>
{{/each}}
</ol>
{{else}}
<p class="rb-empty">{{localize "RINGBRP.Sheet.NoWounds"}}</p>
{{/if}}
</div>
<div class="tab" data-group="primary" data-tab="bio">
<label class="rb-block">{{localize "RINGBRP.Sheet.Species"}}</label>
<select name="system.speciesProfile" class="rb-species-select">
{{#each RINGBRP.locationTables as |tbl key|}}
<option value="{{key}}" {{#if (rbEq key ../sys.speciesProfile)}}selected{{/if}}>{{localize tbl.label}}</option>
{{/each}}
</select>
<p class="rb-hint">{{localize "RINGBRP.Sheet.SpeciesHint"}}</p>
<label class="rb-block">{{localize "RINGBRP.Sheet.Biography"}}</label>
{{editor bioHTML target="system.biography" button=true editable=editable engine="prosemirror"}}
<label class="rb-block">{{localize "RINGBRP.Sheet.Notes"}}</label>
{{editor notesHTML target="system.notes" button=true editable=editable engine="prosemirror"}}
</div>
</section>
</form>