#45 : Verification encombrement et amelioration
This commit is contained in:
@ -705,11 +705,17 @@ export class RdDActor extends Actor {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
computeEncombrementTotal( ) {
|
||||
computeEncombrementTotal( ) {
|
||||
let totalEnc = 0;
|
||||
for (const item of this.data.items) {
|
||||
if ( item.data && item.data.encombrement ) { // Enc value filtering
|
||||
totalEnc += Number(item.data.encombrement) * Number(((item.data.quantite)?item.data.quantite:1));
|
||||
if ( item.data && item.data.encombrement != undefined ) {
|
||||
if ( !Number(item.data.encombrement) ) item.data.encombrement = 0; // Auto-fix
|
||||
if (!item.data.quantite) item.data.quantite = 1; // Auto-fix
|
||||
item.data.encTotal = Number(item.data.encombrement) * Number(item.data.quantite);
|
||||
//console.log("Enc:", item.name, item.data.encombrement, item.data.quantite, item.data.encTotal);
|
||||
totalEnc += item.data.encTotal;
|
||||
} else {
|
||||
item.data.encTotal = 0; // Force default enc
|
||||
}
|
||||
}
|
||||
this.encombrementTotal = totalEnc;
|
||||
|
@ -209,14 +209,16 @@ export class RdDUtility {
|
||||
// Attribution des objets aux conteneurs
|
||||
for (let conteneur of data.data.conteneurs) {
|
||||
conteneur.subItems = [];
|
||||
conteneur.encTotal = 0;
|
||||
if (!conteneur.data.encTotal) conteneur.data.encTotal = 0;
|
||||
//conteneur.data.encTotal = ; Deja calculé
|
||||
if (conteneur.data.contenu) {
|
||||
for (let id of conteneur.data.contenu) {
|
||||
let objet = data.data.objets.find( objet => (id == objet._id) );
|
||||
if (objet) {
|
||||
objet.estContenu = true; // Permet de filtrer ce qui est porté dans le template
|
||||
if (!objet.data.encombrement) objet.data.encombrement = 0; // Auto-fix
|
||||
objet.estContenu = true; // Permet de filtrer ce qifui est porté dans le template
|
||||
actorSheet.objetVersConteneur[id] = conteneur._id;
|
||||
conteneur.encTotal += objet.data.encombrement * ((objet.data.quantite)?objet.data.quantite:1);
|
||||
conteneur.data.encTotal += Number(objet.data.encombrement) * Number(((objet.data.quantite)?objet.data.quantite:1));
|
||||
conteneur.subItems.push( objet );
|
||||
}
|
||||
}
|
||||
@ -235,11 +237,11 @@ export class RdDUtility {
|
||||
if (!niveau) niveau = 1;
|
||||
let str = Handlebars.partials['systems/foundryvtt-reve-de-dragon/templates/actor-inventaire-conteneur.html']( { item: objet} );
|
||||
if (objet.type == 'conteneur') {
|
||||
str = str + "<ol class='item-list'>";
|
||||
str = str + "<ul class='item-list alterne-list list-item-margin"+niveau+"1'>";
|
||||
for (let subItem of objet.subItems) {
|
||||
str = str + this.buildConteneur(subItem, niveau+1);
|
||||
}
|
||||
str = str + "</ol>";
|
||||
str = str + "</ul>";
|
||||
}
|
||||
return new Handlebars.SafeString(str);
|
||||
}
|
||||
|
Reference in New Issue
Block a user