Jets d'encaissement validés par le MJ

* ajout d'une option pour activer la validation par le MJ
* lors d'un jet d'encaissement, une fenêtre s'ouvre chez le MJ
  avec le résultat d'encaissement
* le MJ peut changer le jet d'encaissement
* si le MJ annule, l'encaissement n'a pas lieu
* Attention, si plusieurs MJ, un seul doit valider, sinon
  encaissements multiples
This commit is contained in:
Vincent Vandemeulebrouck
2022-10-09 02:19:33 +02:00
parent 81ae15a6a2
commit 43763dbe3a
10 changed files with 279 additions and 104 deletions

View File

@ -187,7 +187,7 @@ export class RdDDice {
case '1d100':
return terms1d100(total);
case "2d10":
// TODO
return await terms2d10(total);
}
return undefined;
@ -211,6 +211,33 @@ export class RdDDice {
options: {}
}];
}
async function terms2d10(total) {
if (total>20 || total<2) { return undefined }
let first = await RdDDice.d10();
let second = Math.min(total-first, 10);
first = Math.max(first, total-second);
return [{
resultLabel:first,
result: first,
type: "d10",
vectors: [],
options: {}
},
{
resultLabel: second,
result: second,
type: "d10",
vectors: [],
options: {}
}];
}
}
static async d10() {
let roll = new Roll('1d10');
await roll.evaluate({ async: true });
return roll.total;
}
static _getWhisperBlind(options) {