#63 Jet d'éthylisme

This commit is contained in:
2020-12-06 21:39:55 +01:00
parent 1afce56348
commit 374b360afb
3 changed files with 32 additions and 1 deletions

View File

@ -389,6 +389,11 @@ export class RdDActorSheet extends ActorSheet {
this.actor.ethylismeTest();
this.render(true);
});
html.find('#jet-vie').click((event) => {
this.actor.jetVie();
this.render(true);
});
html.find('#vie-plus').click((event) => {
this.actor.santeIncDec("vie", 1);

View File

@ -1055,6 +1055,32 @@ export class RdDActor extends Actor {
{
return blessuresListe.filter(b => b.active).length
}
/* -------------------------------------------- */
async jetVie() {
let myRoll = new Roll("1d20").roll();
myRoll.showDice = true;
await RdDDice.show(myRoll);
let msgText = "Jet de Vie : " + myRoll.total + " / " + this.data.data.sante.vie.value + "<br>";
if ( myRoll.total <= this.data.data.sante.vie.value ) {
msgText += "Jet réussi, pas de perte de point de vie (prochain jet dans 1 round pour 1 critique, SC minutes pour une grave)";
if ( myRoll.total == 1) {
msgText += "La durée entre 2 jets de vie est multipliée par 20 (20 rounds pour une critique, SCx20 minutes pour une grave)";
}
} else {
msgText += "Jet échoué, vous perdez 1 point de vie";
await this.santeIncDec("vie", -1);
if ( myRoll.total == 20) {
msgText += "Votre personnage est mort !!!!!";
}
}
const message = {
content: msgText,
whisper: ChatMessage.getWhisperRecipients(game.user.name)
};
ChatMessage.create(message);
}
/* -------------------------------------------- */
async santeIncDec(name, inc, isCritique = false) {