diff --git a/module/actor.js b/module/actor.js index fadb6bbb..80a3dfbd 100644 --- a/module/actor.js +++ b/module/actor.js @@ -1762,7 +1762,7 @@ export class RdDActor extends Actor { /* -------------------------------------------- */ isRencontreSpeciale() { // Gestion queue/souffle 'Mauvaise Rencontre en Perpective' let addMsg = ""; - let rencSpecial = this.data.items.find(item => (item.type == 'queue' || item.type == 'souffle') && item.name.toLowerCase().includes('mauvaise rencontre')); + let rencSpecial = this.data.items.find(item => RdDItem.isMauvaiseRencontreEnPerspective(item)); if (rencSpecial) { rencSpecial = duplicate(rencSpecial); // To keep it if (rencSpecial.type == 'queue') { @@ -1805,7 +1805,7 @@ export class RdDActor extends Actor { /* -------------------------------------------- */ isDoubleResistanceFleuve() { - let resistFleuve = this.data.items.find(item => item.type == 'souffle' && item.name.toLowerCase().includes('résistance du fleuve')); + let resistFleuve = this.data.items.find(item => RdDItem.isDoubleResistanceFleuve(item)); if (resistFleuve) { ChatMessage.create({ content: "Vous êtes sous le coup d'une Double Résistance du Fleuve : vous devez maîtriser 2 fois chaque case humide, un second jet est donc effectué.", @@ -1839,7 +1839,7 @@ export class RdDActor extends Actor { /* -------------------------------------------- */ isCaseHumideAdditionelle(tmr) { - if (tmr.type == 'pont' && this.data.items.find(it => RdDItem.isSoufflePontImpraticable(it))) { + if (tmr.type == 'pont' && this.data.items.find(it => RdDItem.isPontImpraticable(it))) { ChatMessage.create({ content: tmr.label +": Vous êtes sous le coup d'une Impraticabilité des Ponts : ce pont doit être maîtrisé comme une case humide.", whisper: ChatMessage.getWhisperRecipients(game.user.name) diff --git a/module/item.js b/module/item.js index 988d3ecf..4de0d66a 100644 --- a/module/item.js +++ b/module/item.js @@ -3,16 +3,23 @@ import { Misc } from "./misc.js"; /* -------------------------------------------- */ export class RdDItem { - static isSoufflePontImpraticable(item) { + static isPontImpraticable(item) { return item.type == 'souffle' && item.name.toLowerCase().includes(' des ponts'); } + static isDoubleResistanceFleuve(item) { + return item.type == 'souffle' && item.name.toLowerCase().includes('résistance du fleuve') + } + static isCaseInnondee(item) { return RdDItem.isCaseTMR(item) && item.data.specific == 'debordement'; } - static isCaseTMR(item) { return item.type == 'casetmr'; } + + static isMauvaiseRencontreEnPerspective(item) { + return (item.type == 'queue' || item.type == 'ombre' || item.type == 'souffle') && item.name.toLowerCase().includes('mauvaise rencontre') + } } \ No newline at end of file diff --git a/module/rdd-tmr-rencontre-dialog.js b/module/rdd-tmr-rencontre-dialog.js index dfa9ffb3..ba381889 100644 --- a/module/rdd-tmr-rencontre-dialog.js +++ b/module/rdd-tmr-rencontre-dialog.js @@ -37,7 +37,7 @@ export class RdDTMRRencontreDialog extends Dialog { this.postRencontre(); } - onButtonFuir(action) { + async onButtonFuir(action) { this.toClose = true; await action(); }