Files
fvtt-chroniques-de-l-etrange/templates/form/cde-weapon-dice-prompt.html
T
uberwald 6b2ead8fbb feat: portée armes, récupération 3T, socket loksyu, import batch
Portée des armes
- Suppression des malus de portée (mediane/longue/extreme)
- Sélecteur filtré : seules les portées <= portée max de l'arme

Récupération (3 Trésors)
- Nouveau bouton dans l'onglet Trésors
- Jet basé sur l'aspect du Gardien Céleste
- Dé pair : +1 Hei Yang, +1 San
- Dé impair : +1 Hei Yin, +1 Zing
- Fenêtre de bonus dice pour les pouvoirs (Acupuncture...)
- Ignore les malus de palier San/Zing

Socket Loksyu/TinJi
- Les joueurs peuvent mettre à jour Loksyu/TinJi via socket
- Le MJ proxy les écritures (game.settings world = GM only)
- Opérations atomiques pour éviter les races conditions (roll simultanés)

Import batch
- 4 nouveaux migrators item (weapon/armor/sanhei/ingredient)
- magicOrder dans la migration character
- Confirmation en 2 clics avant l'import
- Détection des doublons avec le monde
- Progression en direct pendant l'import
- Dédoublonnage non-silencieux + flag _duplicate calculé en direct

UI
- Noms d'items en Signika (plus lisible qu'Averia)
- ASCII art au lancement dans la console
- Clés i18n manquantes ajoutées (BonusMalus, EnablePrompt, Material, Roll, ThrowType)

Fix divers
- Calcul puissance sort : utilise l'élément de la spécialité, pas celui de l'école
- preLocalizeConfig préserve labelelementkey pour la résolution d'aspect
- combat.js: guard undefined ids dans rollInitiative
2026-06-28 19:18:03 +02:00

