Notion d'équipement/inventaire

This commit is contained in:
Vincent Vandemeulebrouck
2022-11-28 11:31:55 +01:00
parent 42c4fe0b29
commit 4bd2c1c2b4
9 changed files with 272 additions and 284 deletions

View File

@ -4,22 +4,22 @@ import { LOG_HEAD } from "./constants.js";
const MONNAIE_ETAIN = {
name: "Etain (1 denier)", type: 'monnaie',
img: "systems/foundryvtt-reve-de-dragon/icons/objets/piece_etain_poisson.webp",
system: { quantite: 0, valeur_deniers: 1, encombrement: 0.001, description: "" }
system: { quantite: 0, cout: 1, encombrement: 0.001, description: "" }
};
const MONNAIE_BRONZE = {
name: "Bronze (10 deniers)", type: 'monnaie',
img: "systems/foundryvtt-reve-de-dragon/icons/objets/piece_bronze_epees.webp",
system: { quantite: 0, valeur_deniers: 10, encombrement: 0.002, description: "" }
system: { quantite: 0, cout: 10, encombrement: 0.002, description: "" }
};
const MONNAIE_ARGENT = {
name: "Argent (1 sol)", type: 'monnaie',
img: "systems/foundryvtt-reve-de-dragon/icons/objets/piece_argent_sol.webp",
system: { quantite: 0, valeur_deniers: 100, encombrement: 0.003, description: "" }
system: { quantite: 0, cout: 100, encombrement: 0.003, description: "" }
};
const MONNAIE_OR = {
name: "Or (10 sols)", type: 'monnaie',
img: "systems/foundryvtt-reve-de-dragon/icons/objets/piece_or_sol.webp",
system: { quantite: 0, valeur_deniers: 1000, encombrement: 0.004, description: "" }
system: { quantite: 0, cout: 1000, encombrement: 0.004, description: "" }
};
const MONNAIES_STANDARD = [MONNAIE_ETAIN, MONNAIE_BRONZE, MONNAIE_ARGENT, MONNAIE_OR];
@ -32,7 +32,7 @@ export class Monnaie {
static monnaiesManquantes(actor) {
const disponibles = actor.itemTypes['monnaie'];
const manquantes = MONNAIES_STANDARD.filter(standard => !disponibles.find(disponible => Monnaie.deValeur(disponible, standard.system?.valeur_deniers)));
const manquantes = MONNAIES_STANDARD.filter(standard => !disponibles.find(disponible => Monnaie.deValeur(disponible, standard.system?.cout)));
if (manquantes.length > 0) {
console.error(`${LOG_HEAD} monnaiesManquantes pour ${actor.name}`, manquantes, ' avec monnaies', disponibles, MONNAIES_STANDARD);
}
@ -40,7 +40,7 @@ export class Monnaie {
}
static deValeur(monnaie, valeur) {
return valeur == monnaie.system.valeur_deniers
return valeur == monnaie.system.cout
}
static arrondiDeniers(sols) {
@ -48,7 +48,7 @@ export class Monnaie {
}
static triValeurDenier() {
return Misc.ascending(item => item.system.valeur_deniers)
return Misc.ascending(item => item.system.cout)
}
static async creerMonnaiesStandard(actor) {
@ -69,7 +69,7 @@ export class Monnaie {
let reste = fortune;
let monnaies = actor.itemTypes['monnaie'];
let updates = [];
let parValeur = Misc.classifyFirst(monnaies, it => it.system.valeur_deniers);
let parValeur = Misc.classifyFirst(monnaies, it => it.system.cout);
for (let valeur of [1000, 100, 10, 1]) {
const itemPiece = parValeur[valeur];
if (itemPiece) {