#150 : Gestion du cas Thanatos
This commit is contained in:
@ -59,10 +59,12 @@ export class RdDItemCompetence extends Item {
|
||||
static computeCompetenceXPCost(competence) {
|
||||
let xp = RdDItemCompetence.getDeltaXp(competence.data.base, competence.data.niveau ?? competence.data.base);
|
||||
xp += competence.data.xp ?? 0;
|
||||
if ( competence.name.includes('Thanatos') ) xp *= 2; /// Thanatos compte double !
|
||||
xp += competence.data.xp_sort ?? 0;
|
||||
return xp;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static computeEconomieCompetenceTroncXP(competences) {
|
||||
let economie = 0;
|
||||
for (let troncList of competenceTroncs) {
|
||||
@ -87,17 +89,20 @@ export class RdDItemCompetence extends Item {
|
||||
return RdDItemCompetence.getCompetenceXp(niveau + 1);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static getCompetenceXp(niveau) {
|
||||
RdDItemCompetence._valideNiveau(niveau);
|
||||
return niveau < -10 ? 0 : competence_xp_par_niveau[niveau + 10];
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static getDeltaXp(from, to) {
|
||||
RdDItemCompetence._valideNiveau(from);
|
||||
RdDItemCompetence._valideNiveau(to);
|
||||
return competence_xp_cumul[to] - competence_xp_cumul[from];
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static _valideNiveau(niveau){
|
||||
if (niveau < -11 || niveau > competence_niveau_max) {
|
||||
console.warn("Niveau en dehors des niveaux de compétences: [-11, " + competence_niveau_max + "]", niveau)
|
||||
|
Reference in New Issue
Block a user