Merge branch 'v1.3' into 'v1.3'
#142 ajout du prix de l'équipement See merge request LeRatierBretonnien/foundryvtt-reve-de-dragon!138
This commit is contained in:
commit
01ccf9e364
@ -102,11 +102,14 @@ export class RdDActorSheet extends ActorSheet {
|
|||||||
data.data.compteurs.chance.isChance = true;
|
data.data.compteurs.chance.isChance = true;
|
||||||
data.data.blessures.resume = this.actor.computeResumeBlessure(data.data.blessures);
|
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.computeEncombrementTotalEtMalusArmure();
|
||||||
|
this.actor.computePrixTotalEquipement();
|
||||||
|
|
||||||
// Common data
|
// Common data
|
||||||
data.data.competenceByCategory = data.competenceByCategory;
|
data.data.competenceByCategory = data.competenceByCategory;
|
||||||
data.data.encTotal = this.actor.encTotal;
|
data.data.encTotal = this.actor.encTotal;
|
||||||
|
data.data.prixTotalEquipement = this.actor.prixTotalEquipement;
|
||||||
data.data.surprise = RdDBonus.find(this.actor.getSurprise(false)).descr;
|
data.data.surprise = RdDBonus.find(this.actor.getSurprise(false)).descr;
|
||||||
data.data.isGM = game.user.isGM;
|
data.data.isGM = game.user.isGM;
|
||||||
data.ajustementsConditions = CONFIG.RDD.ajustementsConditions;
|
data.ajustementsConditions = CONFIG.RDD.ajustementsConditions;
|
||||||
|
@ -90,6 +90,7 @@ export class RdDActor extends Actor {
|
|||||||
|
|
||||||
// Dynamic computing fields
|
// Dynamic computing fields
|
||||||
this.encTotal = 0;
|
this.encTotal = 0;
|
||||||
|
this.prixTotalEquipement = 0;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
// Auto-resize token
|
// Auto-resize token
|
||||||
@ -124,6 +125,7 @@ export class RdDActor extends Actor {
|
|||||||
// Initialize empty items
|
// Initialize empty items
|
||||||
RdDUtility.computeCarac(actorData.data);
|
RdDUtility.computeCarac(actorData.data);
|
||||||
this.computeEncombrementTotalEtMalusArmure();
|
this.computeEncombrementTotalEtMalusArmure();
|
||||||
|
this.computePrixTotalEquipement();
|
||||||
this.computeEtatGeneral();
|
this.computeEtatGeneral();
|
||||||
// Sanity check
|
// Sanity check
|
||||||
await this.checkMonnaiePresence(actorData.items);
|
await this.checkMonnaiePresence(actorData.items);
|
||||||
@ -233,6 +235,9 @@ export class RdDActor extends Actor {
|
|||||||
getEncTotal() {
|
getEncTotal() {
|
||||||
return Math.floor(this.encTotal ?? 0);
|
return Math.floor(this.encTotal ?? 0);
|
||||||
}
|
}
|
||||||
|
getPrixTotalEquipement() {
|
||||||
|
return Math.floor(this.prixTotalEquipement ?? 0);
|
||||||
|
}
|
||||||
getSurenc() {
|
getSurenc() {
|
||||||
return Misc.toInt(this.data.data.compteurs.surenc?.value);
|
return Misc.toInt(this.data.data.compteurs.surenc?.value);
|
||||||
}
|
}
|
||||||
@ -910,6 +915,24 @@ export class RdDActor extends Actor {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
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) {
|
computeResumeBlessure(blessures = this.data.data.blessures) {
|
||||||
let nbLegeres = this.countBlessures(blessures.legeres.liste);
|
let nbLegeres = this.countBlessures(blessures.legeres.liste);
|
||||||
@ -2462,6 +2485,7 @@ export class RdDActor extends Actor {
|
|||||||
let update = { _id: item._id, "data.equipe": !item.data.data.equipe };
|
let update = { _id: item._id, "data.equipe": !item.data.data.equipe };
|
||||||
await this.updateEmbeddedEntity("OwnedItem", update);
|
await this.updateEmbeddedEntity("OwnedItem", update);
|
||||||
this.computeEncombrementTotalEtMalusArmure(); // Mise à jour encombrement
|
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"><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">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>
|
<span class="item-name"><a id="creer-un-objet">Créer un objet</a></span>
|
||||||
{{#if data.isGM}}
|
{{#if data.isGM}}
|
||||||
<span class="item-name"> - <a id="nettoyer-conteneurs">Vider tout les conteneurs</a></span>
|
<span class="item-name"> - <a id="nettoyer-conteneurs">Vider tout les conteneurs</a></span>
|
||||||
|
Loading…
Reference in New Issue
Block a user