Fix: cas de xp/niveau vide
Après avoir enlevé l'xp par erreur, elle est gardée vide, mieux vaut la mettre à 0 pour pouvoir l'augmenter par la suite
This commit is contained in:
@ -710,7 +710,7 @@ export class RdDActor extends Actor {
|
||||
return;
|
||||
}
|
||||
let caracpath = "data.carac." + caracName + ".xp";
|
||||
await this.update({ [caracpath]: caracXP });
|
||||
await this.update({ [caracpath]: caracXP ?? 0 });
|
||||
this.checkCaracXP(caracName);
|
||||
}
|
||||
|
||||
@ -736,7 +736,7 @@ export class RdDActor extends Actor {
|
||||
let comp = this.getCompetence(compName);
|
||||
if (comp) {
|
||||
let troncList = RdDItemCompetence.isTronc(compName);
|
||||
let maxNiveau = compValue;
|
||||
let nouveauNiveau = compValue ?? RdDItemCompetence.getLevelCategory(comp.data.categorie);
|
||||
if (troncList) {
|
||||
let message = "Vous avez modifié une compétence 'tronc'. Vérifiez que les compétences suivantes évoluent ensemble jusqu'au niveau 0 : ";
|
||||
for (let troncName of troncList) {
|
||||
@ -747,7 +747,7 @@ export class RdDActor extends Actor {
|
||||
content: message
|
||||
});
|
||||
}
|
||||
const update = { _id: comp._id, 'data.niveau': maxNiveau };
|
||||
const update = { _id: comp._id, 'data.niveau': nouveauNiveau };
|
||||
const updated = await this.updateEmbeddedEntity("OwnedItem", update); // Updates one EmbeddedEntity
|
||||
} else {
|
||||
console.log("Competence not found", compName);
|
||||
@ -758,6 +758,7 @@ export class RdDActor extends Actor {
|
||||
async updateCompetenceXP(compName, compValue) {
|
||||
let comp = this.getCompetence(compName);
|
||||
if (comp) {
|
||||
compValue = compValue ?? 0;
|
||||
this.checkCompetenceXP(compName, compValue);
|
||||
const update = { _id: comp._id, 'data.xp': compValue };
|
||||
const updated = await this.updateEmbeddedEntity("OwnedItem", update); // Updates one EmbeddedEntity
|
||||
@ -771,6 +772,7 @@ export class RdDActor extends Actor {
|
||||
async updateCompetenceXPSort(compName, compValue) {
|
||||
let comp = this.getCompetence(compName);
|
||||
if (comp) {
|
||||
compValue = compValue ?? 0;
|
||||
const update = { _id: comp._id, 'data.xp_sort': compValue };
|
||||
const updated = await this.updateEmbeddedEntity("OwnedItem", update); // Updates one EmbeddedEntity
|
||||
} else {
|
||||
@ -782,6 +784,7 @@ export class RdDActor extends Actor {
|
||||
async updateCompetenceArchetype(compName, compValue) {
|
||||
let comp = this.getCompetence(compName);
|
||||
if (comp) {
|
||||
compValue = compValue ?? 0;
|
||||
const update = { _id: comp._id, 'data.niveau_archetype': compValue };
|
||||
const updated = await this.updateEmbeddedEntity("OwnedItem", update); // Updates one EmbeddedEntity
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user