## 11.2.20 - Le soulagement d'Akarlikarlikar #698
@ -429,7 +429,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
let jetsReve = [];
|
||||
let dormi = await this.dormirDesHeures(jetsReve, message, heures, options);
|
||||
if (jetsReve.length > 0) {
|
||||
message.content += `Vous récupérez ${jetsReve.map(it => it < 0 ? '(dragon)' : it).reduce(Misc.joining("+"))} Points de rêve. `;
|
||||
message.content += `Vous récupérez ${jetsReve.map(it => it < 0 ? '0 (réveil)' : it).reduce(Misc.joining("+"))} Points de rêve. `;
|
||||
}
|
||||
if (dormi.etat == 'eveil') {
|
||||
await this.reveilReveDeDragon(message, dormi.heures);
|
||||
@ -450,7 +450,6 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
}
|
||||
|
||||
async reveilReveDeDragon(message, heures) {
|
||||
message.content += 'Vous êtes réveillé par un Rêve de Dragon.';
|
||||
const restant = Math.max(this.system.sommeil?.heures - heures, 0)
|
||||
if (restant > 0) {
|
||||
await this.update({ 'system.sommeil': { heures: restant } });
|
||||
@ -1333,7 +1332,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
}
|
||||
|
||||
await RdDResolutionTable.rollData(ethylismeData.jetVie);
|
||||
this._appliquerExperienceRollData(ethylismeData.jetVie);
|
||||
this._gererExperience(ethylismeData.jetVie);
|
||||
RollDataAjustements.calcul(ethylismeData.jetVie, this);
|
||||
if (ethylismeData.jetVie.rolled.isSuccess) {
|
||||
ethylisme.nb_doses++;
|
||||
@ -1365,7 +1364,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
finalLevel: Number(ethylisme.value) + Number(this.system.compteurs.moral.value)
|
||||
}
|
||||
await RdDResolutionTable.rollData(ethylismeData.jetVolonte);
|
||||
this._appliquerExperienceRollData(ethylismeData.jetVolonte);
|
||||
this._gererExperience(ethylismeData.jetVolonte);
|
||||
RollDataAjustements.calcul(ethylismeData.jetVolonte, this);
|
||||
}
|
||||
}
|
||||
@ -1549,7 +1548,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
const content = await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/chat-actor-gain-xp.html`, {
|
||||
actor: this,
|
||||
xpData
|
||||
});
|
||||
})
|
||||
if (hideChatMessage) {
|
||||
ChatUtility.blindMessageToGM({ content: content });
|
||||
}
|
||||
@ -1779,13 +1778,13 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
};
|
||||
RollDataAjustements.calcul(rollData, this);
|
||||
await RdDResolutionTable.rollData(rollData);
|
||||
this._appliquerExperienceRollData(rollData);
|
||||
this._gererExperience(rollData);
|
||||
await RdDResolutionTable.displayRollData(rollData, this)
|
||||
return rollData.rolled;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
_appliquerExperienceRollData(rollData) {
|
||||
_gererExperience(rollData) {
|
||||
const callback = this.createCallbackExperience();
|
||||
if (callback.condition(rollData)) {
|
||||
callback.action(rollData);
|
||||
@ -2269,7 +2268,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
async _appliquerExperience(rolled, caracName, competence, jetResistance) {
|
||||
// Pas d'XP
|
||||
if (!rolled.isPart || rolled.finalLevel >= 0) {
|
||||
return undefined;
|
||||
return []
|
||||
}
|
||||
if (this.checkDesirLancinant()) {
|
||||
// Cas de désir lancinant, pas d'expérience sur particulière
|
||||
@ -2277,7 +2276,7 @@ export class RdDActor extends RdDBaseActorSang {
|
||||
content: `Vous souffrez au moins d'un Désir Lancinant, vous ne pouvez pas gagner d'expérience sur une Particulière tant que le désir n'est pas assouvi`,
|
||||
whisper: ChatMessage.getWhisperRecipients(this.name)
|
||||
});
|
||||
return undefined;
|
||||
return []
|
||||
}
|
||||
|
||||
let xp = Math.abs(rolled.finalLevel);
|
||||
|
Loading…
x
Reference in New Issue
Block a user