Nombreuses corrections sur les fiches settlement/NPC

This commit is contained in:
2026-03-22 21:35:47 +01:00
parent ec291e9c60
commit b46c6d804c
51 changed files with 2892 additions and 227 deletions

View File

@@ -1,26 +1,24 @@
<section class="npc-main npc-main-{{ifThen isPlayMode 'play' 'edit'}}">
<fieldset>
<legend>{{localize "OATHHAMMER.Label.NPC"}}</legend>
<legend>
{{#if isPlayMode}}
<span class="npc-subtype-badge npc-subtype-{{system.subtype}}">
{{localize (lookup subtypeLabels system.subtype)}}
</span>
{{else}}
<select name="system.subtype" class="npc-subtype-select">
{{selectOptions subtypeChoices selected=system.subtype}}
</select>
{{/if}}
</legend>
<div class="npc-pc flexrow">
<!-- LEFT: portrait only -->
<div class="npc-left">
<img class="actor-img" src="{{actor.img}}" data-edit="img" data-action="editImage" data-tooltip="{{actor.name}}" />
<fieldset>
<div class="flexrow character-resource">
<span class="resource-label">{{localize "OATHHAMMER.Label.Grit"}}</span>
{{formInput systemFields.grit.fields.value value=system.grit.value name="system.grit.value" disabled=isPlayMode}}
<span>/</span>
<input type="text" value="{{system.grit.max}}" disabled />
</div>
<div class="flexrow character-resource">
<span class="resource-label">{{localize "OATHHAMMER.Label.Defense"}}</span>
{{formInput systemFields.defense.fields.value value=system.defense.value name="system.defense.value" disabled=isPlayMode}}
</div>
<div class="flexrow character-resource">
<span class="resource-label">{{localize "OATHHAMMER.Label.Movement"}}</span>
{{formInput systemFields.movement.fields.base value=system.movement.base name="system.movement.base" disabled=isPlayMode}}
</div>
</fieldset>
</div>
<!-- RIGHT: name + vitals grid + stats -->
<div class="npc-right">
<div class="character-name">
{{formInput fields.name value=source.name rootId=partId disabled=isPlayMode}}
@@ -28,39 +26,49 @@
<i class="fa-solid fa-user-{{ifThen isPlayMode 'lock' 'pen'}}"></i>
</a>
</div>
<fieldset>
<legend>{{localize "OATHHAMMER.Label.Stats"}}</legend>
<div class="flexrow">
<div class="form-group">
<label>{{localize "OATHHAMMER.Label.CR"}}</label>
{{formInput systemFields.challengeRating value=system.challengeRating name="system.challengeRating" disabled=isPlayMode}}
</div>
<div class="form-group">
<label>{{localize "OATHHAMMER.Label.AttackBonus"}}</label>
{{formInput systemFields.attackBonus value=system.attackBonus name="system.attackBonus" disabled=isPlayMode}}
</div>
<div class="form-group">
<label>{{localize "OATHHAMMER.Label.DamageBonus"}}</label>
{{formInput systemFields.damageBonus value=system.damageBonus name="system.damageBonus" disabled=isPlayMode}}
</div>
<div class="form-group">
<label>{{localize "OATHHAMMER.Label.InitiativeBonus"}}</label>
{{formInput systemFields.initiativeBonus value=system.initiativeBonus name="system.initiativeBonus" disabled=isPlayMode}}
</div>
<!-- Vitals: 2×2 grid -->
<div class="npc-vitals-grid">
<div class="npc-vital npc-vital-grit">
<span class="vital-label">{{localize "OATHHAMMER.Label.Grit"}}</span>
<span class="vital-value">
<a class="grit-btn" data-action="adjustGrit" data-delta="-1" data-tooltip="1"></a>
<input type="number" class="npc-num-input" name="system.grit.value" value="{{system.grit.value}}" min="0" />
<span class="res-sep">/</span>
{{formInput systemFields.grit.fields.max value=system.grit.max name="system.grit.max" disabled=isPlayMode}}
<a class="grit-btn" data-action="adjustGrit" data-delta="1" data-tooltip="+1">+</a>
</span>
</div>
</fieldset>
<fieldset>
<legend>{{localize "OATHHAMMER.Label.Attributes"}}</legend>
<div class="attributes-grid">
{{#each system.attributes as |attr key|}}
<div class="attribute-box">
<label>{{localize (concat "OATHHAMMER.Attribute." (capitalize key))}}</label>
{{formInput (lookup ../systemFields.attributes.fields key).fields.rank value=attr.rank name=(concat "system.attributes." key ".rank") disabled=../isPlayMode}}
</div>
{{/each}}
<div class="npc-vital">
<span class="vital-label{{#if isPlayMode}} vital-roll-label{{/if}}"
{{#if isPlayMode}}data-action="rollArmor" data-tooltip="OATHHAMMER.Tooltip.RollArmor"{{/if}}>
{{#if isPlayMode}}<i class="fa-solid fa-dice-d6"></i>{{/if}}
{{localize "OATHHAMMER.Label.ArmorDice"}}
</span>
<span class="vital-value">
<input type="number" class="npc-num-input" name="system.armorDice.value" value="{{system.armorDice.value}}" min="0" {{#if isPlayMode}}disabled{{/if}} />
{{#if isPlayMode}}
<span class="npc-color-badge">{{armorDiceEmoji}}</span>
{{else}}
<select name="system.armorDice.colorDiceType" class="npc-color-select">
{{selectOptions colorChoices selected=system.armorDice.colorDiceType}}
</select>
{{/if}}
</span>
</div>
</fieldset>
</div>
<div class="npc-vital">
<span class="vital-label">{{localize "OATHHAMMER.Label.Movement"}}</span>
<span class="vital-value">
{{formInput systemFields.movement.fields.base value=system.movement.base name="system.movement.base" disabled=isPlayMode}}
</span>
</div>
</div><!-- /npc-vitals-grid -->
</div><!-- /npc-right -->
</div>
</fieldset>
</section>