feat: améliorer les fiches (tests PNJ/créature, message de jet, compétences, créatures)
Release Creation / build (release) Failing after 1m23s

This commit is contained in:
2026-08-04 00:49:37 +02:00
parent 9c7ebc6df9
commit 31f2f4530c
28 changed files with 736 additions and 224 deletions
+1
View File
@@ -221,6 +221,7 @@
{{> "systems/vermine2047/templates/actor/parts/npc-skill-category.hbs"
categoryKey=key
categoryLabel=(concat "VERMINE.skill_category." key)
skills=@root.system.skills
}}
{{/if}}
{{/each}}
@@ -55,7 +55,7 @@
>
{{/if}}
</h4>
{{#each @root.system.skills as |skill skey|}}
{{#each (sortedSkills @root.system.skills) as |skill skey|}}
{{#if (eq skill.category sckey) }}
<div class="ability flexrow ">
@@ -79,12 +79,10 @@
data-action="addSpecialty"
></i>
{{/ifgt}}
{{#each skill.specialties as |spe ind|}}
{{#each @root.specialties as |spe|}}
{{#ife spe.system.skill skey}}
<i
class="specialty"
data-tooltip="spécialité utilisable"
>{{spe.name}}</i>
<span class="specialty" data-tooltip="spécialité utilisable"
>{{spe.name}}<sup>{{spe.system.level}}</sup></span>
{{/ife}}
{{/each}}
</div>
+83 -86
View File
@@ -1,90 +1,4 @@
<div class="tab equipment sheet-part" data-group="sheet" data-tab="equipment">
<div class="grid grid-2col">
<div>
<ol class="items-list">
<li class="item flexrow items-header">
<div
class="item-name"
style="flex:4;"
>{{ localize
'IDENTITY.name'}}</div>
<div class="item-quantity">{{ localize 'VERMINE.qty'}}</div>
<div class="item-weight">{{ localize 'VERMINE.weight'}}</div>
<div class="item-controls">
{{#if isEditMode}}
<a
class="item-control item-create"
title="Create item"
data-action="create"
data-type="item"
><i class="fas fa-plus"></i></a>
{{/if}}
</div>
</li>
{{#each gear as |item id|}}
<li
class="item flexrow flex-group-center"
data-item-id="{{item._id}}"
>
<div
class="item-name"
style="flex:4;"
>
<div class="item-image">
<a
class="item-control item-edit"
data-action="edit"
data-item-id="{{item._id}}"
data-roll-type="item"
><img
src="{{item.img}}"
title="{{item.name}}"
width="24"
height="24"
/></a>
</div>
<a
class="item-control item-edit"
data-action="edit"
data-item-id="{{item._id}}"
data-tooltip="Edit Item"
>{{item.name}} </a>
{{#if item.system.damages.value}}
/
<span data-tooltip="{{item.damagedLabel}}">{{{item.damagedIcon}}}</span>
{{/if}}
</div>
<div>
<a class="item-control item-edit" data-action="edit" data-item-id="{{item._id}}" title="Edit Item">
{{item.system.quantity}}
</a>
</div>
<div>
<a class="item-control item-edit" data-action="edit" data-item-id="{{item._id}}" title="Edit Item">
{{item.system.weight}}
</a>
</div>
<div class="item-controls">
{{#if @root.isEditMode}}
<a
class="item-control item-delete"
data-action="delete"
data-item-id="{{item._id}}"
title="Delete Item"
><i class="fas fa-trash"></i></a>
{{/if}}
</div>
</li>
{{/each}}
</ol>
</div>
<div>
<h4>{{ localize 'IDENTITY.notes'}}</h4>
{{formInput systemFields.equipment.fields.description enriched=enrichedEquipmentNotes value=system.equipment.description name="system.equipment.description" toggled=true}}
</div>
</div>
<div class="weapons">
<h4>{{localize 'ITEMS.weapons'}}</h4>
{{> "systems/vermine2047/templates/actor/parts/actor-weapons.hbs"}}
@@ -93,4 +7,87 @@
<h4>{{localize 'ITEMS.defenses'}}</h4>
{{> "systems/vermine2047/templates/actor/parts/actor-defenses.hbs"}}
</div>
<div class="objects">
<h4>{{localize 'ITEMS.items'}}</h4>
<ol class="items-list">
<li class="item flexrow items-header">
<div
class="item-name"
style="flex:4;"
>{{ localize
'IDENTITY.name'}}</div>
<div class="item-quantity">{{ localize 'VERMINE.qty'}}</div>
<div class="item-weight">{{ localize 'VERMINE.weight'}}</div>
<div class="item-controls">
<a
class="item-control item-create"
title="Create item"
data-action="create"
data-type="item"
><i class="fas fa-plus"></i></a>
</div>
</li>
{{#each gear as |item id|}}
<li
class="item flexrow flex-group-center"
data-item-id="{{item._id}}"
>
<div
class="item-name"
style="flex:4;"
>
<div class="item-image">
<a
class="item-control item-edit"
data-action="edit"
data-item-id="{{item._id}}"
data-roll-type="item"
><img
src="{{item.img}}"
title="{{item.name}}"
width="24"
height="24"
/></a>
</div>
<a
class="item-control item-edit"
data-action="edit"
data-item-id="{{item._id}}"
data-tooltip="Edit Item"
>{{item.name}} </a>
{{#if item.system.damages.value}}
/
<span data-tooltip="{{item.damagedLabel}}">{{{item.damagedIcon}}}</span>
{{/if}}
</div>
<div>
<a class="item-control item-edit" data-action="edit" data-item-id="{{item._id}}" title="Edit Item">
{{item.system.quantity}}
</a>
</div>
<div>
<a class="item-control item-edit" data-action="edit" data-item-id="{{item._id}}" title="Edit Item">
{{item.system.weight}}
</a>
</div>
<div class="item-controls">
{{#if @root.isEditMode}}
<a
class="item-control item-delete"
data-action="delete"
data-item-id="{{item._id}}"
title="Delete Item"
><i class="fas fa-trash"></i></a>
{{/if}}
</div>
</li>
{{/each}}
</ol>
</div>
<div class="equipment-notes">
<h4>{{ localize 'IDENTITY.notes'}}</h4>
{{formInput systemFields.equipment.fields.description enriched=enrichedEquipmentNotes value=system.equipment.description name="system.equipment.description" toggled=true}}
</div>
</div>
+12 -5
View File
@@ -1,5 +1,12 @@
<div class="tab stats sheet-part" data-group="sheet" data-tab="stats">
<h3>{{ localize 'VERMINE.base_values' }}</h3>
{{!-- Total attaque (lancable) --}}
<div class="mdb align-center">
<h4>{{ localize 'VERMINE.total_attack' }}</h4>
<a class="rollable" data-type="creature-attack" data-label="attack" title="{{ localize 'VERMINE.roll' }}">{{ system.computed.attack }}<i class="fas fa-dice-d10"></i></a>
</div>
<section class="grid grid-3col gap-md">
<div class="mdb">
<h4 class="align-center">{{ localize 'ADVERSITY.pattern' }}: {{ patternLabel }}</h4>
@@ -16,12 +23,12 @@
<div class="mdb">
<h4 class="align-center">{{ localize 'ADVERSITY.size' }}: {{ sizeLabel }}</h4>
<ul class="unstyled">
<li>{{ localize 'ADVERSITY.attack' }}: {{ creatureSizeLevel "attack" system.size.value }}</li>
<li>{{ localize 'ADVERSITY.vigor' }}: {{ creatureSizeLevel "vigor" system.size.value }}</li>
<li>{{ localize 'ADVERSITY.attack' }}: {{ sizeCumulative.attack }}</li>
<li>{{ localize 'ADVERSITY.vigor' }}: {{ sizeCumulative.vigor }}</li>
<li>{{ localize 'ADVERSITY.wounds' }}:
{{ creatureSizeLevel "minorWound" system.size.value }}/
{{ creatureSizeLevel "majorWound" system.size.value }}/
{{ creatureSizeLevel "deadlyWound" system.size.value }}
{{ sizeCumulative.minorWound }}/
{{ sizeCumulative.majorWound }}/
{{ sizeCumulative.deadlyWound }}
</li>
</ul>
</div>
@@ -6,7 +6,7 @@
<h4 class="ability-category-header">{{ localize 'VERMINE.ability_category.physical' }}</h4>
<div class="grid grid-2col">
<div class="ability-item">
<label for="system.abilities.vigor.value">{{ localize 'ABILITIES.vigor.name' }}</label>
<label for="system.abilities.vigor.value" class="resource-label rollable" data-type="ability" data-label="vigor">{{ localize 'ABILITIES.vigor.name' }}</label>
<div class="ability-control">
{{#if isEditMode}}
<input type="range" name="system.abilities.vigor.value" value="{{system.abilities.vigor.value}}" min="{{system.abilities.vigor.min}}" max="{{system.abilities.vigor.max}}" data-dtype="Number"/>
@@ -15,7 +15,7 @@
</div>
</div>
<div class="ability-item">
<label for="system.abilities.health.value">{{ localize 'ABILITIES.health.name' }}</label>
<label for="system.abilities.health.value" class="resource-label rollable" data-type="ability" data-label="health">{{ localize 'ABILITIES.health.name' }}</label>
<div class="ability-control">
{{#if isEditMode}}
<input type="range" name="system.abilities.health.value" value="{{system.abilities.health.value}}" min="{{system.abilities.health.min}}" max="{{system.abilities.health.max}}" data-dtype="Number"/>
@@ -31,7 +31,7 @@
<h4 class="ability-category-header">{{ localize 'VERMINE.ability_category.manual' }}</h4>
<div class="grid grid-2col">
<div class="ability-item">
<label for="system.abilities.precision.value">{{ localize 'ABILITIES.precision.name' }}</label>
<label for="system.abilities.precision.value" class="resource-label rollable" data-type="ability" data-label="precision">{{ localize 'ABILITIES.precision.name' }}</label>
<div class="ability-control">
{{#if isEditMode}}
<input type="range" name="system.abilities.precision.value" value="{{system.abilities.precision.value}}" min="{{system.abilities.precision.min}}" max="{{system.abilities.precision.max}}" data-dtype="Number"/>
@@ -40,7 +40,7 @@
</div>
</div>
<div class="ability-item">
<label for="system.abilities.reflexes.value">{{ localize 'ABILITIES.reflexes.name' }}</label>
<label for="system.abilities.reflexes.value" class="resource-label rollable" data-type="ability" data-label="reflexes">{{ localize 'ABILITIES.reflexes.name' }}</label>
<div class="ability-control">
{{#if isEditMode}}
<input type="range" name="system.abilities.reflexes.value" value="{{system.abilities.reflexes.value}}" min="{{system.abilities.reflexes.min}}" max="{{system.abilities.reflexes.max}}" data-dtype="Number"/>
@@ -56,7 +56,7 @@
<h4 class="ability-category-header">{{ localize 'VERMINE.ability_category.mental' }}</h4>
<div class="grid grid-2col">
<div class="ability-item">
<label for="system.abilities.knowledge.value">{{ localize 'ABILITIES.knowledge.name' }}</label>
<label for="system.abilities.knowledge.value" class="resource-label rollable" data-type="ability" data-label="knowledge">{{ localize 'ABILITIES.knowledge.name' }}</label>
<div class="ability-control">
{{#if isEditMode}}
<input type="range" name="system.abilities.knowledge.value" value="{{system.abilities.knowledge.value}}" min="{{system.abilities.knowledge.min}}" max="{{system.abilities.knowledge.max}}" data-dtype="Number"/>
@@ -65,7 +65,7 @@
</div>
</div>
<div class="ability-item">
<label for="system.abilities.perception.value">{{ localize 'ABILITIES.perception.name' }}</label>
<label for="system.abilities.perception.value" class="resource-label rollable" data-type="ability" data-label="perception">{{ localize 'ABILITIES.perception.name' }}</label>
<div class="ability-control">
{{#if isEditMode}}
<input type="range" name="system.abilities.perception.value" value="{{system.abilities.perception.value}}" min="{{system.abilities.perception.min}}" max="{{system.abilities.perception.max}}" data-dtype="Number"/>
@@ -81,7 +81,7 @@
<h4 class="ability-category-header">{{ localize 'VERMINE.ability_category.social' }}</h4>
<div class="grid grid-2col">
<div class="ability-item">
<label for="system.abilities.will.value">{{ localize 'ABILITIES.will.name' }}</label>
<label for="system.abilities.will.value" class="resource-label rollable" data-type="ability" data-label="will">{{ localize 'ABILITIES.will.name' }}</label>
<div class="ability-control">
{{#if isEditMode}}
<input type="range" name="system.abilities.will.value" value="{{system.abilities.will.value}}" min="{{system.abilities.will.min}}" max="{{system.abilities.will.max}}" data-dtype="Number"/>
@@ -90,7 +90,7 @@
</div>
</div>
<div class="ability-item">
<label for="system.abilities.empathy.value">{{ localize 'ABILITIES.empathy.name' }}</label>
<label for="system.abilities.empathy.value" class="resource-label rollable" data-type="ability" data-label="empathy">{{ localize 'ABILITIES.empathy.name' }}</label>
<div class="ability-control">
{{#if isEditMode}}
<input type="range" name="system.abilities.empathy.value" value="{{system.abilities.empathy.value}}" min="{{system.abilities.empathy.min}}" max="{{system.abilities.empathy.max}}" data-dtype="Number"/>
+1
View File
@@ -27,6 +27,7 @@
{{> "systems/vermine2047/templates/actor/parts/npc-skill-category.hbs"
categoryKey=key
categoryLabel=(concat "VERMINE.skill_category." key)
skills=@root.system.skills
}}
{{/ife}}
{{/each}}
@@ -48,7 +48,7 @@
{{/ife}}
>
</h4>
{{#each @root.system.skills as |skill skey|}}
{{#each (sortedSkills @root.system.skills) as |skill skey|}}
{{#if (eq skill.category sckey) }}
<div class="ability flexrow ">
@@ -70,14 +70,16 @@
data-tooltip="ajout de spécialité"
></i>
{{/ifgt}}
{{#each skill.specialties as |spe ind|}}
{{#if @root.specialties}}
{{#each @root.specialties as |spe|}}
{{#ife spe.system.skill skey}}
<i
<span
class="specialty"
data-tooltip="spécialité utilisable"
>{{spe.name}}</i>
>{{spe.name}}<sup>{{spe.system.level}}</sup></span>
{{/ife}}
{{/each}}
{{/if}}
</div>
<select
name="system.skills.{{skey}}.value"
+1
View File
@@ -15,6 +15,7 @@
data-type="defense"
data-action="create"
><i class="fas fa-plus"></i></a>
<a style="visibility:hidden;" aria-hidden="true"><i class="fas fa-trash"></i></a>
</div>
</li>
{{#each defenses as |item id|}}
+2
View File
@@ -9,6 +9,8 @@
<div class="item-controls">
<a class="item-control item-create" title="Create item"
data-type="weapon" data-action="create"><i class="fas fa-plus"></i></a>
<a style="visibility:hidden;" aria-hidden="true"><i class="fas fa-trash"></i></a>
<a style="visibility:hidden;" aria-hidden="true"><i class="fas fa-edit"></i></a>
</div>
</li>
{{#each weapons as |item id|}}
+2 -2
View File
@@ -2,8 +2,8 @@
<div class="skill-category">
<h4>{{ localize categoryLabel }}</h4>
<div class="grid grid-2col">
{{#each system.skills as |skill key|}}
{{#ife skill.category categoryKey}}
{{#each (sortedSkills skills) as |skill key|}}
{{#ife skill.category ../categoryKey}}
{{> "systems/vermine2047/templates/actor/parts/npc-skill-item.hbs" skill=skill key=key}}
{{/ife}}
{{/each}}
+2 -2
View File
@@ -1,6 +1,6 @@
<div class="skill-item">
<label for="system.skills.{{key}}.value" title="{{ localize (concat 'SKILLS.' key) }} - {{ localize (concat 'VERMINE.rarity_' skill.rarity) }}">
{{ localize (concat 'SKILLS.' key) }}
<label for="system.skills.{{key}}.value" class="resource-label rollable" data-type="skill" data-label="{{key}}" title="{{ smarttlk 'SKILLS' key 'name' }} - {{ localize (concat 'VERMINE.rarity_' skill.rarity) }}">
{{ smarttlk 'SKILLS' key 'name' }}
{{#if skill.rarity}}
<span class="rarity-badge rarity-{{skill.rarity}}" title="{{ localize (concat 'VERMINE.rarity_' skill.rarity) }}">
{{skill.rarity}}
+4 -4
View File
@@ -7,18 +7,18 @@
{{#if (ne tk "adapted")}}
<div class="flexrow row mdb flex-group-center">
<h4 style="flex:33%;">
<h4 style="flex:30%;text-align:center;">
<a class="totem" data-totem="{{ tk }}"
title="{{ smarttlk "TOTEMS"
tk "description"}}">
<img
src="/systems/vermine2047/assets/images/ui/totems/{{ tk }}.webp"
alt="{{ localize totem }}" width="80" height="80" />
<h2>{{ smarttlk "TOTEMS"
alt="{{ localize totem }}" width="60" height="60" />
<h2 style="font-size:1rem;">{{ smarttlk "TOTEMS"
tk "name"}}</h2>
</a>
</h4>
<p style="flex:66%;text-align:left;">
<p style="flex:70%;text-align:left;margin:0;font-size:0.8rem;">
<strong>Instincts</strong> : {{ smarttlk "TOTEMS" tk
"instincts"}}<br>
<strong>Interdits</strong> : {{ smarttlk "TOTEMS" tk
+13 -6
View File
@@ -3,12 +3,19 @@
{{!-- Specialty specific content --}}
<div class="grid grid-2col">
{{#if item.system.skill}}
<div class="resource flexrow">
<span class="resource-label">{{ localize 'VERMINE.skill_title' }}:</span>
<span>{{ smarttlk 'SKILLS' item.system.skill 'name' }}</span>
</div>
{{/if}}
{{#if item.system.skill}}
<div class="resource flexrow">
<span class="resource-label">{{ localize 'VERMINE.skill_title' }}:</span>
<span>{{ smarttlk 'SKILLS' item.system.skill 'name' }}</span>
</div>
{{/if}}
{{#if item.system.level}}
<div class="resource flexrow">
<span class="resource-label">{{ localize 'VERMINE.level' }}:</span>
<span>{{ item.system.level }}</span>
</div>
{{/if}}
{{#if item.system.description}}
<div class="resource flexcol full-width">
+28 -19
View File
@@ -13,25 +13,34 @@
value="{{item.name}}"
placeholder="Name"
/></h1>
<select
name="system.skill"
class="skill-select"
>
{{#each @root.config.skillCategories as |skillCategory sckey|}}
<optgroup label="{{ smarttlk 'SKILLS_CATEGORIES' sckey 'name' }}">
{{#each @root.config.skills as |skill key|}}
{{#ife skill.category sckey}}
<option
value="{{key}}"
{{#ife key @root.item.system.skill}}
selected
{{/ife}}
>{{ smarttlk 'SKILLS' key 'name' }}</option>
{{/ife}}
{{/each}}
</optgroup>
{{/each}}
</select>
<div class="flexrow">
<select
name="system.skill"
class="skill-select"
>
{{#each @root.config.skillCategories as |skillCategory sckey|}}
<optgroup label="{{ smarttlk 'SKILLS_CATEGORIES' sckey 'name' }}">
{{#each @root.config.skills as |skill key|}}
{{#ife skill.category sckey}}
<option
value="{{key}}"
{{#ife key @root.item.system.skill}}
selected
{{/ife}}
>{{ smarttlk 'SKILLS' key 'name' }}</option>
{{/ife}}
{{/each}}
</optgroup>
{{/each}}
</select>
<select
name="system.level"
class="skill-select"
title="{{ localize 'VERMINE.level' }}"
>
{{selectOptions @root.config.SkillLevels selected=item.system.level localize=true}}
</select>
</div>
</div>
</header>
+116 -13
View File
@@ -1,11 +1,99 @@
<div class="vermine-roll-message">
<h3>{{param.actor.name}} : {{localize "VERMINE.test_of"}} {{param.rollLabel}}</h3>
<div class="flexrow">
<h4>{{localize "VERMINE.difficulty"}}:</h4>
<span id="difficulty">{{param.difficulty}}</span>
{{!-- Verdict --}}
<div class="roll-verdict {{#if verdict.success}}success{{else}}failure{{/if}}">
{{#if verdict.success}}
<i class="fas fa-check-circle"></i>
<span>{{localize "VERMINE.roll_success"}}</span>
{{else}}
<i class="fas fa-times-circle"></i>
<span>{{localize "VERMINE.roll_failure"}}</span>
{{/if}}
</div>
<h3>{{param.actor.name}} : {{localize "VERMINE.test_of"}} {{param.rollLabel}}</h3>
{{!-- Context --}}
<div class="roll-context flexrow flex-wrap">
<div class="context-item">
<span class="context-label">{{localize "VERMINE.difficulty"}}</span>
<span class="context-value" id="difficulty">{{param.difficulty}}</span>
</div>
<div class="context-item">
<span class="context-label">{{localize "VERMINE.success_required"}}</span>
<span class="context-value">{{verdict.required}}</span>
</div>
{{#if param.handicap}}
<div class="context-item">
<span class="context-label">{{localize "VERMINE.handicap"}}</span>
<span class="context-value">+{{param.handicap}}</span>
</div>
{{/if}}
{{#if param.specialtyName}}
<div class="context-item">
<span class="context-label">{{localize "VERMINE.specialty"}}</span>
<span class="context-value">+1D {{param.specialtyName}}</span>
</div>
{{/if}}
{{#if param.self_control}}
<div class="context-item">
<span class="context-label">{{localize "VERMINE.self_control"}}</span>
<span class="context-value">+{{param.self_control}}D</span>
</div>
{{/if}}
{{#if param.totems.human}}
<div class="context-item totem-human">
<span class="context-label">{{localize "VERMINE.totem_used"}}</span>
<span class="context-value">{{localize "TOTEMS.human.name"}}{{#ife param.keepTotem "human"}} ({{localize "VERMINE.totem_keep"}}){{/ife}}</span>
</div>
{{/if}}
{{#if param.totems.adapted}}
<div class="context-item totem-adapted">
<span class="context-label">{{localize "VERMINE.totem_used"}}</span>
<span class="context-value">{{localize "TOTEMS.adapted.name"}}{{#ife param.keepTotem "adapted"}} ({{localize "VERMINE.totem_keep"}}){{/ife}}</span>
</div>
{{/if}}
{{#if param.skillLevel}}
<div class="context-item">
<span class="context-label">{{localize "VERMINE.skill_mastery"}}</span>
<span class="context-value">{{skillLevel "label" param.skillLevel}}</span>
</div>
{{/if}}
</div>
{{!-- Dice pool breakdown --}}
{{#if param.poolBreakdown}}
<div class="roll-pool">
<h4>{{localize "VERMINE.roll_pool"}}</h4>
<div class="flexrow flex-wrap pool-breakdown">
{{#if param.poolBreakdown.ability}}
<span class="pool-item">{{localize "VERMINE.pool_ability"}} {{param.poolBreakdown.ability}}D</span>
{{/if}}
{{#if param.poolBreakdown.skill}}
<span class="pool-item">{{localize "VERMINE.pool_skill"}} {{param.poolBreakdown.skill}}D</span>
{{/if}}
{{#if param.poolBreakdown.specialty}}
<span class="pool-item">{{localize "VERMINE.pool_specialty"}} +{{param.poolBreakdown.specialty}}D</span>
{{/if}}
{{#if param.poolBreakdown.help}}
<span class="pool-item">{{localize "VERMINE.pool_help"}} +{{param.poolBreakdown.help}}D</span>
{{/if}}
{{#if param.poolBreakdown.tooling}}
<span class="pool-item">{{localize "VERMINE.pool_tooling"}} +{{param.poolBreakdown.tooling}}D</span>
{{/if}}
{{#if param.poolBreakdown.group}}
<span class="pool-item">{{localize "VERMINE.pool_group"}} +{{param.poolBreakdown.group}}D</span>
{{/if}}
{{#if param.poolBreakdown.selfControl}}
<span class="pool-item">{{localize "VERMINE.pool_selfControl"}} +{{param.poolBreakdown.selfControl}}D</span>
{{/if}}
{{#if param.poolBreakdown.domainBonus}}
<span class="pool-item">{{#ifgt param.poolBreakdown.domainBonus 0}}{{localize "VERMINE.domain_bonus"}}{{else}}{{localize "VERMINE.domain_penalty"}}{{/ifgt}} {{param.poolBreakdown.domainBonus}}D</span>
{{/if}}
<span class="pool-item pool-total">{{localize "VERMINE.pool_total"}} {{param.poolBreakdown.total}}D</span>
</div>
</div>
{{/if}}
<div class="reroll-fromroll">
<h4>{{localize "VERMINE.rerolls_possible"}} : <span id="allowed_reroll">{{param.Reroll}}</span></h4>
<div class="reroll flexrow">
@@ -25,21 +113,22 @@
</div>
</div>
</div>
{{!-- Dice results --}}
<ul class="flexrow roll-results initial-roll" data-difficulty="{{param.difficulty}}">
{{#each roll.dice as |dieType index|}}
{{#each dieType.results as |die index|}}
{{! Determine dice class and type based on flavor }}
{{#ifincludes dieType.options.flavor "human"}}
{{! Determine dice class and type based on flavor (leading token) }}
{{#ifStartsWith dieType.options.flavor "human_"}}
{{set diceClass="human"}}
{{set diceTypeVal="human"}}
{{else ifincludes dieType.options.flavor "adapted"}}
{{else ifStartsWith dieType.options.flavor "adapted_"}}
{{set diceClass="adapted"}}
{{set diceTypeVal="adapted"}}
{{else}}
{{set diceClass="regular"}}
{{set diceTypeVal="regular"}}
{{/ifincludes}}
{{/ifStartsWith}}
<li class="roll die flexcol {{diceClass}} {{#if die.success}}success{{/if}}"
data-dice-type="{{diceTypeVal}}"
data-result="{{die.result}}">
@@ -48,7 +137,21 @@
{{/each}}
{{/each}}
</ul>
{{!-- Dice summary --}}
<div class="roll-dice-summary flexrow">
{{#if diceStats.regular.count}}
<span class="die-summary regular">{{diceStats.regular.count}} {{localize "VERMINE.die_regular"}} · {{diceStats.regular.success}} {{localize "VERMINE.die_successes"}}</span>
{{/if}}
{{#if diceStats.human.count}}
<span class="die-summary human">{{diceStats.human.count}} {{localize "VERMINE.die_human"}} · {{diceStats.human.success}} {{localize "VERMINE.die_successes"}}</span>
{{/if}}
{{#if diceStats.adapted.count}}
<span class="die-summary adapted">{{diceStats.adapted.count}} {{localize "VERMINE.die_adapted"}} · {{diceStats.adapted.success}} {{localize "VERMINE.die_successes"}}</span>
{{/if}}
</div>
{{!-- Total --}}
<div class="roll-total flexrow">
<div class="flexcol">
<h4>{{localize "VERMINE.success_count"}}:</h4>
@@ -56,7 +159,7 @@
</div>
<div class="flexcol">
<h4>{{localize "VERMINE.success_required"}}:</h4>
<span id="required">{{math_add 1 param.handicap}}</span>
<span id="required">{{verdict.required}}</span>
</div>
</div>
</div>
</div>