feat: fiche véhicule (caractéristiques) et capacités de totem de groupe
Release Creation / build (release) Failing after 1m24s

- véhicule : fiabilité 1-10, type véhicule/monture, distance, vitesse (croisière/pointe), entretien, réserve d'effort
- nettoyage du tableau d'entretien à la soumission
- fiche de groupe : section capacités de totem (création type totem + liste)
This commit is contained in:
2026-08-04 17:20:37 +02:00
parent 6247f65590
commit ea3322e843
5 changed files with 138 additions and 19 deletions
+27 -1
View File
@@ -44,7 +44,7 @@
</h4>
<ol class="list-item">
{{#each abilities as |item id|}}
{{#if (ne item.type 'totem')}}
{{#if (ne item.system.type 'totem')}}
<li class="item flexrow" data-item-id="{{item._id}}">
<div class="item-name" style="flex:4;">
<a class="item-control item-edit" data-action="edit" data-item-id="{{item._id}}" title="{{ localize 'UI.effect_edit' }}">{{item.name}}</a>
@@ -60,6 +60,32 @@
</ol>
</div>
{{!-- Group Totem Abilities --}}
<div class="grid-span-2">
<h4>
<span>{{ localize 'VERMINE.totem_abilities' }}</span>
{{#if isEditMode}}
<a class="item-control item-create" data-action="createTotemAbility" title="{{ localize 'ITEMS.new_ability' }}"><i class="fas fa-plus"></i></a>
{{/if}}
</h4>
<ol class="list-item">
{{#each totem_abilities as |item id|}}
<li class="item flexrow" data-item-id="{{item._id}}">
<div class="item-name" style="flex:4;">
<a class="item-control item-edit" data-action="edit" data-item-id="{{item._id}}" title="{{ localize 'UI.effect_edit' }}">{{item.name}}</a>
<span class="hexa" title="{{ localize 'VERMINE.level' }}">{{item.system.level.value}}</span>
<span title="{{ localize 'VERMINE.learning' }}">{{item.system.learn.threshold}}/{{item.system.learn.hindrance}}</span>
</div>
<div class="item-controls flexrow">
{{#if @root.isEditMode}}
<a class="item-control item-delete" data-action="delete" data-item-id="{{item._id}}" title="{{ localize 'UI.effect_delete' }}"><i class="fas fa-trash"></i></a>
{{/if}}
</div>
</li>
{{/each}}
</ol>
</div>
{{!-- Specialties --}}
<div>
<h4>
+56 -15
View File
@@ -1,23 +1,64 @@
<div class="{{cssClass}}">
{{> "systems/vermine2047/templates/item/partials/header.hbs"}}
{{> "systems/vermine2047/templates/item/partials/header.hbs"}}
<section class="sheet-body">
{{> "systems/vermine2047/templates/item/partials/traits.hbs"}}
<section class="sheet-body">
{{> "systems/vermine2047/templates/item/partials/traits.hbs"}}
<section class="vehicle-fields">
<h3>{{ localize "VERMINE.vehicle_specs" }}</h3>
<div class="flexrow">
<div class="resource align-center flexcol">
<label class="resource-label">{{ localize "VERMINE.kind" }}</label>
<select name="system.kind" data-dtype="String">
<option value="vehicle" {{#ife system.kind "vehicle"}}selected{{/ife}}>{{ localize "VERMINE.kind_vehicle" }}</option>
<option value="mount" {{#ife system.kind "mount"}}selected{{/ife}}>{{ localize "VERMINE.kind_mount" }}</option>
</select>
</div>
<div class="resource align-center flexcol">
<label class="resource-label">{{ localize "VERMINE.distance" }}</label>
<div class="hexa"><input type="number" name="system.distance" value="{{system.distance}}" data-dtype="Number" /></div>
<span class="unit">km</span>
</div>
<div class="resource align-center flexcol">
<label class="resource-label">{{ localize "VERMINE.speed" }}</label>
<div class="flexrow align-center">
<input type="number" name="system.speed.cruise" value="{{system.speed.cruise}}" data-dtype="Number" />
<span>/</span>
<input type="number" name="system.speed.top" value="{{system.speed.top}}" data-dtype="Number" />
</div>
<input type="text" name="system.speed.topDuration" value="{{system.speed.topDuration}}" placeholder="{{ localize 'VERMINE.speed_duration_ph' }}" />
</div>
</div>
<div class="flexrow">
<div class="resource flexrow align-center">
<label class="resource-label">{{ localize "VERMINE.mobility"}}</label>
<div class="hexa">
<input type="number" name="system.mobility" value="{{system.mobility}}" data-dtype="Number"/>
</div>
</div>
<div class="flexrow">
<div class="resource align-center flexcol">
<label class="resource-label">{{ localize "VERMINE.effort_reserve" }}</label>
<div class="flexrow align-center">
<div class="hexa"><input type="number" name="system.effortReserve.value" value="{{system.effortReserve.value}}" data-dtype="Number" /></div>
<span>/</span>
<div class="hexa"><input type="number" name="system.effortReserve.max" value="{{system.effortReserve.max}}" data-dtype="Number" /></div>
</div>
</div>
<div class="resource align-center flexcol">
<label class="resource-label">{{ localize "VERMINE.mobility" }}</label>
<div class="hexa"><input type="number" name="system.mobility" value="{{system.mobility}}" data-dtype="Number" /></div>
</div>
</div>
<div class="maintenance">
<label class="resource-label">{{ localize "VERMINE.maintenance" }}</label>
<div class="flexrow flex-wrap">
{{#each maintenanceSkills}}
<label class="flexrow align-center">
<input type="checkbox" name="system.maintenance" value="{{ this.key }}" {{#if this.checked}}checked{{/if}} />
<span>{{ this.label }}</span>
</label>
{{/each}}
</div>
</div>
</section>
</div>
{{> "systems/vermine2047/templates/item/partials/physicalItems.hbs"}}
</section>
{{> "systems/vermine2047/templates/item/partials/physicalItems.hbs"}}
</section>
</div>