From 738c0737ca0e9faecce4566e4c41065682518324 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Thu, 4 Nov 2021 23:33:52 +0100 Subject: [PATCH] Fix: sur-encombrement MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Le sur-encombrement apparaissait dès 11.1 sur 12 --- module/actor.js | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/module/actor.js b/module/actor.js index daa139dc..bafcf877 100644 --- a/module/actor.js +++ b/module/actor.js @@ -1246,8 +1246,8 @@ export class RdDActor extends Actor { } /* -------------------------------------------- */ - detectSurEncombrement() { - return Math.max(0, Math.ceil(Number(this.encTotal) - this.getEncombrementMax())); + computeMalusSurEncombrement() { + return Math.min(0, this.getEncombrementMax() - Math.ceil(Number(this.getEncTotal()))); } getEncombrementMax() { @@ -1335,23 +1335,24 @@ export class RdDActor extends Actor { /* -------------------------------------------- */ computeEtatGeneral() { const actorData = Misc.data(this); + const tplData = Misc.templateData(this); // Pas d'état général pour les entités forçage à 0 if (this.data.type == 'entite') { - actorData.data.compteurs.etat.value = 0; + tplData.compteurs.etat.value = 0; return; } // Pour les autres - let state = - (actorData.data.sante.vie.max - actorData.data.sante.vie.value); - if (ReglesOptionelles.isUsing("appliquer-fatigue") && actorData.data.sante.fatigue) { - state += RdDUtility.currentFatigueMalus(actorData.data.sante.fatigue.value, actorData.data.sante.endurance.max); + let state = Math.min(tplData.sante.vie.value - tplData.sante.vie.max, 0); + if (ReglesOptionelles.isUsing("appliquer-fatigue") && tplData.sante.fatigue) { + state += RdDUtility.currentFatigueMalus(tplData.sante.fatigue.value, tplData.sante.endurance.max); } // Ajout de l'éthylisme - state += Math.min(0, (actorData.data.compteurs.ethylisme?.value ?? 0)); + state += Math.min(0, (tplData.compteurs.ethylisme?.value ?? 0)); - actorData.data.compteurs.etat.value = state; - if (actorData.data.compteurs?.surenc) { - actorData.data.compteurs.surenc.value = - this.detectSurEncombrement(); + tplData.compteurs.etat.value = state; + if (tplData.compteurs?.surenc) { + tplData.compteurs.surenc.value = this.computeMalusSurEncombrement(); } }