Toujours lutter sur les data
This commit is contained in:
@@ -294,38 +294,39 @@ export class RdDUtility {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static filterItemsPerTypeForSheet(sheetData) {
|
||||
sheetData.data.materiel = this.checkNull(sheetData.itemsByType['objet']);
|
||||
sheetData.data.conteneurs = this.checkNull(sheetData.itemsByType['conteneur']);
|
||||
sheetData.data.armes = this.checkNull(sheetData.itemsByType['arme']);
|
||||
sheetData.data.armures = this.checkNull(sheetData.itemsByType['armure']);
|
||||
sheetData.data.livres = this.checkNull(sheetData.itemsByType['livre']);
|
||||
sheetData.data.potions = this.checkNull(sheetData.itemsByType['potion']);
|
||||
sheetData.data.ingredients = this.checkNull(sheetData.itemsByType['ingredient']);
|
||||
sheetData.data.munitions = this.checkNull(sheetData.itemsByType['munition']);
|
||||
sheetData.data.herbes = this.checkNull(sheetData.itemsByType['herbe']);
|
||||
sheetData.data.sorts = this.checkNull(sheetData.itemsByType['sort']);
|
||||
sheetData.data.queues = this.checkNull(sheetData.itemsByType['queue']);
|
||||
sheetData.data.souffles = this.checkNull(sheetData.itemsByType['souffle']);
|
||||
sheetData.data.ombres = this.checkNull(sheetData.itemsByType['ombre']);
|
||||
sheetData.data.tetes = this.checkNull(sheetData.itemsByType['tete']);
|
||||
sheetData.data.taches = this.checkNull(sheetData.itemsByType['tache']);
|
||||
sheetData.data.monnaie = this.checkNull(sheetData.itemsByType['monnaie']);
|
||||
sheetData.data.meditations = this.checkNull(sheetData.itemsByType['meditation']);
|
||||
sheetData.data.chants = this.checkNull(sheetData.itemsByType['chant']);
|
||||
sheetData.data.danses = this.checkNull(sheetData.itemsByType['danse']);
|
||||
sheetData.data.musiques = this.checkNull(sheetData.itemsByType['musique']);
|
||||
sheetData.data.oeuvres = this.checkNull(sheetData.itemsByType['oeuvre']);
|
||||
sheetData.data.jeux = this.checkNull(sheetData.itemsByType['jeu']);
|
||||
sheetData.data.recettescuisine = this.checkNull(sheetData.itemsByType['recettecuisine']);
|
||||
sheetData.data.recettesAlchimiques = this.checkNull(sheetData.itemsByType['recettealchimique']);
|
||||
sheetData.data.objets = sheetData.data.conteneurs.concat(sheetData.data.materiel)
|
||||
.concat(sheetData.data.armes)
|
||||
.concat(sheetData.data.armures)
|
||||
.concat(sheetData.data.munitions)
|
||||
.concat(sheetData.data.livres)
|
||||
.concat(sheetData.data.potions)
|
||||
.concat(sheetData.data.herbes)
|
||||
.concat(sheetData.data.ingredients);
|
||||
|
||||
sheetData.items.materiel = this.checkNull(sheetData.items['objet']);
|
||||
sheetData.items.conteneurs = this.checkNull(sheetData.items['conteneur']);
|
||||
sheetData.items.armes = this.checkNull(sheetData.items['arme']);
|
||||
sheetData.items.armures = this.checkNull(sheetData.items['armure']);
|
||||
sheetData.items.livres = this.checkNull(sheetData.items['livre']);
|
||||
sheetData.items.potions = this.checkNull(sheetData.items['potion']);
|
||||
sheetData.items.ingredients = this.checkNull(sheetData.items['ingredient']);
|
||||
sheetData.items.munitions = this.checkNull(sheetData.items['munition']);
|
||||
sheetData.items.herbes = this.checkNull(sheetData.items['herbe']);
|
||||
sheetData.items.sorts = this.checkNull(sheetData.items['sort']);
|
||||
sheetData.items.queues = this.checkNull(sheetData.items['queue']);
|
||||
sheetData.items.souffles = this.checkNull(sheetData.items['souffle']);
|
||||
sheetData.items.ombres = this.checkNull(sheetData.items['ombre']);
|
||||
sheetData.items.tetes = this.checkNull(sheetData.items['tete']);
|
||||
sheetData.items.taches = this.checkNull(sheetData.items['tache']);
|
||||
sheetData.items.monnaie = this.checkNull(sheetData.items['monnaie']);
|
||||
sheetData.items.meditations = this.checkNull(sheetData.items['meditation']);
|
||||
sheetData.items.chants = this.checkNull(sheetData.items['chant']);
|
||||
sheetData.items.danses = this.checkNull(sheetData.items['danse']);
|
||||
sheetData.items.musiques = this.checkNull(sheetData.items['musique']);
|
||||
sheetData.items.oeuvres = this.checkNull(sheetData.items['oeuvre']);
|
||||
sheetData.items.jeux = this.checkNull(sheetData.items['jeu']);
|
||||
sheetData.items.recettescuisine = this.checkNull(sheetData.items['recettecuisine']);
|
||||
sheetData.items.recettesAlchimiques = this.checkNull(sheetData.items['recettealchimique']);
|
||||
sheetData.items.objets = sheetData.items.conteneurs.concat(sheetData.items.materiel)
|
||||
.concat(sheetData.items.armes)
|
||||
.concat(sheetData.items.armures)
|
||||
.concat(sheetData.items.munitions)
|
||||
.concat(sheetData.items.livres)
|
||||
.concat(sheetData.items.potions)
|
||||
.concat(sheetData.items.herbes)
|
||||
.concat(sheetData.items.ingredients);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@@ -359,13 +360,13 @@ export class RdDUtility {
|
||||
static buildArbreDeConteneur(actorSheet, sheetData) {
|
||||
actorSheet.objetVersConteneur = {}; // Table de hash locale pour recupération rapide du conteneur parent (si existant)
|
||||
// Attribution des objets aux conteneurs
|
||||
for (let conteneur of sheetData.data.conteneurs) {
|
||||
for (let conteneur of sheetData.items.conteneurs) {
|
||||
conteneur.subItems = [];
|
||||
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 = sheetData.data.objets.find(objet => (id == objet._id));
|
||||
let objet = sheetData.items.objets.find(objet => (id == objet._id));
|
||||
if (objet) {
|
||||
if (!objet.data.encombrement) objet.data.encombrement = 0; // Auto-fix
|
||||
objet.estContenu = true; // Permet de filtrer ce qifui est porté dans le template
|
||||
@@ -377,8 +378,8 @@ export class RdDUtility {
|
||||
}
|
||||
}
|
||||
// Construit la liste des conteneurs de niveau 1 (c'est à dire non contenu eux-même dans un conteneur)
|
||||
let newConteneurs = sheetData.data.conteneurs.filter(function (conteneur, index, arr) { return !conteneur.estContenu });
|
||||
sheetData.data.conteneurs = newConteneurs;
|
||||
let newConteneurs = sheetData.items.conteneurs.filter(function (conteneur, index, arr) { return !conteneur.estContenu });
|
||||
sheetData.items.conteneurs = newConteneurs;
|
||||
//console.log(newConteneurs);
|
||||
}
|
||||
|
||||
@@ -601,27 +602,16 @@ export class RdDUtility {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async loadCompendiumNames(compendium) {
|
||||
static async loadCompendiumData(compendium) {
|
||||
const pack = game.packs.get(compendium);
|
||||
let competences;
|
||||
await pack.getIndex().then(index => competences = index);
|
||||
let competences = pack.index;
|
||||
return competences;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async loadCompendium(compendium, filter = item => true) {
|
||||
let compendiumItems = await RdDUtility.loadCompendiumNames(compendium);
|
||||
const pack = game.packs.get(compendium);
|
||||
let list = [];
|
||||
for (let compendiumItem of compendiumItems) {
|
||||
await pack.getDocument(compendiumItem._id).then(it => {
|
||||
const item = it.data;
|
||||
if (filter(item)) {
|
||||
list.push(item);
|
||||
}
|
||||
});
|
||||
};
|
||||
return list;
|
||||
let compendiumData = await RdDUtility.loadCompendiumData(compendium);
|
||||
return compendiumData.filter(filter);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
||||
Reference in New Issue
Block a user