diff --git a/module/actor-sheet.js b/module/actor-sheet.js index 8e1fc851..64000d44 100644 --- a/module/actor-sheet.js +++ b/module/actor-sheet.js @@ -327,7 +327,7 @@ export class RdDActorSheet extends ActorSheet { this.actor.reinsertionAleatoire("Action MJ"); }); html.find('.afficher-tmr').click(async event => { - this.actor.afficheTMRetMessage(); + this.actor.changeTMRVisible(); }); // Points de reve actuel diff --git a/module/actor.js b/module/actor.js index 9ad0b47b..9f87ef5d 100644 --- a/module/actor.js +++ b/module/actor.js @@ -1486,12 +1486,16 @@ export class RdDActor extends Actor { } /* -------------------------------------------- */ - async cacheTMR() { - await this.update({ 'system.reve.tmrpos.cache': true }); + /* -------------------------------------------- */ + async changeTMRVisible() { + await this.setTMRVisible(this.system.reve.tmrpos.cache ? true : false); } - async montreTMR() { - await this.update({ 'system.reve.tmrpos.cache': false }); + + async setTMRVisible(newState) { + await this.update({ 'system.reve.tmrpos.cache': !newState }); + this.notifyRefreshTMR(); } + isTMRCache() { return this.system.reve.tmrpos.cache; } @@ -1505,11 +1509,6 @@ export class RdDActor extends Actor { }); } - /* -------------------------------------------- */ - async afficheTMRetMessage() { - await this.montreTMR(); - this.notifyRefreshTMR(); - } /* -------------------------------------------- */ async reinsertionAleatoire(raison, accessible = tmr => true) { @@ -1524,7 +1523,7 @@ export class RdDActor extends Actor { } async forcerPositionTMRInconnue(tmr) { - await this.cacheTMR(); + await this.setTMRVisible(false); await this.updateCoordTMR(tmr.coord); this.notifyRefreshTMR(); } diff --git a/module/rdd-tmr-dialog.js b/module/rdd-tmr-dialog.js index 7d7d03d0..53557756 100644 --- a/module/rdd-tmr-dialog.js +++ b/module/rdd-tmr-dialog.js @@ -158,7 +158,7 @@ export class RdDTMRDialog extends Dialog { } _tokenDemiReve() { - return EffetsDraconiques.demiReve.token(this.pixiTMR, this.actor.system, () => this.actor.system.reve.tmrpos.coord); + return EffetsDraconiques.demiReve.token(this.pixiTMR, this.actor, () => this.actor.system.reve.tmrpos.coord); } forceDemiRevePositionView() { @@ -625,16 +625,16 @@ export class RdDTMRDialog extends Dialog { /* -------------------------------------------- */ isCaseHumide(tmr) { if (!(TMRUtility.isCaseHumide(tmr) || this.isCaseHumideAdditionelle(tmr))) { - return undefined; + return false; } if (this.isCaseMaitrisee(tmr.coord)) { ChatMessage.create({ content: tmr.label + ": cette case humide est déja maitrisée grâce à votre Tête Quête des Eaux", whisper: ChatMessage.getWhisperRecipients(game.user.name) }); - return undefined; + return false; } - return -7; + return true; } /* -------------------------------------------- */ @@ -878,11 +878,13 @@ export class RdDTMRDialog extends Dialog { if (this.isDemiReveCache()) { if (this.isTerreAttache(targetCoord) - || (this.isCaseHumide(currentCoord) && this.isCaseHumide(targetCoord)) + || this.isConnaissanceFleuve(currentCoord, targetCoord) || deplacementType == 'changeur') { // déplacement possible - await this.actor.montreTMR(); + await this.actor.setTMRVisible(true); + this.demiReve = this._tokenDemiReve(); + this._trackToken(this.demiReve); } else { diff --git a/templates/actor/haut-revant.html b/templates/actor/haut-revant.html index bee5f0ed..3f626600 100644 --- a/templates/actor/haut-revant.html +++ b/templates/actor/haut-revant.html @@ -4,7 +4,9 @@ Ré-insertion aléatoire (ie TMR cachée) - Montrer les TMR + + {{#if hautreve.cacheTMR}}Montrer les TMR{{else}}Cacher les TMR{{/if}} + {{/if}}