From 195b0bb869d3e249a135ba50b25dd971527c44af Mon Sep 17 00:00:00 2001 From: sladecraven Date: Sun, 31 Oct 2021 19:10:35 +0100 Subject: [PATCH] Ajout nouveau mode degats --- module/actor.js | 14 ++++++++++++++ module/regles-optionelles.js | 1 + system.json | 2 +- 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/module/actor.js b/module/actor.js index 5135f6e2..daa139dc 100644 --- a/module/actor.js +++ b/module/actor.js @@ -3313,8 +3313,22 @@ export class RdDActor extends Actor { formula += "+"+valeurMin; } } + let roll = await RdDDice.roll(formula, { showDice: true }); + // 1 dé fait au minmum la difficulté libre + if (ReglesOptionelles.isUsing('degat-minimum-malus-libre-simple')) { + if ( rollData.diffLibre < 0 ) { + let valeurMin = Math.abs(rollData.diffLibre); + if ( roll.terms[0].results[0].result < valeurMin) { + roll.terms[0].results[0].result = valeurMin; + } else if (roll.terms[0].results[1].result < valeurMin) { + roll.terms[0].results[1].result = valeurMin; + } + roll._total = roll.terms[0].results[0].result + roll.terms[0].results[1].result; + } + } + const armure = await this.computeArmure(rollData); const jetTotal = roll.total + rollData.dmg.total - armure; diff --git a/module/regles-optionelles.js b/module/regles-optionelles.js index ba5ba12e..b540d381 100644 --- a/module/regles-optionelles.js +++ b/module/regles-optionelles.js @@ -7,6 +7,7 @@ const listeReglesOptionelles = [ { name: 'defenseurDesarme', group: 'Règles de combat', descr: "Le défenseur peut être désarmé en parant une particulière en force ou une charge avec une arme autre qu'un bouclier" }, { name: 'categorieParade', group: 'Règles de combat', descr: "Le défenseur doit obtenir une significative en cas de parade avec des armes de catégories différentes" }, { name: 'tripleSignificative', group: 'Règles de combat', descr: "En cas de demi-surprise, d'attaque particulière en finesse, et de catégories d'armes différentes, le défenseur doit obtenir 1/8 des chances de succès" }, + { name: 'degat-minimum-malus-libre-simple', group: 'Règles de combat', descr: "Le malus libre d'attaque remplace une des valeurs de dés d'encaissement si elle est plus petite. Exemple : la difficulté libre de l'attaquant est de -4. Sur le jet d'encaissement, si 1 résultat est inférieur à 4, alors il devient 4.", default: false }, { name: 'degat-minimum-malus-libre', group: 'Règles de combat', descr: "Le malus libre d'attaque remplace une valeur de dés d'encaissement si elle est plus petite. Exemple : la difficulté libre de l'attaquant est de -4. Sur le jet d'encaissement, tout résultat inférieur à 4 devient 4.", default: false }, { name: 'degat-ajout-malus-libre', group: 'Règles de combat', descr: "Le malus libre d'attaque s'ajoute au jet d'encaissement et aux autres bonus. Exemple : la difficulté libre de l'attaquant est de -4. Le jet d'encaissement est effectué à 2d10+4, plus les bonus de situation et d'armes.", default: false }, { name: 'astrologie', group: 'Règles générales', descr: "Appliquer les ajustements astrologiques aux jets de chance et aux rituels", default: true }, diff --git a/system.json b/system.json index 1bb021ba..be013e59 100644 --- a/system.json +++ b/system.json @@ -2,7 +2,7 @@ "name": "foundryvtt-reve-de-dragon", "title": "Rêve de Dragon", "description": "Rêve de Dragon RPG for FoundryVTT", - "version": "1.5.24", + "version": "1.5.25", "manifestPlusVersion": "1.0.0", "minimumCoreVersion": "0.8.0", "compatibleCoreVersion": "0.8.9",