diff --git a/changelog.md b/changelog.md index 10cf4147..f130d0ed 100644 --- a/changelog.md +++ b/changelog.md @@ -14,6 +14,7 @@ - la fenêtre de jet pour les jets depuis un lien texte - affichage des ajustements dans la fenêtre d'attaque avec arme à distance - gestion des défenses contre les armes à distance + - attaque depuis l'onglet combat de la feuille de personnage, sans token sélectionné - défense contre possession - correction du mode "méditation" quand le haut-rêvant ne connait pas de méditation - correction du mode "jeu" quand le personnage ne connait pas de jeux diff --git a/module/combat/distance.mjs b/module/combat/distance.mjs index 0c72cc7c..d0ee26f7 100644 --- a/module/combat/distance.mjs +++ b/module/combat/distance.mjs @@ -36,7 +36,7 @@ export class Distance { } static distance(token, defenderToken) { - if (token && defenderToken) { + if (token instanceof Token && defenderToken instanceof Token) { const ray = new foundry.canvas.geometry.Ray( token.getCenterPoint(), defenderToken.getCenterPoint() @@ -48,7 +48,7 @@ export class Distance { static isVisible(token, defenderToken) { // TODO: regarder les StatusEffect aveuglé? - if (token && defenderToken) { + if (token instanceof Token && defenderToken instanceof Token) { return canvas.effects.visibility.testVisibility(defenderToken.getCenterPoint(), { object: token }) } return true @@ -79,7 +79,7 @@ export class Distance { } static ajustementMouvement(defenderToken) { - if (defenderToken) { + if (defenderToken instanceof Token) { if (defenderToken.actor?.getSurprise(true) != '') return { msg: "immobile (surprise)", diff: 0 }; if (defenderToken.inCombat) return { msg: "en mouvement (combat)", diff: -4 }; } diff --git a/templates/roll/roll-part-attaque.hbs b/templates/roll/roll-part-attaque.hbs index eb5648dd..b47f3bd6 100644 --- a/templates/roll/roll-part-attaque.hbs +++ b/templates/roll/roll-part-attaque.hbs @@ -64,21 +64,23 @@ {{/if}} {{#if current.distance}} +
Attaque à distance {{current.main}} difficulté proposée de {{current.distance.total}} à valider par le Gardien + +
  • Avec les murs et la lumière, la cible + {{#if current.distance.isVisible}}est{{else}}n'est pas{{/if}} visible. +
  • +
  • La cible est à une distance {{#if (lt current.distance.distance 0)}}indéterminée{{else}}indicative de {{numberFormat current.distance.distance decimals=1}} mètres{{/if}}.
  • +
  • Portée {{current.distance.portee.msg}} : {{current.distance.portee.diff}}
  • +
  • Taille {{current.distance.taille.msg}}: {{current.distance.taille.diff}}
  • +
  • Mouvement {{current.distance.activite.msg}}: {{current.distance.activite.diff}}
  • +
    {{/if}} \ No newline at end of file