10.3.17 - petits fixes #597
@ -2,22 +2,22 @@ import { Misc } from "./misc.js";
|
||||
import { LOG_HEAD } from "./constants.js";
|
||||
|
||||
const MONNAIE_ETAIN = {
|
||||
name: "Etain (1 denier)", type: 'monnaie',
|
||||
name: "Denier (étain)", type: 'monnaie',
|
||||
img: "systems/foundryvtt-reve-de-dragon/icons/objets/piece_etain_poisson.webp",
|
||||
system: { quantite: 0, cout: 0.01, encombrement: 0.001, description: "" }
|
||||
};
|
||||
const MONNAIE_BRONZE = {
|
||||
name: "Bronze (10 deniers)", type: 'monnaie',
|
||||
name: "Sou (bronze)", type: 'monnaie',
|
||||
img: "systems/foundryvtt-reve-de-dragon/icons/objets/piece_bronze_epees.webp",
|
||||
system: { quantite: 0, cout: 0.10, encombrement: 0.002, description: "" }
|
||||
};
|
||||
const MONNAIE_ARGENT = {
|
||||
name: "Argent (1 sol)", type: 'monnaie',
|
||||
name: "Sol (argent)", type: 'monnaie',
|
||||
img: "systems/foundryvtt-reve-de-dragon/icons/objets/piece_argent_sol.webp",
|
||||
system: { quantite: 0, cout: 1, encombrement: 0.003, description: "" }
|
||||
};
|
||||
const MONNAIE_OR = {
|
||||
name: "Or (10 sols)", type: 'monnaie',
|
||||
name: "Dreagon (or)", type: 'monnaie',
|
||||
img: "systems/foundryvtt-reve-de-dragon/icons/objets/piece_or_sol.webp",
|
||||
system: { quantite: 0, cout: 10, encombrement: 0.004, description: "" }
|
||||
};
|
||||
|
@ -236,7 +236,7 @@ class _10_3_0_Inventaire extends Migration {
|
||||
}
|
||||
_updatesMonnaies(items) {
|
||||
return items
|
||||
.filter(it => ['monnaie'].includes(it.type) && it.system.cout == undefined)
|
||||
.filter(it => ['monnaie'].includes(it.type) && it.system.valeur_deniers != undefined)
|
||||
.map(it => { return { _id: it.id, 'system.cout': it.system.valeur_deniers / 100, 'system.valeur_deniers': undefined } });
|
||||
}
|
||||
}
|
||||
@ -259,6 +259,40 @@ class _10_3_0_FrequenceEnvironnement extends Migration {
|
||||
}
|
||||
}
|
||||
|
||||
class _10_3_17_Monnaies extends Migration {
|
||||
constructor() {
|
||||
super();
|
||||
this.mapValeur = {
|
||||
"Etain (1 denier)": { name: 'Denier (étain)', system: { cout: 0.01 } },
|
||||
"Bronze (10 deniers)": { name: "Sou (bronze)", system: { cout: 0.1 } },
|
||||
"Argent (1 sol)": { name: "Sol (argent)", system: { cout: 1 } },
|
||||
"Or (10 sols)": { name: "Dragon (or)", system: { cout: 10 } }
|
||||
};
|
||||
}
|
||||
get code() { return "migration-monnaies"; }
|
||||
get version() { return "10.3.17"; }
|
||||
|
||||
async migrate() {
|
||||
await this.applyItemsUpdates(items => this._updatesMonnaies(items));
|
||||
}
|
||||
|
||||
_updatesMonnaies(items) {
|
||||
return items
|
||||
.filter(it => 'monnaie' == it.type)
|
||||
.filter(it => this.mapValeur[it.name] != undefined)
|
||||
.map(it => {
|
||||
const correction = this.mapValeur[it.name];
|
||||
return {
|
||||
_id: it.id,
|
||||
'name': correction.name,
|
||||
'system.cout': correction.system.cout,
|
||||
'system.valeur_deniers': undefined
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
export class Migrations {
|
||||
static getMigrations() {
|
||||
return [
|
||||
@ -269,7 +303,8 @@ export class Migrations {
|
||||
new _10_2_5_ArmesTirLancer(),
|
||||
new _10_2_10_DesirLancinant_IdeeFixe(),
|
||||
new _10_3_0_Inventaire(),
|
||||
new _10_3_0_FrequenceEnvironnement()
|
||||
new _10_3_0_FrequenceEnvironnement(),
|
||||
new _10_3_17_Monnaies()
|
||||
];
|
||||
}
|
||||
|
||||
@ -285,8 +320,8 @@ export class Migrations {
|
||||
|
||||
migrate() {
|
||||
const currentVersion = game.settings.get(SYSTEM_RDD, "systemMigrationVersion");
|
||||
//if (isNewerVersion(game.system.version, currentVersion)) {
|
||||
if (true) { /* comment previous and uncomment here to test before upgrade */
|
||||
if (isNewerVersion(game.system.version, currentVersion)) {
|
||||
//if (true) { /* comment previous and uncomment here to test before upgrade */
|
||||
const migrations = Migrations.getMigrations().filter(m => isNewerVersion(m.version, currentVersion));
|
||||
if (migrations.length > 0) {
|
||||
migrations.sort((a, b) =>
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user