Endurance limitée en cas d'insomnie
This commit is contained in:
parent
a43ceb3188
commit
3001ae44de
@ -621,14 +621,14 @@ export class RdDActor extends RdDBaseActor {
|
||||
whisper: ChatUtility.getWhisperRecipientsAndGMs(this.name),
|
||||
content: this.name + ': '
|
||||
};
|
||||
await this.recupereEndurance(message);
|
||||
if (this.system.sommeil?.insomnie || heures == 0) {
|
||||
const insomnie = this.system.sommeil?.insomnie || heures == 0;
|
||||
await this.recupereEndurance({message:message, demi:insomnie});
|
||||
if (insomnie) {
|
||||
message.content += 'Vous ne trouvez pas le sommeil';
|
||||
}
|
||||
else {
|
||||
let jetsReve = [];
|
||||
let dormi = await this.dormirDesHeures(jetsReve, message, heures, options);
|
||||
message.content += `Vous dormez ${dormi.heures <= 1 ? 'une heure' : (dormi.heures + ' heures')}. `;
|
||||
if (jetsReve.length > 0) {
|
||||
message.content += `Vous récupérez ${jetsReve.filter(it => it >= 0).reduce(Misc.joining("+"))} Points de rêve. `;
|
||||
}
|
||||
@ -636,6 +636,7 @@ export class RdDActor extends RdDBaseActor {
|
||||
message.content += 'Vous êtes réveillé par un Rêve de Dragon.'
|
||||
}
|
||||
options.chateauDormant = options.chateauDormant && dormi.heures >= heures;
|
||||
message.content += `Vous avez dormi ${dormi.heures <= 1 ? 'une heure' : (dormi.heures + ' heures')}. `;
|
||||
}
|
||||
|
||||
if (!options.grisReve) {
|
||||
@ -702,8 +703,13 @@ export class RdDActor extends RdDBaseActor {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async recupereEndurance(message) {
|
||||
const manquant = this._computeEnduranceMax() - this.system.sante.endurance.value;
|
||||
async recupereEndurance({message, demi}) {
|
||||
let max = this._computeEnduranceMax();
|
||||
if (demi) {
|
||||
max = Math.floor(max/2);
|
||||
}
|
||||
const manquant = max - this.system.sante.endurance.value;
|
||||
|
||||
if (manquant > 0) {
|
||||
await this.santeIncDec("endurance", manquant);
|
||||
message.content += `Vous récuperez ${manquant} points d'endurance. `;
|
||||
@ -1706,6 +1712,7 @@ export class RdDActor extends RdDBaseActor {
|
||||
await this.rollTache(tache.id);
|
||||
}
|
||||
}
|
||||
|
||||
async actionHerbe(item, onActionItem = async () => { }) {
|
||||
if (item.isHerbeAPotion()) {
|
||||
return DialogFabriquerPotion.create(this, item, onActionItem);
|
||||
|
Loading…
Reference in New Issue
Block a user