|
|
|
@ -668,19 +668,23 @@ export class RdDActor extends RdDBaseActorSang {
|
|
|
|
|
if (!RdDItemRace.checkRacialMax(this, caracName, to)) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
let updates = {};
|
|
|
|
|
if (caracName == LIST_CARAC_PERSONNAGE.reve.code) {
|
|
|
|
|
if (to > Misc.toInt(this.system.reve.seuil.value)) {
|
|
|
|
|
this.setPointsDeSeuil(to);
|
|
|
|
|
}
|
|
|
|
|
updates[`system.reve.seuil.value`] = to; // SFA : Direct and packed changes
|
|
|
|
|
//this.setPointsDeSeuil(to);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (caracName == LIST_CARAC_PERSONNAGE.chance.code) {
|
|
|
|
|
if (to > Misc.toInt(this.system.compteurs.chance.value)) {
|
|
|
|
|
this.setPointsDeChance(to);
|
|
|
|
|
updates[`system.compteurs.chance.value`] = to; // SFA : Direct and packed changes
|
|
|
|
|
//this.setPointsDeChance(to);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
let selectedCarac = this.findCaracByName(caracName);
|
|
|
|
|
const from = selectedCarac.value
|
|
|
|
|
await this.update({ [`system.carac.${caracName}.value`]: to });
|
|
|
|
|
updates[`system.carac.${caracName}.value`] = to;
|
|
|
|
|
await this.update(updates);
|
|
|
|
|
await ExperienceLog.add(this, XP_TOPIC.CARAC, from, to, caracName);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -784,7 +788,7 @@ export class RdDActor extends RdDBaseActorSang {
|
|
|
|
|
const toNiveau = compValue ?? RdDItemCompetence.getNiveauBase(competence.system.categorie, competence.getCategories());
|
|
|
|
|
this.notifyCompetencesTronc(competence, toNiveau);
|
|
|
|
|
const fromNiveau = competence.system.niveau;
|
|
|
|
|
await competence.update({ 'system.niveau': toNiveau }, { render: false })
|
|
|
|
|
await competence.update({ 'system.niveau': toNiveau }, { render: true })
|
|
|
|
|
await ExperienceLog.add(this, XP_TOPIC.NIVEAU, fromNiveau, toNiveau, competence.name, true);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|