Fix: Correction des taux de conversion monétaire selon le lore Mournblade

- Ancienne conversion : 1 PO = 400 SC, 1 PA = 20 SC (incorrect)
- Nouvelle conversion : 1 PO = 100 SC, 1 PA = 10 SC (selon le lore)

Selon le lore des Jeunes Royaumes :
- 1 Sou d'Argent (SA) = 10 Pièces de Bronze (PB)
- 1 Pièce d'Or (PO) = 10 Sous d'Argent = 100 Pièces de Bronze

Correspondance dans le code :
- SC = Pièces de Bronze (PB)
- PA/CA = Sous d'Argent (SA)
- PO = Pièces d'Or (PO)

Fichiers modifiés :
- mournblade-cyd2-utility.js : Helper calculateItemValueSC et computeMonnaieDetails
- mournblade-cyd2-actor.js : computeValeurEquipement()

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
2026-06-07 19:12:17 +02:00
parent 4f675cb5c1
commit 59fa8c72ff
2 changed files with 20 additions and 5 deletions
+18 -3
View File
@@ -49,6 +49,19 @@ export class MournbladeCYD2Utility {
Handlebars.registerHelper('subtract', function (a, b) {
return parseInt(a) - parseInt(b);
})
// Helper pour calculer la valeur totale d'un item en SC (Sous de Cuivre / Pièces de Bronze)
// Conversion selon le lore Mournblade :
// 1 SA (Sou d'Argent / Pièce d'Argent) = 10 PB (Pièces de Bronze / Sous de Cuivre)
// 1 PO (Pièce d'Or) = 10 SA = 100 PB
// Donc : 1 CA = 10 SC, 1 PO = 100 SC
Handlebars.registerHelper('calculateItemValueSC', function (prixpo, prixca, prixsc) {
const po = parseInt(prixpo) || 0;
const ca = parseInt(prixca) || 0;
const sc = parseInt(prixsc) || 0;
return po * 100 + ca * 10 + sc;
});
Handlebars.registerHelper('select', function(value, options) {
const html = options.fn(this);
const escaped = String(value).replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
@@ -333,9 +346,11 @@ export class MournbladeCYD2Utility {
/* -------------------------------------------- */
static computeMonnaieDetails(valueSC) {
let po = Math.floor(valueSC / 400)
let pa = Math.floor((valueSC - (po * 400)) / 20)
let sc = valueSC - (po * 400) - (pa * 20)
// Conversion selon le lore Mournblade :
// 1 PO = 100 SC, 1 CA (PA) = 10 SC
let po = Math.floor(valueSC / 100)
let pa = Math.floor((valueSC - (po * 100)) / 10)
let sc = valueSC - (po * 100) - (pa * 10)
return {
po, pa, sc, valueSC
}