Files
fvtt-celestopol/templates/character-main.hbs
LeRatierBretonnier 65445ae840 Fix styles items : overlay CSS, anomalie NPC/PNJ, checkboxes compétences
- global.less : suppression du ::before cream overlay (causait un masquage
  du header vert sombre sur toutes les fiches items)
  Remplacement : z-index: 1 appliqué à .item-header, .item-tabs, section.tab

- templates/character-main.hbs + npc-main.hbs :
  Correction affichage type anomalie en mode play :
  localize system.anomaly.type → lookup dans anomalyTypes pour label traduit
  'none' s'affiche maintenant 'Aucune'

- templates/npc-competences.hbs :
  Résistance '0 (0)' → 'actuel / total' (format 0/0 plus lisible)

- styles/character.less : skill-level-checkbox
  appearance: none + style custom Art Déco (13×13px, border var(--cel-border),
  checked = fond or, disabled:checked = opaque)
  Remplacement du style browser default (cubes bleus) par des cases élégantes

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-28 18:43:59 +01:00

65 lines
2.8 KiB
Handlebars

<div class="character-main sheet-part">
<header class="sheet-header">
<div class="portrait" data-action="editImage">
<img src="{{actor.img}}" alt="{{actor.name}}" class="actor-portrait {{#unless isEditMode}}click-to-edit{{/unless}}">
</div>
<div class="header-fields">
<div class="charname">
{{#if isEditMode}}
<input type="text" name="name" value="{{actor.name}}" placeholder="{{localize 'CELESTOPOL.Actor.name'}}">
{{else}}
<h1 class="actor-name">{{actor.name}}</h1>
{{/if}}
</div>
<div class="concept-row">
{{#if isEditMode}}
<input type="text" name="system.concept" value="{{system.concept}}" placeholder="{{localize 'CELESTOPOL.Actor.concept'}}">
{{else}}
<span class="concept-display">{{system.concept}}</span>
{{/if}}
</div>
<div class="header-stats-row">
<div class="header-stat initiative">
<label>{{localize "CELESTOPOL.Actor.initiative"}}</label>
<span class="stat-value">{{system.initiative}}</span>
</div>
<div class="header-stat anomaly">
<label>{{localize "CELESTOPOL.Actor.anomaly"}}</label>
{{#if isEditMode}}
<select name="system.anomaly.type">
{{#each anomalyTypes as |atype key|}}
<option value="{{key}}" {{#if (eq key ../system.anomaly.type)}}selected{{/if}}>{{localize atype.label}}</option>
{{/each}}
</select>
<input type="number" name="system.anomaly.value" value="{{system.anomaly.value}}" min="0" max="8" class="anomaly-value">
{{else}}
<span class="anomaly-type-display">{{localize (lookup (lookup anomalyTypes system.anomaly.type) 'label')}}</span>
{{/if}}
</div>
</div>
{{!-- Attributs personnage (Entregent, Fortune, Rêve, Vision) --}}
<div class="perso-attributs">
{{#each system.attributs as |attr key|}}
<div class="perso-attr">
<label>{{localize (concat "CELESTOPOL.Attribut." key)}}</label>
{{#if ../isEditMode}}
<input type="number" name="system.attributs.{{key}}.value" value="{{attr.value}}" min="0" class="attr-val">
<span>/</span>
<input type="number" name="system.attributs.{{key}}.max" value="{{attr.max}}" min="0" class="attr-max">
{{else}}
<span class="attr-display">{{attr.value}} / {{attr.max}}</span>
{{/if}}
</div>
{{/each}}
</div>
</div>
<div class="header-buttons">
<a class="toggle-sheet" data-action="toggleSheet" title="{{#if isEditMode}}{{localize 'CELESTOPOL.Sheet.playMode'}}{{else}}{{localize 'CELESTOPOL.Sheet.editMode'}}{{/if}}">
<i class="fas {{#if isEditMode}}fa-eye{{else}}fa-edit{{/if}}"></i>
</a>
</div>
</header>
</div>