Portraits et corrections sur valeurs des PNJ
Some checks failed
Release Creation / build (release) Failing after 1m24s
Some checks failed
Release Creation / build (release) Failing after 1m24s
This commit is contained in:
@@ -1,92 +1,122 @@
|
||||
<div class="tab biography {{tab.cssClass}}" data-group="sheet" data-tab="biography">
|
||||
|
||||
{{!-- Description Physique --}}
|
||||
<div class="biography-section">
|
||||
<div class="section-header">{{localize "CELESTOPOL.Actor.descriptionPhysique"}}</div>
|
||||
{{formInput systemFields.descriptionPhysique enriched=enrichedDescriptionPhysique value=system.descriptionPhysique name="system.descriptionPhysique" toggled=true}}
|
||||
</div>
|
||||
|
||||
{{!-- Description Psychologique --}}
|
||||
<div class="biography-section">
|
||||
<div class="section-header">{{localize "CELESTOPOL.Actor.descriptionPsychologique"}}</div>
|
||||
{{formInput systemFields.descriptionPsychologique enriched=enrichedDescriptionPsychologique value=system.descriptionPsychologique name="system.descriptionPsychologique" toggled=true}}
|
||||
</div>
|
||||
|
||||
{{!-- Notes --}}
|
||||
<div class="notes-section">
|
||||
<div class="section-header">{{localize "CELESTOPOL.Actor.notes"}}</div>
|
||||
{{formInput systemFields.notes enriched=enrichedNotes value=system.notes name="system.notes" toggled=true}}
|
||||
</div>
|
||||
|
||||
{{!-- Section XP --}}
|
||||
<div class="xp-section">
|
||||
<div class="section-header">{{localize "CELESTOPOL.XP.title"}}</div>
|
||||
|
||||
<div class="xp-counters">
|
||||
<div class="xp-counter">
|
||||
<label>{{localize "CELESTOPOL.XP.actuel"}}</label>
|
||||
{{formInput systemFields.xp.fields.actuel value=system.xp.actuel name="system.xp.actuel"}}
|
||||
<div class="biography-layout">
|
||||
<div class="biography-main">
|
||||
{{!-- Description Physique --}}
|
||||
<div class="biography-section">
|
||||
<div class="section-header">{{localize "CELESTOPOL.Actor.descriptionPhysique"}}</div>
|
||||
{{formInput systemFields.descriptionPhysique enriched=enrichedDescriptionPhysique value=system.descriptionPhysique name="system.descriptionPhysique" toggled=true}}
|
||||
</div>
|
||||
<div class="xp-counter xp-depense-counter">
|
||||
<label>{{localize "CELESTOPOL.XP.depense"}}</label>
|
||||
<span class="xp-depense-value">{{system.xp.depense}}</span>
|
||||
|
||||
{{!-- Description Psychologique --}}
|
||||
<div class="biography-section">
|
||||
<div class="section-header">{{localize "CELESTOPOL.Actor.descriptionPsychologique"}}</div>
|
||||
{{formInput systemFields.descriptionPsychologique enriched=enrichedDescriptionPsychologique value=system.descriptionPsychologique name="system.descriptionPsychologique" toggled=true}}
|
||||
</div>
|
||||
|
||||
{{!-- Historique --}}
|
||||
<div class="biography-section">
|
||||
<div class="section-header">{{localize "CELESTOPOL.Actor.historique"}}</div>
|
||||
{{formInput systemFields.historique enriched=enrichedHistorique value=system.historique name="system.historique" toggled=true}}
|
||||
</div>
|
||||
|
||||
{{!-- Notes --}}
|
||||
<div class="notes-section">
|
||||
<div class="section-header">{{localize "CELESTOPOL.Actor.notes"}}</div>
|
||||
{{formInput systemFields.notes enriched=enrichedNotes value=system.notes name="system.notes" toggled=true}}
|
||||
</div>
|
||||
|
||||
{{!-- Section XP --}}
|
||||
<div class="xp-section">
|
||||
<div class="section-header">{{localize "CELESTOPOL.XP.title"}}</div>
|
||||
|
||||
<div class="xp-counters">
|
||||
<div class="xp-counter">
|
||||
<label>{{localize "CELESTOPOL.XP.actuel"}}</label>
|
||||
{{formInput systemFields.xp.fields.actuel value=system.xp.actuel name="system.xp.actuel"}}
|
||||
</div>
|
||||
<div class="xp-counter xp-depense-counter">
|
||||
<label>{{localize "CELESTOPOL.XP.depense"}}</label>
|
||||
<span class="xp-depense-value">{{system.xp.depense}}</span>
|
||||
</div>
|
||||
{{#if isPlayMode}}
|
||||
<button type="button" class="xp-btn-depenser" data-action="depenseXp">
|
||||
<i class="fa-solid fa-coins"></i> {{localize "CELESTOPOL.XP.depenser"}}
|
||||
</button>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
{{!-- Log des dépenses --}}
|
||||
{{#unless xpLogEmpty}}
|
||||
<table class="xp-log-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{{localize "CELESTOPOL.XP.date"}}</th>
|
||||
<th>{{localize "CELESTOPOL.XP.raison"}}</th>
|
||||
<th>{{localize "CELESTOPOL.XP.montant"}}</th>
|
||||
{{#if isEditMode}}<th></th>{{/if}}
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{#each system.xp.log}}
|
||||
<tr>
|
||||
<td class="xp-date">{{this.date}}</td>
|
||||
<td class="xp-raison">{{this.raison}}</td>
|
||||
<td class="xp-montant">−{{this.montant}}</td>
|
||||
{{#if ../isEditMode}}
|
||||
<td class="xp-suppr-cell">
|
||||
<button type="button" class="xp-btn-suppr" data-action="supprimerXpLog"
|
||||
data-idx="{{@index}}" title="{{localize 'CELESTOPOL.XP.supprimer'}}">
|
||||
<i class="fa-solid fa-trash"></i>
|
||||
</button>
|
||||
</td>
|
||||
{{/if}}
|
||||
</tr>
|
||||
{{/each}}
|
||||
</tbody>
|
||||
</table>
|
||||
{{/unless}}
|
||||
|
||||
{{!-- Tableau de référence des coûts --}}
|
||||
<details class="xp-ref">
|
||||
<summary>{{localize "CELESTOPOL.XP.refTitle"}}</summary>
|
||||
<table class="xp-ref-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{{localize "CELESTOPOL.XP.refAmelioration"}}</th>
|
||||
<th>{{localize "CELESTOPOL.XP.refCout"}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr><td>{{localize "CELESTOPOL.XP.refAugmenterSpec"}}</td><td>{{localize "CELESTOPOL.XP.refCoutNiveau"}}</td></tr>
|
||||
<tr><td>{{localize "CELESTOPOL.XP.refAcquerirAspect"}}</td><td>5</td></tr>
|
||||
<tr><td>{{localize "CELESTOPOL.XP.refAugmenterAspect"}}</td><td>5</td></tr>
|
||||
<tr><td>{{localize "CELESTOPOL.XP.refAcquerirAttribut"}}</td><td>{{localize "CELESTOPOL.XP.refCoutAttributTotal"}}</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</details>
|
||||
</div>
|
||||
{{#if isPlayMode}}
|
||||
<button type="button" class="xp-btn-depenser" data-action="depenseXp">
|
||||
<i class="fa-solid fa-coins"></i> {{localize "CELESTOPOL.XP.depenser"}}
|
||||
</button>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
{{!-- Log des dépenses --}}
|
||||
{{#unless xpLogEmpty}}
|
||||
<table class="xp-log-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{{localize "CELESTOPOL.XP.date"}}</th>
|
||||
<th>{{localize "CELESTOPOL.XP.raison"}}</th>
|
||||
<th>{{localize "CELESTOPOL.XP.montant"}}</th>
|
||||
{{#if isEditMode}}<th></th>{{/if}}
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{#each system.xp.log}}
|
||||
<tr>
|
||||
<td class="xp-date">{{this.date}}</td>
|
||||
<td class="xp-raison">{{this.raison}}</td>
|
||||
<td class="xp-montant">−{{this.montant}}</td>
|
||||
{{#if ../isEditMode}}
|
||||
<td class="xp-suppr-cell">
|
||||
<button type="button" class="xp-btn-suppr" data-action="supprimerXpLog"
|
||||
data-idx="{{@index}}" title="{{localize 'CELESTOPOL.XP.supprimer'}}">
|
||||
<i class="fa-solid fa-trash"></i>
|
||||
</button>
|
||||
</td>
|
||||
{{/if}}
|
||||
</tr>
|
||||
{{/each}}
|
||||
</tbody>
|
||||
</table>
|
||||
{{/unless}}
|
||||
|
||||
{{!-- Tableau de référence des coûts --}}
|
||||
<details class="xp-ref">
|
||||
<summary>{{localize "CELESTOPOL.XP.refTitle"}}</summary>
|
||||
<table class="xp-ref-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{{localize "CELESTOPOL.XP.refAmelioration"}}</th>
|
||||
<th>{{localize "CELESTOPOL.XP.refCout"}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr><td>{{localize "CELESTOPOL.XP.refAugmenterSpec"}}</td><td>{{localize "CELESTOPOL.XP.refCoutNiveau"}}</td></tr>
|
||||
<tr><td>{{localize "CELESTOPOL.XP.refAcquerirAspect"}}</td><td>5</td></tr>
|
||||
<tr><td>{{localize "CELESTOPOL.XP.refAugmenterAspect"}}</td><td>5</td></tr>
|
||||
<tr><td>{{localize "CELESTOPOL.XP.refAcquerirAttribut"}}</td><td>{{localize "CELESTOPOL.XP.refCoutAttributTotal"}}</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</details>
|
||||
<aside class="biography-portrait-panel">
|
||||
<div class="section-header">{{localize "CELESTOPOL.Actor.portraitImage"}}</div>
|
||||
<div class="biography-portrait-preview">
|
||||
{{#if hasBiographyPortrait}}
|
||||
<img src="{{biographyPortrait}}" alt="{{actor.name}}" class="biography-portrait-image">
|
||||
{{else}}
|
||||
<div class="biography-portrait-empty">{{localize "CELESTOPOL.Actor.portraitImageEmpty"}}</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="biography-portrait-actions">
|
||||
<button type="button" class="biography-portrait-send" data-action="sendBiographyPortrait" {{#unless hasBiographyPortrait}}disabled{{/unless}}>
|
||||
<i class="fa-solid fa-image"></i> {{localize "CELESTOPOL.Actor.sendPortraitToChat"}}
|
||||
</button>
|
||||
</div>
|
||||
{{#if isEditMode}}
|
||||
<div class="biography-portrait-field">
|
||||
<file-picker type="image" name="system.portraitImage" value="{{system.portraitImage}}"></file-picker>
|
||||
</div>
|
||||
<p class="biography-portrait-hint">{{localize "CELESTOPOL.Actor.portraitImageHint"}}</p>
|
||||
{{/if}}
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -1,48 +1,72 @@
|
||||
<div class="tab biographie {{tab.cssClass}}" data-group="sheet" data-tab="biographie">
|
||||
<div class="biography-layout">
|
||||
<div class="biography-main">
|
||||
{{!-- Faction --}}
|
||||
<div class="bio-section faction-section">
|
||||
<div class="section-header">
|
||||
<i class="fas fa-flag"></i>
|
||||
<span>{{localize "CELESTOPOL.NPC.faction"}}</span>
|
||||
</div>
|
||||
{{#if isEditMode}}
|
||||
<div class="form-row-line faction-select-row">
|
||||
<label for="system.faction">{{localize "CELESTOPOL.NPC.factionLabel"}}</label>
|
||||
<select name="system.faction" id="faction-select">
|
||||
<option value="" {{#unless system.faction}}selected{{/unless}}>— {{localize "CELESTOPOL.NPC.factionNone"}} —</option>
|
||||
{{#each factions as |faction key|}}
|
||||
<option value="{{key}}" {{#if (eq key ../system.faction)}}selected{{/if}}>{{localize faction.label}}</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class="faction-display">
|
||||
{{#if system.faction}}
|
||||
<span class="faction-name">{{localize (lookup (lookup factions system.faction) 'label')}}</span>
|
||||
{{else}}
|
||||
<span class="faction-none">{{localize "CELESTOPOL.NPC.factionNone"}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
{{!-- Faction --}}
|
||||
<div class="bio-section faction-section">
|
||||
<div class="section-header">
|
||||
<i class="fas fa-flag"></i>
|
||||
<span>{{localize "CELESTOPOL.NPC.faction"}}</span>
|
||||
{{!-- Histoire --}}
|
||||
<div class="bio-section">
|
||||
<div class="section-header">
|
||||
<i class="fas fa-scroll"></i>
|
||||
<span>{{localize "CELESTOPOL.NPC.histoire"}}</span>
|
||||
</div>
|
||||
{{formInput systemFields.histoire enriched=enrichedHistoire value=system.histoire name="system.histoire" toggled=true}}
|
||||
</div>
|
||||
|
||||
{{!-- Description Physique --}}
|
||||
<div class="bio-section">
|
||||
<div class="section-header">
|
||||
<i class="fas fa-user"></i>
|
||||
<span>{{localize "CELESTOPOL.NPC.descriptionPhysique"}}</span>
|
||||
</div>
|
||||
{{formInput systemFields.descriptionPhysique enriched=enrichedDescriptionPhysique value=system.descriptionPhysique name="system.descriptionPhysique" toggled=true}}
|
||||
</div>
|
||||
</div>
|
||||
{{#if isEditMode}}
|
||||
<div class="form-row-line faction-select-row">
|
||||
<label for="system.faction">{{localize "CELESTOPOL.NPC.factionLabel"}}</label>
|
||||
<select name="system.faction" id="faction-select">
|
||||
<option value="" {{#unless system.faction}}selected{{/unless}}>— {{localize "CELESTOPOL.NPC.factionNone"}} —</option>
|
||||
{{#each factions as |faction key|}}
|
||||
<option value="{{key}}" {{#if (eq key ../system.faction)}}selected{{/if}}>{{localize faction.label}}</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class="faction-display">
|
||||
{{#if system.faction}}
|
||||
<span class="faction-name">{{localize (lookup (lookup factions system.faction) 'label')}}</span>
|
||||
{{else}}
|
||||
<span class="faction-none">{{localize "CELESTOPOL.NPC.factionNone"}}</span>
|
||||
|
||||
<aside class="biography-portrait-panel">
|
||||
<div class="section-header">{{localize "CELESTOPOL.Actor.portraitImage"}}</div>
|
||||
<div class="biography-portrait-preview">
|
||||
{{#if hasBiographyPortrait}}
|
||||
<img src="{{biographyPortrait}}" alt="{{actor.name}}" class="biography-portrait-image">
|
||||
{{else}}
|
||||
<div class="biography-portrait-empty">{{localize "CELESTOPOL.Actor.portraitImageEmpty"}}</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="biography-portrait-actions">
|
||||
<button type="button" class="biography-portrait-send" data-action="sendBiographyPortrait" {{#unless hasBiographyPortrait}}disabled{{/unless}}>
|
||||
<i class="fa-solid fa-image"></i> {{localize "CELESTOPOL.Actor.sendPortraitToChat"}}
|
||||
</button>
|
||||
</div>
|
||||
{{#if isEditMode}}
|
||||
<div class="biography-portrait-field">
|
||||
<file-picker type="image" name="system.portraitImage" value="{{system.portraitImage}}"></file-picker>
|
||||
</div>
|
||||
<p class="biography-portrait-hint">{{localize "CELESTOPOL.Actor.portraitImageHint"}}</p>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
{{!-- Histoire --}}
|
||||
<div class="bio-section">
|
||||
<div class="section-header">
|
||||
<i class="fas fa-scroll"></i>
|
||||
<span>{{localize "CELESTOPOL.NPC.histoire"}}</span>
|
||||
</div>
|
||||
{{formInput systemFields.histoire enriched=enrichedHistoire value=system.histoire name="system.histoire" toggled=true}}
|
||||
</div>
|
||||
|
||||
{{!-- Description Physique --}}
|
||||
<div class="bio-section">
|
||||
<div class="section-header">
|
||||
<i class="fas fa-user"></i>
|
||||
<span>{{localize "CELESTOPOL.NPC.descriptionPhysique"}}</span>
|
||||
</div>
|
||||
{{formInput systemFields.descriptionPhysique enriched=enrichedDescriptionPhysique value=system.descriptionPhysique name="system.descriptionPhysique" toggled=true}}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
<div class="npc-domain-value-wrap">
|
||||
{{#if ../isEditMode}}
|
||||
<input type="number" name="system.stats.{{statId}}.res"
|
||||
value="{{lookup ../system.stats statId 'res'}}" min="0" max="8" class="domain-value-input">
|
||||
value="{{lookup ../system.stats statId 'res'}}" min="0" class="domain-value-input">
|
||||
{{else}}
|
||||
<div class="npc-domain-roll-btn rollable" data-stat-id="{{statId}}"
|
||||
title="{{localize 'CELESTOPOL.Roll.clickToRoll'}}">
|
||||
|
||||
Reference in New Issue
Block a user