Petits fixes suite à tests #552
| @@ -200,7 +200,6 @@ export class RdDActor extends Actor { | ||||
|   async checkMonnaiePresence() { // Ajout opportuniste si les pièces n'existent pas. | ||||
|     if (!this.items) return; // Sanity check during import | ||||
|     let manquantes = Monnaie.monnaiesManquantes(this.itemTypes['monnaie']); | ||||
|     //console.log("Manque : ", manquantes); | ||||
|     if (manquantes.length > 0) { | ||||
|       await this.createEmbeddedDocuments('Item', manquantes, { renderSheet: false }); | ||||
|     } | ||||
|   | ||||
| @@ -22,12 +22,19 @@ const MONNAIES_STANDARD = [ | ||||
|     system: { quantite: 0, valeur_deniers: 1000, encombrement: 0.004, description: "" } | ||||
|   } | ||||
| ] | ||||
| const VALEURS_STANDARDS = MONNAIES_STANDARD.map(it =>it.system.valeur_deniers); | ||||
|  | ||||
| export class Monnaie { | ||||
|  | ||||
|   static isSystemMonnaie(item) { | ||||
|     let present = MONNAIES_STANDARD.find(monnaie => monnaie.system.valeur_deniers == item?.system?.valeur_deniers); | ||||
|     return present; | ||||
|   static isSystemMonnaie(item, items) { | ||||
|     if (item.type == 'monnaie')    { | ||||
|       const valeur = item.system.valeur_deniers; | ||||
|       if (VALEURS_STANDARDS.includes(valeur)) { | ||||
|         const monnaiesDeValeur = items.filter(it => it.type == 'monnaie' && it.system.valeur_deniers == valeur) | ||||
|         return monnaiesDeValeur.length<=1; | ||||
|       } | ||||
|     } | ||||
|     return false; | ||||
|   } | ||||
|  | ||||
|   static monnaiesData() { | ||||
| @@ -40,10 +47,10 @@ export class Monnaie { | ||||
|  | ||||
|   static monnaiesManquantes(disponibles) { | ||||
|     const manquantes = MONNAIES_STANDARD.filter(standard => !disponibles.find(disponible => Monnaie.deValeur(disponible, standard.system?.valeur_deniers))); | ||||
|     if (manquantes.length>0) { | ||||
|     if (manquantes.length > 0) { | ||||
|       console.error('monnaiesManquantes', manquantes, ' avec monnaies', disponibles, MONNAIES_STANDARD); | ||||
|     } | ||||
|     return []; //manquantes; | ||||
|     return manquantes; | ||||
|   } | ||||
|  | ||||
|   static deValeur(monnaie, valeur) { | ||||
|   | ||||
| @@ -861,7 +861,7 @@ export class RdDUtility { | ||||
|     let itemId = li.data("item-id"); | ||||
|     let objet = actorSheet.actor.getObjet(itemId); | ||||
|  | ||||
|     if (objet.type == 'monnaie' && Monnaie.isSystemMonnaie(objet)) { | ||||
|     if (Monnaie.isSystemMonnaie(objet, actorSheet.actor.items)) { | ||||
|       ui.notifications.warn("Suppression des monnaies de base impossible"); | ||||
|       return; | ||||
|     } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user