Gestion des présents des cités

+ fix bug sur conquête cité (pour supprimer la casetmr)
+ svg couleur plus lisibles
This commit is contained in:
Vincent Vandemeulebrouck
2021-02-12 12:50:17 +01:00
parent 1c5d14a1fa
commit 99ed077da8
18 changed files with 527 additions and 356 deletions

View File

@@ -272,11 +272,12 @@ const rencontresStandard = [
{ code: "rdd", name: "Rêve de Dragon", type: "rdd", genre: "m", force: "1ddr + 7", refoulement: 2, quitterTMR: true }
];
const presentsCite = [
const rencontresPresentCite = [
{ code: "messager2d6", name: "Messager des Rêves", type: "messager", genre: "m", force: "2d6", ignorer: true },
{ code: "passeur2d6", name: "Passeur des Rêves", type: "passeur", genre: "m", force: "2d6", ignorer: true },
{ code: "fleur2d6", name: "Fleur des Rêves", type: "fleur", genre: "f", force: "2d6", ignorer: true }
]
const rencontresAll = [].concat(rencontresStandard).concat(mauvaisesRencontres).concat(rencontresPresentCite);
const tableRencontres = {
cite: [{ code: 'messager', range: [1, 25] }, { code: 'passeur', range: [26, 50] }, { code: 'fleur', range: [51, 65] }, { code: 'mangeur', range: [66, 70] }, { code: 'changeur', range: [71, 80] }, { code: 'briseur', range: [81, 85] }, { code: 'reflet', range: [86, 90] }, { code: 'tbblanc', range: [91, 94] }, { code: 'tbnoir', range: [95, 97] }, { code: 'rdd', range: [98, 100] }],
@@ -339,22 +340,17 @@ export class TMRRencontres {
static getRencontre(index) {
let rencontre;
if (isNaN(index)) {
rencontre = rencontresStandard.find(r => r.type == index)
if (!rencontre) {
rencontre = mauvaisesRencontres.find(r => r.type == index)
}
rencontre = rencontresAll.find(r => r.type == index) ?? rencontresAll.find(r => r.code == index)
}
else {
if (0 <= index && index < rencontresStandard.length) {
rencontre = rencontresStandard[index];
}
else if (rencontresStandard.length <= index && index < rencontresStandard.length + mauvaisesRencontres.length) {
rencontre = mauvaisesRencontres[index - rencontresStandard.length];
}
else if (0 <= index && index < rencontresAll.length) {
rencontre = rencontresAll[index];
}
if (rencontre) {
return duplicate(rencontre);
}
else {
ui.notifications.info(`Pas de rencontre pour ${index}, seulement ${rencontresAll.length} rencontres sont connues.<br>Vous pouvez aussi essayer par type (ie: mangeur, fleur, fleur2d6, ...)`)
}
return undefined;
}
@@ -375,7 +371,7 @@ export class TMRRencontres {
/* -------------------------------------------- */
static async getMauvaiseRencontre(index = undefined) {
const rencontre = duplicate(
(index && index>=0 && index < mauvaisesRencontres.length)
(index && index >= 0 && index < mauvaisesRencontres.length)
? mauvaisesRencontres[index]
: Misc.rollOneOf(mauvaisesRencontres));
await TMRRencontres.evaluerForceRencontre(rencontre);