diff --git a/changelog.md b/changelog.md index 101e3cd0..1f66fea5 100644 --- a/changelog.md +++ b/changelog.md @@ -2,6 +2,9 @@ ## 13.0.22 - Les reflets d'Illysis +- Corrections diverses + - l'encombrement total est affiché avec deux décimales + - le poids des monnaies est de nouveau décimal - Corrections liées à Foundry v12/v13 - Fix ajout de notes dans le journal par un joueur (/chrono, ou clic sur le libelé de l'heure dans l'horloge) diff --git a/module/actor/base-actor.js b/module/actor/base-actor.js index 0c954493..17a3cb6d 100644 --- a/module/actor/base-actor.js +++ b/module/actor/base-actor.js @@ -594,7 +594,7 @@ export class RdDBaseActor extends Actor { } getEncTotal() { - return Math.floor(this.encTotal ?? 0) + return Number(this.encTotal?.toFixed(2) ?? 0.00) } async createItem(type, name = undefined) { diff --git a/module/common/inventaire.mjs b/module/common/inventaire.mjs index 60b5b0b0..03d72596 100644 --- a/module/common/inventaire.mjs +++ b/module/common/inventaire.mjs @@ -7,7 +7,7 @@ const fields = foundry.data.fields export class CommonInventaire extends CommonTemplate { fields() { return { - encombrement: new fields.NumberField({ label: "Encombrement", initial: 0, ...INTEGER }), + encombrement: new fields.NumberField({ label: "Encombrement", initial: 0, ...DECIMAL }), quantite: new fields.NumberField({ label: "Quantité", initial: 1, ...INTEGER }), qualite: new fields.NumberField({ label: "Qualité", initial: 0, ...INTEGER_SIGNED }), cout: new fields.NumberField({ label: "Coût", initial: 0.0, ...DECIMAL }), diff --git a/module/migrations.js b/module/migrations.js index 38814e25..ee3c0ae3 100644 --- a/module/migrations.js +++ b/module/migrations.js @@ -693,6 +693,26 @@ class _13_0_21_AjoutAppreciation extends Migration { } } +class _13_0_22_PoidsDesMonnaies extends Migration { + get code() { return "poid-monnaies" } + get version() { return "13.0.22" } + + async migrate() { + await this.applyItemsUpdates(items => items + .filter(it => it.type == ITEM_TYPES.monnaie) + .map(it => { + return { _id: it.id, 'system.encombrement': this.poids(it) } + }) + ) + } + poids(monnaie) { + if (monnaie.system.cout < 0.05) return 0.001 + if (monnaie.system.cout < 0.5) return 0.002 + if (monnaie.system.cout < 5) return 0.003 + return 0.004 + } +} + export class Migrations { static getMigrations() { return [ @@ -719,6 +739,7 @@ export class Migrations { new _13_0_4_FixReveActuel(), new _13_0_7_FixNiveauOeuvres(), new _13_0_21_AjoutAppreciation(), + new _13_0_22_PoidsDesMonnaies(), ]; }