#142 ajout du prix de l'équipement
This commit is contained in:
parent
0166a0c085
commit
903439e007
@ -102,11 +102,14 @@ export class RdDActorSheet extends ActorSheet {
|
||||
data.data.compteurs.chance.isChance = true;
|
||||
data.data.blessures.resume = this.actor.computeResumeBlessure(data.data.blessures);
|
||||
|
||||
// Mise à jour de l'encombrement total
|
||||
// Mise à jour de l'encombrement total et du prix de l'équipement
|
||||
this.actor.computeEncombrementTotalEtMalusArmure();
|
||||
this.actor.computePrixTotalEquipement();
|
||||
|
||||
// Common data
|
||||
data.data.competenceByCategory = data.competenceByCategory;
|
||||
data.data.encTotal = this.actor.encTotal;
|
||||
data.data.prixTotalEquipement = this.actor.prixTotalEquipement;
|
||||
data.data.surprise = RdDBonus.find(this.actor.getSurprise(false)).descr;
|
||||
data.data.isGM = game.user.isGM;
|
||||
data.ajustementsConditions = CONFIG.RDD.ajustementsConditions;
|
||||
|
@ -90,6 +90,7 @@ export class RdDActor extends Actor {
|
||||
|
||||
// Dynamic computing fields
|
||||
this.encTotal = 0;
|
||||
this.prixTotalEquipement = 0;
|
||||
|
||||
/*
|
||||
// Auto-resize token
|
||||
@ -124,6 +125,7 @@ export class RdDActor extends Actor {
|
||||
// Initialize empty items
|
||||
RdDUtility.computeCarac(actorData.data);
|
||||
this.computeEncombrementTotalEtMalusArmure();
|
||||
this.computePrixTotalEquipement();
|
||||
this.computeEtatGeneral();
|
||||
// Sanity check
|
||||
await this.checkMonnaiePresence(actorData.items);
|
||||
@ -233,6 +235,9 @@ export class RdDActor extends Actor {
|
||||
getEncTotal() {
|
||||
return Math.floor(this.encTotal ?? 0);
|
||||
}
|
||||
getPrixTotalEquipement() {
|
||||
return Math.floor(this.prixTotalEquipement ?? 0);
|
||||
}
|
||||
getSurenc() {
|
||||
return Misc.toInt(this.data.data.compteurs.surenc?.value);
|
||||
}
|
||||
@ -909,6 +914,24 @@ export class RdDActor extends Actor {
|
||||
await this.update({ "data.attributs.malusarmure": malusArmureData });
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async computePrixTotalEquipement() {
|
||||
let prixTotalEquipement = 0;
|
||||
|
||||
// prix total de l'équipement est la somme du cout de chaque équipement multiplié par sa quantité.
|
||||
for (const item of this.data.items) {
|
||||
if (item.data && item.data.cout != undefined) {
|
||||
if (!Number(item.data.cout)) item.data.cout = 0; // Auto-fix
|
||||
if (item.data.quantite == undefined) item.data.quantite = 1; // Auto-fix
|
||||
if (item.data.cout < 0) item.data.cout = 0; // Auto-fix
|
||||
prixTotalEquipement += Number(item.data.cout) * Number(item.data.quantite);
|
||||
console.log("cout équipement : ", item.name, item.data.cout, item.data.quantite, prixTotalEquipement);
|
||||
}
|
||||
}
|
||||
// Mise à jour valeur totale de l'équipement
|
||||
this.prixTotalEquipement = prixTotalEquipement;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
computeResumeBlessure(blessures = this.data.data.blessures) {
|
||||
@ -2462,6 +2485,7 @@ export class RdDActor extends Actor {
|
||||
let update = { _id: item._id, "data.equipe": !item.data.data.equipe };
|
||||
await this.updateEmbeddedEntity("OwnedItem", update);
|
||||
this.computeEncombrementTotalEtMalusArmure(); // Mise à jour encombrement
|
||||
this.computePrixTotalEquipement(); // Mis à jour du prix total de l'équipement
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -895,6 +895,7 @@
|
||||
|
||||
<span class="item-name"><h4>Equipement porté</h4></span>
|
||||
<span class="item-name">Encombrement total/max : {{numberFormat data.encTotal decimals=1}} / {{data.attributs.encombrement.value}} <b>{{data.surEncombrementMessage}}</b></span> -
|
||||
<span class="item-name">Prix total de l'équipement : {{numberFormat data.prixTotalEquipement decimals=2}}</span> -
|
||||
<span class="item-name"><a id="creer-un-objet">Créer un objet</a></span>
|
||||
{{#if data.isGM}}
|
||||
<span class="item-name"> - <a id="nettoyer-conteneurs">Vider tout les conteneurs</a></span>
|
||||
|
Loading…
Reference in New Issue
Block a user