From 179ea0c85b5eb58b007217b183cd4f06ec3cb700 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 24 Jun 2023 00:34:30 +0200 Subject: [PATCH 1/7] Fix: selection de TMR des signes draconiques --- module/dialog-create-signedraconique.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/dialog-create-signedraconique.js b/module/dialog-create-signedraconique.js index d59e60df..0620864d 100644 --- a/module/dialog-create-signedraconique.js +++ b/module/dialog-create-signedraconique.js @@ -111,7 +111,7 @@ export class DialogCreateSigneDraconique extends Dialog { onSelectTmr(event) { const tmrName = this.html.find(event.currentTarget)?.data("tmr-name"); - const onTmr = this.tmrs.find(it => it.name == tmrName); + const onTmr = this.dialogData.tmrs.find(it => it.name == tmrName); if (onTmr){ onTmr.selected = event.currentTarget.checked; } From 9e95a44efd5ed2aee8c9f2480283b2ea5a699f5b Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 24 Jun 2023 00:35:03 +0200 Subject: [PATCH 2/7] =?UTF-8?q?Fix:=20click=20pour=20se=20d=C3=A9placer=20?= =?UTF-8?q?dans=20les=20TMR?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- module/rdd-tmr-dialog.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/rdd-tmr-dialog.js b/module/rdd-tmr-dialog.js index 6d43df08..f9a47ba0 100644 --- a/module/rdd-tmr-dialog.js +++ b/module/rdd-tmr-dialog.js @@ -906,7 +906,7 @@ export class RdDTMRDialog extends Dialog { if (this.viewOnly) { return; } - let clickOddq = RdDTMRDialog._computeEventOddq(event.data.originalEvent); + let clickOddq = RdDTMRDialog._computeEventOddq(event.nativeEvent); await this._onClickTMRPos(clickOddq); // Vérifier l'état des compteurs reve/fatigue/vie } From a43ceb318862182db72fafdeb5fd41ac9176d714 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 24 Jun 2023 00:44:50 +0200 Subject: [PATCH 3/7] Fix: lire depuis un livre --- module/actor/base-actor.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/actor/base-actor.js b/module/actor/base-actor.js index 29e82b7e..8acd2ffc 100644 --- a/module/actor/base-actor.js +++ b/module/actor/base-actor.js @@ -119,7 +119,7 @@ export class RdDBaseActor extends Actor { } listItems(type = undefined) { return (type ? this.itemTypes[type] : this.items); } - filterItems(filter, type = undefined) { return type ? this.itemTypes[type]?.filter(filter) ?? [] : []; } + filterItems(filter, type = undefined) { return (type ? this.itemTypes[type] : this.items)?.filter(filter) ?? []; } findItemLike(idOrName, type) { return this.getItem(idOrName, type) ?? Misc.findFirstLike(idOrName, this.listItems(type), { description: Misc.typeName('Item', type) }); From 3001ae44de26444f233e1e149a4a721e308cef11 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 24 Jun 2023 00:58:45 +0200 Subject: [PATCH 4/7] =?UTF-8?q?Endurance=20limit=C3=A9e=20en=20cas=20d'ins?= =?UTF-8?q?omnie?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- module/actor.js | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/module/actor.js b/module/actor.js index c6848e1b..f77aea82 100644 --- a/module/actor.js +++ b/module/actor.js @@ -621,14 +621,14 @@ export class RdDActor extends RdDBaseActor { whisper: ChatUtility.getWhisperRecipientsAndGMs(this.name), content: this.name + ': ' }; - await this.recupereEndurance(message); - if (this.system.sommeil?.insomnie || heures == 0) { + const insomnie = this.system.sommeil?.insomnie || heures == 0; + await this.recupereEndurance({message:message, demi:insomnie}); + if (insomnie) { message.content += 'Vous ne trouvez pas le sommeil'; } else { let jetsReve = []; let dormi = await this.dormirDesHeures(jetsReve, message, heures, options); - message.content += `Vous dormez ${dormi.heures <= 1 ? 'une heure' : (dormi.heures + ' heures')}. `; if (jetsReve.length > 0) { message.content += `Vous récupérez ${jetsReve.filter(it => it >= 0).reduce(Misc.joining("+"))} Points de rêve. `; } @@ -636,6 +636,7 @@ export class RdDActor extends RdDBaseActor { message.content += 'Vous êtes réveillé par un Rêve de Dragon.' } options.chateauDormant = options.chateauDormant && dormi.heures >= heures; + message.content += `Vous avez dormi ${dormi.heures <= 1 ? 'une heure' : (dormi.heures + ' heures')}. `; } if (!options.grisReve) { @@ -702,8 +703,13 @@ export class RdDActor extends RdDBaseActor { } /* -------------------------------------------- */ - async recupereEndurance(message) { - const manquant = this._computeEnduranceMax() - this.system.sante.endurance.value; + async recupereEndurance({message, demi}) { + let max = this._computeEnduranceMax(); + if (demi) { + max = Math.floor(max/2); + } + const manquant = max - this.system.sante.endurance.value; + if (manquant > 0) { await this.santeIncDec("endurance", manquant); message.content += `Vous récuperez ${manquant} points d'endurance. `; @@ -1706,6 +1712,7 @@ export class RdDActor extends RdDBaseActor { await this.rollTache(tache.id); } } + async actionHerbe(item, onActionItem = async () => { }) { if (item.isHerbeAPotion()) { return DialogFabriquerPotion.create(this, item, onActionItem); From 78336a3f452af04cb2603a0588eba23870dc1160 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 24 Jun 2023 01:19:43 +0200 Subject: [PATCH 5/7] =?UTF-8?q?Fix:=20affichage=20sommeil=20avec=20RdD=20p?= =?UTF-8?q?remi=C3=A8re=20heure?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Le message ne s'affichait pas en cas de rêve de dragon dès la première récupération --- module/actor.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/actor.js b/module/actor.js index f77aea82..0bddf01e 100644 --- a/module/actor.js +++ b/module/actor.js @@ -630,7 +630,7 @@ export class RdDActor extends RdDBaseActor { let jetsReve = []; let dormi = await this.dormirDesHeures(jetsReve, message, heures, options); if (jetsReve.length > 0) { - message.content += `Vous récupérez ${jetsReve.filter(it => it >= 0).reduce(Misc.joining("+"))} Points de rêve. `; + message.content += `Vous récupérez ${jetsReve.map(it => it <0 ? '(dragon)' : it).reduce(Misc.joining("+"))} Points de rêve. `; } if (dormi.etat == 'eveil') { message.content += 'Vous êtes réveillé par un Rêve de Dragon.' From 4b1381e53553e436630d0888daec7cf1656c5783 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 24 Jun 2023 01:41:12 +0200 Subject: [PATCH 6/7] =?UTF-8?q?Decompte=20des=20heure=20en=20cas=20de=20r?= =?UTF-8?q?=C3=A9veil?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Si le gardien gère la durée des nuits, en cas de rêve de dragon, les heures restant à dormir sont mises à jour. --- module/actor.js | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/module/actor.js b/module/actor.js index 0bddf01e..3ce87a7e 100644 --- a/module/actor.js +++ b/module/actor.js @@ -622,7 +622,7 @@ export class RdDActor extends RdDBaseActor { content: this.name + ': ' }; const insomnie = this.system.sommeil?.insomnie || heures == 0; - await this.recupereEndurance({message:message, demi:insomnie}); + await this.recupereEndurance({ message: message, demi: insomnie }); if (insomnie) { message.content += 'Vous ne trouvez pas le sommeil'; } @@ -630,10 +630,10 @@ export class RdDActor extends RdDBaseActor { let jetsReve = []; let dormi = await this.dormirDesHeures(jetsReve, message, heures, options); if (jetsReve.length > 0) { - message.content += `Vous récupérez ${jetsReve.map(it => it <0 ? '(dragon)' : it).reduce(Misc.joining("+"))} Points de rêve. `; + message.content += `Vous récupérez ${jetsReve.map(it => it < 0 ? '(dragon)' : it).reduce(Misc.joining("+"))} Points de rêve. `; } if (dormi.etat == 'eveil') { - message.content += 'Vous êtes réveillé par un Rêve de Dragon.' + await this.reveilReveDeDragon(message, dormi.heures); } options.chateauDormant = options.chateauDormant && dormi.heures >= heures; message.content += `Vous avez dormi ${dormi.heures <= 1 ? 'une heure' : (dormi.heures + ' heures')}. `; @@ -650,6 +650,14 @@ export class RdDActor extends RdDBaseActor { } } + async reveilReveDeDragon(message, heures) { + message.content += 'Vous êtes réveillé par un Rêve de Dragon.'; + const restant = Math.max(this.system.sommeil?.heures - heures, 0) + if (restant > 0) { + await this.update({ 'system.sommeil': { heures: restant } }); + } + } + async dormirDesHeures(jetsReve, message, heures, options) { const dormi = { heures: 0, etat: 'dort' }; for (; dormi.heures < heures && dormi.etat == 'dort'; dormi.heures++) { @@ -703,10 +711,10 @@ export class RdDActor extends RdDBaseActor { } /* -------------------------------------------- */ - async recupereEndurance({message, demi}) { + async recupereEndurance({ message, demi }) { let max = this._computeEnduranceMax(); if (demi) { - max = Math.floor(max/2); + max = Math.floor(max / 2); } const manquant = max - this.system.sante.endurance.value; From 288cf9162c0727c55bc23fed02ce9c62d256a1d9 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 24 Jun 2023 01:48:34 +0200 Subject: [PATCH 7/7] Version v11.0.10 --- changelog.md | 10 ++++++++++ system.json | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/changelog.md b/changelog.md index 41c544ea..f79ce302 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,15 @@ # v11.0 +## v11.0.10 - Les Songes de Khrachtchoum le Problémeux +- on peut de nouveau se déplacer dans les TMRs d'un clic sur la case à atteindre +- Lire un livre depuis l'inventaire permet de nouveau de faire un jet de la tâche + créée au lieu de créer toujours une nouvelle tâche +- La sélection des TMR pour la création de signes draconiques ne cause plus d'erreurs +- la récupération d'endurance en cas d'insomnie est limitée à la moitié +- le résultat du sommeil lors d'un rêve de dragon à la première heure s'affiche normalement +- lorsque le gardien gère la durée des nuits, en cas de rêve de dragon, + les heures dormies sont déduites des heures restant à dormir + ## v11.0.9 - Les Souvenirs de Khrachtchoum le Problémeux - mode de saisie de l'archétype en vue détaillée - création une nouvelle incarnation depuis l'archétype diff --git a/system.json b/system.json index 439ad5bf..e17b8473 100644 --- a/system.json +++ b/system.json @@ -1,8 +1,8 @@ { "id": "foundryvtt-reve-de-dragon", "title": "Rêve de Dragon", - "version": "11.0.9", - "download": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/archive/foundryvtt-reve-de-dragon-11.0.9.zip", + "version": "11.0.10", + "download": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/archive/foundryvtt-reve-de-dragon-11.0.10.zip", "manifest": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/raw/v11/system.json", "changelog": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/raw/branch/v11/changelog.md", "compatibility": {