103 lines
5.2 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<div class="cde-roll-prompt cde-weapon-prompt {{cssClass}}">
{{!-- Weapon identity bar --}}
<div class="cde-weapon-info-bar">
<img class="cde-weapon-aspect-icon" src="{{weaponAspectIcon}}" alt="{{weaponAspectLabel}}" />
<div class="cde-weapon-info-text">
<span class="cde-weapon-info-name">{{weaponName}}</span>
<span class="cde-weapon-info-meta">{{ localize weaponTypeLabel }} · {{ localize "CDE.DamageBase" }}: {{damageBase}}</span>
</div>
<div class="cde-weapon-info-badge">
<i class="fas fa-dice-d10"></i>
</div>
</div>
<div class="cde-roll-header">
<span class="cde-roll-title">{{ localize "CDE.WeaponRollTitle" }}</span>
<span class="cde-roll-dice-count">{{numberofdice}}<span class="cde-roll-dice-label">d10</span></span>
</div>
<div class="cde-roll-section">
<div class="cde-roll-field">
<label>{{ localize "CDE.Skill" }}</label>
<select name="weaponskill">
<option value="kungfu" {{#if (eq weaponskill "kungfu")}}selected{{/if}}>{{ localize "CDE.KungFu" }}</option>
<option value="rangedcombat" {{#if (eq weaponskill "rangedcombat")}}selected{{/if}}>{{ localize "CDE.RangedCombat" }}</option>
</select>
</div>
<div class="cde-roll-field">
<label>{{ localize "CDE.Aspect" }}</label>
<select name="aspect">
<option value="0" {{#if (eq aspect 0)}}selected{{/if}}>{{ localize "CDE.Metal" }}</option>
<option value="1" {{#if (eq aspect 1)}}selected{{/if}}>{{ localize "CDE.Water" }}</option>
<option value="2" {{#if (eq aspect 2)}}selected{{/if}}>{{ localize "CDE.Earth" }}</option>
<option value="3" {{#if (eq aspect 3)}}selected{{/if}}>{{ localize "CDE.Fire" }}</option>
<option value="4" {{#if (eq aspect 4)}}selected{{/if}}>{{ localize "CDE.Wood" }}</option>
</select>
</div>
</div>
<div class="cde-roll-section">
<div class="cde-roll-field">
<label>{{ localize "CDE.EffectiveRange" }}</label>
<select name="effectiverange">
{{#each validRanges}}
<option value="{{value}}" {{#if selected}}selected{{/if}}>{{ localize label }}</option>
{{/each}}
</select>
</div>
<div class="cde-roll-field">
<label>{{ localize "CDE.BonusMalus" }}</label>
<select name="bonusmalus">
<option value="-5" {{#if (eq bonusmalus -5)}}selected{{/if}}>5 dés</option>
<option value="-4" {{#if (eq bonusmalus -4)}}selected{{/if}}>4 dés</option>
<option value="-3" {{#if (eq bonusmalus -3)}}selected{{/if}}>3 dés</option>
<option value="-2" {{#if (eq bonusmalus -2)}}selected{{/if}}>2 dés</option>
<option value="-1" {{#if (eq bonusmalus -1)}}selected{{/if}}>1 dé</option>
<option value="0" {{#if (eq bonusmalus 0)}}selected{{/if}}>0 (aucun)</option>
<option value="1" {{#if (eq bonusmalus 1)}}selected{{/if}}>+1 dé</option>
<option value="2" {{#if (eq bonusmalus 2)}}selected{{/if}}>+2 dés</option>
<option value="3" {{#if (eq bonusmalus 3)}}selected{{/if}}>+3 dés</option>
<option value="4" {{#if (eq bonusmalus 4)}}selected{{/if}}>+4 dés</option>
<option value="5" {{#if (eq bonusmalus 5)}}selected{{/if}}>+5 dés</option>
</select>
</div>
</div>
<div class="cde-roll-section">
<div class="cde-roll-field">
<label>{{ localize "CDE.WoundMalus" }}</label>
<select name="woundmalus">
<option value="0" {{#if (eq woundmalus 0)}}selected{{/if}}>0 — Indemne</option>
<option value="-1" {{#if (eq woundmalus -1)}}selected{{/if}}>1 dé — Blessé</option>
<option value="-2" {{#if (eq woundmalus -2)}}selected{{/if}}>2 dés — Gravement blessé</option>
<option value="-3" {{#if (eq woundmalus -3)}}selected{{/if}}>3 dés — Critique</option>
</select>
</div>
<div class="cde-roll-field">
<label>{{ localize "CDE.BonusAuspiciousDice" }}</label>
<select name="bonusauspiciousdice">
<option value="0" {{#if (eq bonusauspiciousdice 0)}}selected{{/if}}>0 dé-faste</option>
<option value="1" {{#if (eq bonusauspiciousdice 1)}}selected{{/if}}>1 dé-faste</option>
<option value="2" {{#if (eq bonusauspiciousdice 2)}}selected{{/if}}>2 dés-fastes</option>
<option value="3" {{#if (eq bonusauspiciousdice 3)}}selected{{/if}}>3 dés-fastes</option>
<option value="4" {{#if (eq bonusauspiciousdice 4)}}selected{{/if}}>4 dés-fastes</option>
<option value="5" {{#if (eq bonusauspiciousdice 5)}}selected{{/if}}>5 dés-fastes</option>
</select>
</div>
</div>
<div class="cde-roll-section">
<div class="cde-roll-field">
<label>{{ localize "CDE.TypeOfThrow" }}</label>
<select name="typeofthrow">
<option value="0" {{#if (eq typeofthrow 0)}}selected{{/if}}>{{ localize "CDE.Everybody" }}</option>
<option value="1" {{#if (eq typeofthrow 1)}}selected{{/if}}>{{ localize "CDE.JustDMAndMe" }}</option>
<option value="2" {{#if (eq typeofthrow 2)}}selected{{/if}}>{{ localize "CDE.DMOnly" }}</option>
<option value="3" {{#if (eq typeofthrow 3)}}selected{{/if}}>{{ localize "CDE.MeOnly" }}</option>
</select>
</div>
</div>
</div>