From b3c6845e681b665c50b2a2bcbe535ed5fed02dee Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Thu, 5 Jan 2023 00:34:19 +0100 Subject: [PATCH 01/14] Fix: la maladie bloque le calendrier MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Le postItem d'une maladie bloquait le raffraîchissement du calendrier --- module/rdd-calendrier.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/rdd-calendrier.js b/module/rdd-calendrier.js index a4996963..2eda5830 100644 --- a/module/rdd-calendrier.js +++ b/module/rdd-calendrier.js @@ -351,7 +351,7 @@ export class RdDCalendrier extends Application { ChatMessage.create({ content: `${actor.name} souffre d'un mal inconnu (${maladie.type}): vérifiez que les effets ne se sont pas aggravés !` }); } let itemMaladie = actor.getItem(maladie.id) - itemMaladie.postItem('gmroll'); + itemMaladie.postItemToChat('gmroll'); } } } From ec24126e75410fcf85f05572cdc19b5c23ffd6ce Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Thu, 5 Jan 2023 00:53:00 +0100 Subject: [PATCH 02/14] Cleanup: Suppression listes inutiles --- template.json | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/template.json b/template.json index 7abda35a..423c91d0 100644 --- a/template.json +++ b/template.json @@ -462,18 +462,6 @@ "refoulement": { "value": 0, "label": "Points de Refoulement" - }, - "queues": { - "list": [] - }, - "souffles": { - "list": [] - }, - "tetes": { - "list": [] - }, - "ombres": { - "list": [] } }, "compteurs": { From 8844f76b65b28f15eaadea735c57f5b7c6533262 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Thu, 5 Jan 2023 02:14:23 +0100 Subject: [PATCH 03/14] =?UTF-8?q?Les=20joueurs=20ne=20peuvent=20plus=20cr?= =?UTF-8?q?=C3=A9er=20de=20signes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Les commandes /signe+ / /signe --- module/rdd-commands.js | 36 +++++++++++++++++++++++------------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/module/rdd-commands.js b/module/rdd-commands.js index c24e8af0..c92ca693 100644 --- a/module/rdd-commands.js +++ b/module/rdd-commands.js @@ -206,16 +206,16 @@ export class RdDCommands { let rollMode = game.settings.get("core", "rollMode"); if (["gmroll", "blindroll"].includes(rollMode)) { msg["whisper"] = ChatMessage.getWhisperRecipients("GM"); - } - if (rollMode === "blindroll"){ + } + if (rollMode === "blindroll") { msg["blind"] = true; - } + } msg["type"] = 0; if (!this.commandsTable) { this._registerCommands(); } - + let command = commandLine[0].toLowerCase(); if (this._isCommandHandled(command)) { let params = commandLine.slice(1); @@ -225,7 +225,7 @@ export class RdDCommands { return false; } - _isCommandHandled(command){ + _isCommandHandled(command) { return this.commandsTable[command] != undefined; } @@ -331,7 +331,7 @@ export class RdDCommands { diff = 0; } const caracName = params[0]; - let competence = length > 1 ? actors[0].getCompetence(Misc.join(params.slice(1, length), ' ')) : {name:undefined}; + let competence = length > 1 ? actors[0].getCompetence(Misc.join(params.slice(1, length), ' ')) : { name: undefined }; if (competence) { for (let actor of actors) { await actor.rollCaracCompetence(caracName, competence.name, diff); @@ -448,17 +448,27 @@ export class RdDCommands { } async creerSignesDraconiques() { - DialogCreateSigneDraconique.createSigneForActors(); + if (game.user.isGM) { + DialogCreateSigneDraconique.createSigneForActors(); + } + else { + ui.notifications.warn("Seul le MJ est autorisé à utiliser la commande /signe"); + } return true; } async supprimerSignesDraconiquesEphemeres() { - game.actors.forEach(actor => { - const ephemeres = actor.items.filter(item => item.type = 'signedraconique' && item.system.ephemere); - if (ephemeres.length > 0) { - actor.deleteEmbeddedDocuments("Item", ephemeres.map(item => item.id)); - } - }); + if (game.user.isGM) { + game.actors.forEach(actor => { + const ephemeres = actor.items.filter(item => item.type = 'signedraconique' && item.system.ephemere); + if (ephemeres.length > 0) { + actor.deleteEmbeddedDocuments("Item", ephemeres.map(item => item.id)); + } + }); + } + else { + ui.notifications.warn("Seul le MJ est autorisé à utiliser la commande /signe"); + } return true; } From 11e4ad09d3a2152553bc1b81a4cdf788f9f84644 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Thu, 5 Jan 2023 22:20:19 +0100 Subject: [PATCH 04/14] Ignore jsconfig.json and modules --- .gitignore | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index f47effc4..d7a00050 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,7 @@ todo.md /.vscode /ignored/ +/node_modules/ +/jsconfig.json +/package.json +/package-lock.json From 912b1d3df34f45afcc49c7a7def9765957c1b478 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Thu, 5 Jan 2023 00:55:04 +0100 Subject: [PATCH 05/14] Gestion d'items temporels MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Séparation des timestamp / calendrier Les poisons/maladies/souffles/queues/rencontres/signes peuvent être temporaires. - Ajout de champs pour stocker les timestamps de début et fin - définition de la durée (selon les items) - extraction des classes spécialisées des items - initialisation des dates de début/fin des effets temporaires à l'ajout d'un item temporel - préparation de la suppression automatique - Fix de mauvaise présentations sur les dialog d'astrologie et d'édition du calendrier --- module/actor.js | 24 +- module/actor/base-actor.js | 1 - module/dialog-chronologie.js | 2 +- module/dialog-create-signedraconique.js | 2 +- module/item-rencontre-sheet.js | 2 +- module/item-sheet.js | 17 +- module/item-signedraconique-sheet.js | 2 +- module/item.js | 63 ++- module/{ => item}/item-rencontre.js | 13 +- module/{ => item}/item-service.js | 2 +- module/{ => item}/item-signedraconique.js | 25 +- module/item/maladie.js | 13 + module/item/ombre.js | 18 + module/item/poison.js | 17 + module/item/queue.js | 13 + module/item/souffle.js | 13 + module/rdd-astrologie-editeur.js | 2 +- module/rdd-calendrier-editeur.js | 46 ++- module/rdd-calendrier.js | 390 +++++++----------- module/rdd-herbes.js | 10 +- module/rdd-main.js | 59 +-- module/rdd-timestamp.js | 292 +++++++++++++ module/rdd-tmr-dialog.js | 5 +- module/rdd-utility.js | 100 ++--- module/tmr-rencontres.js | 26 +- styles/simple.css | 20 +- template.json | 136 +++--- .../calendar-astrologie-template-table.html | 56 +++ templates/calendar-astrologie-template.html | 32 +- templates/calendar-editor-template.html | 64 ++- templates/calendar-template.html | 4 +- templates/common/enum-duree.hbs | 3 + templates/common/timestamp.hbs | 23 ++ templates/enum-formuleduree.html | 9 + templates/item-maladie-sheet.html | 18 +- templates/item-poison-sheet.html | 19 +- templates/item-potion-sheet.html | 12 +- templates/item-queue-sheet.html | 13 + templates/item-rencontre-sheet.html | 1 + templates/item-souffle-sheet.html | 12 + templates/item/temporel.hbs | 17 + 41 files changed, 1020 insertions(+), 576 deletions(-) rename module/{ => item}/item-rencontre.js (93%) rename module/{ => item}/item-service.js (92%) rename module/{ => item}/item-signedraconique.js (82%) create mode 100644 module/item/maladie.js create mode 100644 module/item/ombre.js create mode 100644 module/item/poison.js create mode 100644 module/item/queue.js create mode 100644 module/item/souffle.js create mode 100644 module/rdd-timestamp.js create mode 100644 templates/calendar-astrologie-template-table.html create mode 100644 templates/common/enum-duree.hbs create mode 100644 templates/common/timestamp.hbs create mode 100644 templates/enum-formuleduree.html create mode 100644 templates/item/temporel.hbs diff --git a/module/actor.js b/module/actor.js index dca482fb..83d366c8 100644 --- a/module/actor.js +++ b/module/actor.js @@ -18,7 +18,7 @@ import { RdDItemArme } from "./item-arme.js"; import { RdDAlchimie } from "./rdd-alchimie.js"; import { STATUSES, StatusEffects } from "./settings/status-effects.js"; import { RdDItemCompetenceCreature } from "./item-competencecreature.js"; -import { RdDItemSigneDraconique } from "./item-signedraconique.js"; +import { RdDItemSigneDraconique } from "./item/item-signedraconique.js"; import { ReglesOptionelles } from "./settings/regles-optionelles.js"; import { EffetsDraconiques } from "./tmr/effets-draconiques.js"; import { Draconique } from "./tmr/draconique.js"; @@ -30,10 +30,11 @@ import { RdDPossession } from "./rdd-possession.js"; import { ENTITE_BLURETTE, ENTITE_INCARNE, ENTITE_NONINCARNE, SHOW_DICE, SYSTEM_RDD, SYSTEM_SOCKET_ID } from "./constants.js"; import { RdDConfirm } from "./rdd-confirm.js"; import { DialogValidationEncaissement } from "./dialog-validation-encaissement.js"; -import { RdDRencontre } from "./item-rencontre.js"; +import { RdDRencontre } from "./item/item-rencontre.js"; import { Targets } from "./targets.js"; import { DialogRepos } from "./dialog-repos.js"; import { RdDBaseActor } from "./actor/base-actor.js"; +import { RdDTimestamp } from "./rdd-timestamp.js"; const POSSESSION_SANS_DRACONIC = { img: 'systems/foundryvtt-reve-de-dragon/icons/entites/possession.webp', @@ -933,7 +934,7 @@ export class RdDActor extends RdDBaseActor { let expLog = duplicate(this.system.experiencelog); expLog.push({ mode: Misc.upperFirst(modeXP), valeur: valeurXP, raison: Misc.upperFirst(raisonXP), - daterdd: game.system.rdd.calendrier.getDateFromIndex(), + daterdd: game.system.rdd.calendrier.dateCourante(), datereel: `${d.getDate()}/${d.getMonth() + 1}/${d.getFullYear()}` }); await this.update({ [`system.experiencelog`]: expLog }); @@ -2727,10 +2728,10 @@ export class RdDActor extends RdDBaseActor { /* -------------------------------------------- */ getHeureNaissance() { - if (this.isCreatureEntite()) { - return 0; + if (this.isPersonnage()) { + return this.system.heure; } - return this.system.heure; + return 0; } /* -------------------------------------------- */ @@ -2818,10 +2819,16 @@ export class RdDActor extends RdDBaseActor { /* -------------------------------------------- */ async ajouteNombreAstral(callData) { + const indexDate = Number.parseInt(callData.date); // Ajout du nombre astral const item = { name: "Nombre Astral", type: "nombreastral", system: - { value: callData.nbAstral, istrue: callData.isvalid, jourindex: Number(callData.date), jourlabel: game.system.rdd.calendrier.getDateFromIndex(Number(callData.date)) } + { + value: callData.nbAstral, + istrue: callData.isvalid, + jourindex: indexDate, + jourlabel: RdDTimestamp.formatIndexDate(indexDate) + } }; await this.createEmbeddedDocuments("Item", [item]); // Affichage Dialog @@ -2830,7 +2837,7 @@ export class RdDActor extends RdDBaseActor { async supprimerAnciensNombresAstraux() { const toDelete = this.listItems('nombreastral') - .filter(it => it.system.jourindex < game.system.rdd.calendrier.getCurrentDayIndex()) + .filter(it => game.system.rdd.calendrier.isAfterIndexDate(it.system.jourindex)) .map(it => it._id); await this.deleteEmbeddedDocuments("Item", toDelete); } @@ -3694,6 +3701,7 @@ export class RdDActor extends RdDBaseActor { await this.onCreateOwnedDraconique(item, options, id); break; } + await item.onCreateItemTemporel(this); await item.onCreateDecoupeComestible(this); } diff --git a/module/actor/base-actor.js b/module/actor/base-actor.js index 5740b70f..7acad67f 100644 --- a/module/actor/base-actor.js +++ b/module/actor/base-actor.js @@ -1,7 +1,6 @@ import { ChatUtility } from "../chat-utility.js"; import { SYSTEM_SOCKET_ID } from "../constants.js"; import { Monnaie } from "../item-monnaie.js"; -import { RdDItem } from "../item.js"; import { Misc } from "../misc.js"; import { RdDAudio } from "../rdd-audio.js"; import { RdDUtility } from "../rdd-utility.js"; diff --git a/module/dialog-chronologie.js b/module/dialog-chronologie.js index c86dd519..cd24e6de 100644 --- a/module/dialog-chronologie.js +++ b/module/dialog-chronologie.js @@ -25,7 +25,7 @@ export class DialogChronologie extends Dialog { journaux: game.journal.filter(it => it.testUserPermission(game.user, CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER)), dateRdD: dateRdD, jourRdD: dateRdD.jour +1, - heureRdD: game.system.rdd.calendrier.getCurrentHeure(), + heureRdD: game.system.rdd.calendrier.heureCourante().key, dateReel: DialogChronologie.getCurrentDateTime() }; const html = await renderTemplate("systems/foundryvtt-reve-de-dragon/templates/dialog-chronologie.html", dialogData); diff --git a/module/dialog-create-signedraconique.js b/module/dialog-create-signedraconique.js index 86b98d45..fa012e9d 100644 --- a/module/dialog-create-signedraconique.js +++ b/module/dialog-create-signedraconique.js @@ -1,6 +1,6 @@ import { ChatUtility } from "./chat-utility.js"; import { HtmlUtility } from "./html-utility.js"; -import { RdDItemSigneDraconique } from "./item-signedraconique.js"; +import { RdDItemSigneDraconique } from "./item/item-signedraconique.js"; import { TMRUtility } from "./tmr-utility.js"; export class DialogCreateSigneDraconique extends Dialog { diff --git a/module/item-rencontre-sheet.js b/module/item-rencontre-sheet.js index 50a34834..c134300d 100644 --- a/module/item-rencontre-sheet.js +++ b/module/item-rencontre-sheet.js @@ -1,4 +1,4 @@ -import { RdDRencontre } from "./item-rencontre.js"; +import { RdDRencontre } from "./item/item-rencontre.js"; import { RdDItemSheet } from "./item-sheet.js"; export class RdDRencontreItemSheet extends RdDItemSheet { diff --git a/module/item-sheet.js b/module/item-sheet.js index b803de32..ca15056a 100644 --- a/module/item-sheet.js +++ b/module/item-sheet.js @@ -10,6 +10,7 @@ import { SYSTEM_RDD } from "./constants.js"; import { RdDSheetUtility } from "./rdd-sheet-utility.js"; import { SystemCompendiums } from "./settings/system-compendiums.js"; import { Misc } from "./misc.js"; +import { RdDTimestamp } from "./rdd-timestamp.js"; /** * Extend the basic ItemSheet for RdD specific items @@ -135,11 +136,7 @@ export class RdDItemSheet extends ItemSheet { RdDGemme.calculDataDerivees(this.item); } if (this.item.type == 'potion') { - if (this.dateUpdated) { - formData.system.prdate = this.dateUpdated; - this.dateUpdated = undefined; - } - await RdDHerbes.updatePotionData(formData); + await RdDHerbes.addPotionFormData(formData); } if (formData.isOwned && this.item.type == 'herbe' && (formData.system.categorie == 'Soin' || formData.system.categorie == 'Repos')) { formData.isIngredientPotionBase = true; @@ -185,10 +182,12 @@ export class RdDItemSheet extends ItemSheet { } }) - this.html.find('.enchanteDate').change((event) => { - let jour = Number(this.html.find('[name="splitDate.day"]').val()); - let mois = this.html.find('[name="splitDate.month"]').val(); - this.dateUpdated = game.system.rdd.calendrier.getIndexFromDate(jour, mois); + this.html.find('.date-enchantement').change((event) => { + const jour = Number(this.html.find('input.date-enchantement[name="enchantement.jour"]').val()); + const mois = RdDTimestamp.definition(this.html.find('select.date-enchantement[name="enchantement.mois"]').val()); + const indexDate = game.system.rdd.calendrier.getIndexFromDate(jour, mois.heure); + this.item.update({'system.prdate': indexDate}); + console.warn(`Date d'enchantement modifiée ${jour}/${mois.heure}: ${indexDate}`) }); this.html.find('.creer-tache-livre').click((event) => this._getEventActor(event).creerTacheDepuisLivre(this.item)); diff --git a/module/item-signedraconique-sheet.js b/module/item-signedraconique-sheet.js index 119a446c..6052079a 100644 --- a/module/item-signedraconique-sheet.js +++ b/module/item-signedraconique-sheet.js @@ -1,5 +1,5 @@ import { RdDItemSheet } from "./item-sheet.js"; -import { RdDItemSigneDraconique } from "./item-signedraconique.js"; +import { RdDItemSigneDraconique } from "./item/item-signedraconique.js"; import { TMRUtility } from "./tmr-utility.js"; /** diff --git a/module/item.js b/module/item.js index 03edc4fa..594ad6b4 100644 --- a/module/item.js +++ b/module/item.js @@ -2,6 +2,7 @@ import { DialogItemVente } from "./dialog-item-vente.js"; import { Grammar } from "./grammar.js"; import { Misc } from "./misc.js"; import { RdDHerbes } from "./rdd-herbes.js"; +import { RdDTimestamp } from "./rdd-timestamp.js"; import { RdDUtility } from "./rdd-utility.js"; import { SystemCompendiums } from "./settings/system-compendiums.js"; @@ -30,6 +31,7 @@ const typesObjetsDraconiques = ["queue", "ombre", "souffle", "tete", "signedraco const typesObjetsConnaissance = ["meditation", "recettealchimique", "sort"] const typesObjetsEffet = ["possession", "poison", "maladie"] const typesObjetsCompetence = ["competence", "competencecreature"] +const typesObjetsTemporels = ["poison", "maladie", "queue", "ombre", "souffle", "signedraconique", "rencontre"] const encBrin = 0.00005; // un brin = 1 décigramme = 1/10g = 1/10000kg = 1/20000 enc const encPepin = 0.0007; /* un pépin de gemme = 1/10 cm3 = 1/1000 l = 3.5/1000 kg = 7/2000 kg = 7/1000 enc densité 3.5 (~2.3 à 4, parfois plus) -- https://www.juwelo.fr/guide-des-pierres/faits-et-chiffres/ @@ -152,24 +154,15 @@ export class RdDItem extends Item { isMonnaie() { return this.type == 'monnaie'; } isNourritureBoisson() { return this.type == 'nourritureboisson'; } isService() { return this.type == 'service'; } - isCompetence() { - return typesObjetsCompetence.includes(this.type) - } - isInventaire(mode = 'materiel') { - return RdDItem.getItemTypesInventaire(mode).includes(this.type); - } - isOeuvre() { - return typesObjetsOeuvres.includes(this.type) - } - isDraconique() { - return typesObjetsDraconiques.includes(this.type) - } - isEffet() { - return typesObjetsEffet.includes(this.type) - } - isConnaissance() { - return typesObjetsConnaissance.includes(this.type) - } + isCompetence() { return typesObjetsCompetence.includes(this.type) } + isTemporel() { return typesObjetsTemporels.includes(this.type) } + + isOeuvre() { return typesObjetsOeuvres.includes(this.type) } + isDraconique() { return typesObjetsDraconiques.includes(this.type) } + isEffet() { return typesObjetsEffet.includes(this.type) } + isConnaissance() { return typesObjetsConnaissance.includes(this.type) } + + isInventaire(mode = 'materiel') { return RdDItem.getItemTypesInventaire(mode).includes(this.type); } getItemGroup() { if (this.isInventaire()) return "equipement"; @@ -383,6 +376,40 @@ export class RdDItem extends Item { await item.delete(); } + async onCreateItemTemporel(actor) { + if (this.isTemporel()) { + const timestampDebut = game.system.rdd.calendrier.timestamp; + const timestampFin = await this.calculerFinPeriodeTemporel(timestampDebut); + await actor.updateEmbeddedDocuments('Item', [{ + _id: this.id, + 'system.temporel.debut': duplicate(timestampDebut), + 'system.temporel.fin': duplicate(timestampFin), + }]) + } + } + + async calculerFinPeriodeTemporel(timestampDebut) { + return timestampDebut; + } + + async prolongerPeriode() { + if (this.actor) { + const current = game.system.rdd.calendrier.timestamp; + const finPeriode = new RdDTimestamp(this.system.temporel.fin) + const periodeSuivante = (finPeriode.compare(current)>0 ? finPeriode : current); + const timestampFin = await this.calculerFinPeriodeTemporel(periodeSuivante); + + await this.actor.updateEmbeddedDocuments('Item', [{ + _id: this.id, + 'system.temporel.fin': duplicate(timestampFin), + }]) + } + } + + async onFinTemporel() { + await this.actor?.deleteEmbeddedDocuments('Item', [this.id]); + } + async quantiteIncDec(nombre, options = { supprimerSiZero: false }) { const quantite = Number(this.system.quantite ?? -1); if (quantite >= 0) { diff --git a/module/item-rencontre.js b/module/item/item-rencontre.js similarity index 93% rename from module/item-rencontre.js rename to module/item/item-rencontre.js index 519b5129..bcd0ac7b 100644 --- a/module/item-rencontre.js +++ b/module/item/item-rencontre.js @@ -1,4 +1,5 @@ -import { EffetsRencontre } from "./effets-rencontres.js"; +import { EffetsRencontre } from "../effets-rencontres.js"; +import { RdDItem } from "../item.js"; const tableEffets = [ { code: "messager", resultat: "succes", description: "Envoie un message à (force) cases", method: EffetsRencontre.messager }, @@ -36,7 +37,11 @@ const tableEffets = [ // { code: "epart-souffle", resultat: "echec", description: "Souffle de dragon sur échec particulier" }, ]; -export class RdDRencontre { +export class RdDRencontre extends RdDItem { + + static get defaultIcon() { + return "systems/foundryvtt-reve-de-dragon/icons/tete_dragon.webp"; + } static getEffetsSucces() { return RdDRencontre.getEffets("succes"); } static getEffetsEchec() { return RdDRencontre.getEffets("echec"); } @@ -68,4 +73,8 @@ export class RdDRencontre { } } + async calculerFinPeriodeTemporel(debut) { + return await debut.nouvelleHeure().addHeures(12); + } + } diff --git a/module/item-service.js b/module/item/item-service.js similarity index 92% rename from module/item-service.js rename to module/item/item-service.js index 95e192b7..5c57f90c 100644 --- a/module/item-service.js +++ b/module/item/item-service.js @@ -1,4 +1,4 @@ -import { RdDItem } from "./item.js"; +import { RdDItem } from "../item.js"; export class RdDItemService extends RdDItem { diff --git a/module/item-signedraconique.js b/module/item/item-signedraconique.js similarity index 82% rename from module/item-signedraconique.js rename to module/item/item-signedraconique.js index 8bed1ed0..31eaf436 100644 --- a/module/item-signedraconique.js +++ b/module/item/item-signedraconique.js @@ -1,8 +1,9 @@ -import { defaultItemImg } from "./item.js"; -import { Misc } from "./misc.js"; -import { RdDDice } from "./rdd-dice.js"; -import { RdDRollTables } from "./rdd-rolltables.js"; -import { TMRType, TMRUtility } from "./tmr-utility.js"; +import { RdDItem, defaultItemImg } from "../item.js"; +import { Misc } from "../misc.js"; +import { RdDDice } from "../rdd-dice.js"; +import { RdDRollTables } from "../rdd-rolltables.js"; +import { RdDTimestamp } from "../rdd-timestamp.js"; +import { TMRType, TMRUtility } from "../tmr-utility.js"; const tableSignesIndicatifs = [ { rarete: "Très facile", difficulte: 0, xp: 6, nbCases: 14 }, @@ -15,7 +16,17 @@ const tableSignesIndicatifs = [ const DIFFICULTE_LECTURE_SIGNE_MANQUE = +11; -export class RdDItemSigneDraconique { +export class RdDItemSigneDraconique extends RdDItem { + + static get defaultIcon() { + return "systems/foundryvtt-reve-de-dragon/icons/tmr/signe_draconique.webp"; + } + + + async calculerFinPeriodeTemporel(debut) { + // TODO + return RdDTimestamp.formulesDuree().find(it => it.code == "").calcul(debut, this.actor); + } static prepareSigneDraconiqueMeditation(meditation, rolled) { return { @@ -96,6 +107,6 @@ export class RdDItemSigneDraconique { static async randomSigneDescription() { return await RdDRollTables.drawTextFromRollTable("Signes draconiques", false); - } + } } \ No newline at end of file diff --git a/module/item/maladie.js b/module/item/maladie.js new file mode 100644 index 00000000..f6ace94c --- /dev/null +++ b/module/item/maladie.js @@ -0,0 +1,13 @@ +import { RdDItem } from "../item.js"; + +export class RdDItemMaladie extends RdDItem { + + static get defaultIcon() { + return "systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp"; + } + + async calculerFinPeriodeTemporel(debut) { + return await debut.addPeriode(this.system.periode.nombre, this.system.periode.unite) ; + } + +} \ No newline at end of file diff --git a/module/item/ombre.js b/module/item/ombre.js new file mode 100644 index 00000000..c7d55ccd --- /dev/null +++ b/module/item/ombre.js @@ -0,0 +1,18 @@ +import { RdDItem } from "../item.js"; + +export class RdDItemOmbre extends RdDItem { + + static get defaultIcon() { + return "systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp"; + } + + async calculerFinPeriodeTemporel(debut) { + return await debut.appliquerDuree(this.system.duree, this.parent); + } + + async onFinTemporel() { + // fin de période + await this.prolongerPeriode(); + } + +} \ No newline at end of file diff --git a/module/item/poison.js b/module/item/poison.js new file mode 100644 index 00000000..c6ef408e --- /dev/null +++ b/module/item/poison.js @@ -0,0 +1,17 @@ +import { RdDItem } from "../item.js"; + +export class RdDItemPoison extends RdDItem { + + static get defaultIcon() { + return "systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp"; + } + + async calculerFinPeriodeTemporel(debut) { + return await debut.addPeriode(this.system.periode.nombre, this.system.periode.unite) ; + } + + async onFinTemporel() { + // fin de période + await this.prolongerPeriode(); + } +} \ No newline at end of file diff --git a/module/item/queue.js b/module/item/queue.js new file mode 100644 index 00000000..c21d1dbd --- /dev/null +++ b/module/item/queue.js @@ -0,0 +1,13 @@ +import { RdDItem } from "../item.js"; + +export class RdDItemQueue extends RdDItem { + + static get defaultIcon() { + return "systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp"; + } + + async calculerFinPeriodeTemporel(debut) { + return await debut.appliquerDuree(this.system.duree, this.parent); + } + +} \ No newline at end of file diff --git a/module/item/souffle.js b/module/item/souffle.js new file mode 100644 index 00000000..a0ff90c9 --- /dev/null +++ b/module/item/souffle.js @@ -0,0 +1,13 @@ +import { RdDItem } from "../item.js"; + +export class RdDItemSouffle extends RdDItem { + + static get defaultIcon() { + return "systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp"; + } + + async calculerFinPeriodeTemporel(debut) { + return await debut.appliquerDuree(this.system.duree, this.parent); + } + +} \ No newline at end of file diff --git a/module/rdd-astrologie-editeur.js b/module/rdd-astrologie-editeur.js index b2dd6260..3dbf6cbe 100644 --- a/module/rdd-astrologie-editeur.js +++ b/module/rdd-astrologie-editeur.js @@ -15,7 +15,7 @@ // Common conf let dialogConf = { content: html, title: "Editeur d'Astrologie", buttons: myButtons, default: "saveButton" }; - let dialogOptions = { classes: ["rdd-roll-dialog"], width: 600, height: 300, 'z-index': 99999 } + let dialogOptions = { classes: ["rdd-roll-dialog"], width: 600, height: 'fit-content', 'z-index': 99999 } super(dialogConf, dialogOptions) this.calendrier = calendrier; diff --git a/module/rdd-calendrier-editeur.js b/module/rdd-calendrier-editeur.js index d097a1d3..e5fac221 100644 --- a/module/rdd-calendrier-editeur.js +++ b/module/rdd-calendrier-editeur.js @@ -1,4 +1,4 @@ -import { Misc } from "./misc.js"; +import { RdDTimestamp } from "./rdd-timestamp.js"; /** * Extend the base Dialog entity by defining a custom window to perform roll. @@ -12,7 +12,7 @@ export class RdDCalendrierEditeur extends Dialog { content: html, title: "Editeur de date/heure", buttons: { - save: { label: "Enregistrer", callback: html => this.fillData() } + save: { label: "Enregistrer", callback: html => this.saveCalendrier() } }, default: "save" }; @@ -26,22 +26,42 @@ export class RdDCalendrierEditeur extends Dialog { activateListeners(html) { super.activateListeners(html); this.html = html; - this.html.find("input[name='nomMois']").val(this.calendrierData.moisKey); + this.html.find("input[name='annee']").val(this.calendrierData.annee); + this.html.find("select[name='nomMois']").val(this.calendrierData.moisKey); + this.html.find("input[name='jourMois']").val(this.calendrierData.jourMois); this.html.find("select[name='nomHeure']").val(this.calendrierData.heureKey); - this.html.find("select[name='jourMois']").val(this.calendrierData.jourMois); - this.html.find("select[name='minutesRelative']").val(this.calendrierData.minutesRelative); - this.html.find("select[name='annee']").val(this.calendrierData.annee); + this.html.find("input[name='minutesRelative']").val(this.calendrierData.minutesRelative); + + this.html.find("input[name='jourMois']").change(event => { + const jour = Number.parseInt(this.html.find("input[name='jourMois']").val()); + if (jour < 1) { + this.html.find("input[name='jourMois']").val(1); + } + if (jour > 28) { + this.html.find("input[name='jourMois']").val(28); + } + }); + this.html.find("input[name='minutesRelative']").change(event => { + const minute = Number.parseInt(this.html.find("input[name='minutesRelative']").val()); + if (minute < 0) { + this.html.find("input[name='minutesRelative']").val(0); + } + if (minute > 119) { + this.html.find("input[name='minutesRelative']").val(119); + } + + }); } /* -------------------------------------------- */ - fillData() { - this.calendrierData.annee = this.html.find("input[name='annee']").val(); - this.calendrierData.moisKey = this.html.find("select[name='nomMois']").val(); - this.calendrierData.heureKey = this.html.find("select[name='nomHeure']").val(); - this.calendrierData.jourMois = this.html.find("select[name='jourMois']").val(); - this.calendrierData.minutesRelative = this.html.find("select[name='minutesRelative']").val(); + saveCalendrier() { + const annee = Number.parseInt(this.html.find("input[name='annee']").val()); + const mois = this.html.find("select[name='nomMois']").val(); + const jour = Number.parseInt(this.html.find("input[name='jourMois']").val()); + const heure = this.html.find("select[name='nomHeure']").val(); + const minute = Number.parseInt(this.html.find("input[name='minutesRelative']").val()); - this.calendrier.saveEditeur(this.calendrierData) + this.calendrier.setNewTimestamp(RdDTimestamp.timestamp(annee, mois, jour, heure, minute)) } /* -------------------------------------------- */ diff --git a/module/rdd-calendrier.js b/module/rdd-calendrier.js index 2eda5830..5ec8cf76 100644 --- a/module/rdd-calendrier.js +++ b/module/rdd-calendrier.js @@ -1,32 +1,14 @@ -/* -------------------------------------------- */ import { RdDCalendrierEditeur } from "./rdd-calendrier-editeur.js"; import { RdDAstrologieEditeur } from "./rdd-astrologie-editeur.js"; -import { HtmlUtility } from "./html-utility.js"; import { RdDResolutionTable } from "./rdd-resolution-table.js"; import { RdDUtility } from "./rdd-utility.js"; -import { Grammar } from "./grammar.js"; import { RdDDice } from "./rdd-dice.js"; import { Misc } from "./misc.js"; import { HIDE_DICE, SHOW_DICE, SYSTEM_RDD, SYSTEM_SOCKET_ID } from "./constants.js"; import { DialogChronologie } from "./dialog-chronologie.js"; +import { RdDTimestamp } from "./rdd-timestamp.js"; /* -------------------------------------------- */ -const dossierIconesHeures = 'systems/foundryvtt-reve-de-dragon/icons/heures/' -const heuresList = ["vaisseau", "sirene", "faucon", "couronne", "dragon", "epees", "lyre", "serpent", "poissonacrobate", "araignee", "roseau", "chateaudormant"]; -const heuresDef = { - "vaisseau": { key: "vaisseau", label: "Vaisseau", lettreFont: 'v', saison: "printemps", heure: 0, icon: 'hd01.svg' }, - "sirene": { key: "sirene", label: "Sirène", lettreFont: 'i', saison: "printemps", heure: 1, icon: 'hd02.svg' }, - "faucon": { key: "faucon", label: "Faucon", lettreFont: 'f', saison: "printemps", heure: 2, icon: 'hd03.svg' }, - "couronne": { key: "couronne", label: "Couronne", lettreFont: '', saison: "ete", heure: 3, icon: 'hd04.svg' }, - "dragon": { key: "dragon", label: "Dragon", lettreFont: 'd', saison: "ete", heure: 4, icon: 'hd05.svg' }, - "epees": { key: "epees", label: "Epées", lettreFont: 'e', saison: "ete", heure: 5, icon: 'hd06.svg' }, - "lyre": { key: "lyre", label: "Lyre", lettreFont: 'l', saison: "automne", heure: 6, icon: 'hd07.svg' }, - "serpent": { key: "serpent", label: "Serpent", lettreFont: 's', saison: "automne", heure: 7, icon: 'hd08.svg' }, - "poissonacrobate": { key: "poissonacrobate", label: "Poisson Acrobate", lettreFont: 'p', saison: "automne", heure: 8, icon: 'hd09.svg' }, - "araignee": { key: "araignee", label: "Araignée", lettreFont: 'a', saison: "hiver", heure: 9, icon: 'hd10.svg' }, - "roseau": { key: "roseau", label: "Roseau", lettreFont: 'r', saison: "hiver", heure: 10, icon: 'hd11.svg' }, - "chateaudormant": { key: "chateaudormant", label: "Château Dormant", lettreFont: 'c', saison: "hiver", heure: 11, icon: 'hd12.svg' } -}; const saisonsDef = { "printemps": { label: "Printemps" }, "ete": { label: "Eté" }, @@ -34,11 +16,10 @@ const saisonsDef = { "hiver": { label: "Hiver" } }; -const RDD_MOIS_PAR_AN = 12; -export const RDD_JOUR_PAR_MOIS = 28; +const RDD_JOUR_PAR_MOIS = 28; const RDD_HEURES_PAR_JOUR = 12; -const RDD_MINUTES_PAR_HEURES = 120; const MAX_NOMBRE_ASTRAL = 12; +const JOURS_DU_MOIS = Array(RDD_JOUR_PAR_MOIS).fill().map((item, index) => 1 + index); /* -------------------------------------------- */ export class RdDCalendrier extends Application { @@ -55,57 +36,6 @@ export class RdDCalendrier extends Application { return { top: 200, left: 200 }; } - static getDefSigne(chiffre) { - chiffre = chiffre % RDD_MOIS_PAR_AN; - return Object.values(heuresDef).find(h => h.heure == chiffre); - } - - static getSigneAs(key, value) { - const heure = (typeof value == 'string' || typeof value == 'number') && Number.isInteger(Number(value)) - ? Number(value) - : (typeof value == 'string') ? RdDCalendrier.getChiffreFromSigne(value) - : undefined - - if (heure != undefined && ['key', 'label', 'lettreFont', 'saison', 'heure', 'icon'].includes(key)) { - return RdDCalendrier.getDefSigne(heure)[key] - } - if (heure != undefined && ['webp'].includes(key)) { - return RdDCalendrier.getDefSigne(heure)['icon'].replace('svg', 'webp'); - } - console.error(`Appel à getSigneAs('${key}', ${value}) avec une clé/heure incorrects`); - return value; - - } - static getChiffreFromSigne(signe) { - return heuresList.indexOf(signe); - } - - static createCalendrierInitial() { - return { - heureRdD: 0, - minutesRelative: 0, - indexJour: 0, - annee: 0, - moisRdD: 0, - moisLabel: heuresDef["vaisseau"].label, - jour: 0 - } - } - - getCalendrier(index) { - index = index ?? this.getCurrentDayIndex(); - const mois = Math.floor(index / RDD_JOUR_PAR_MOIS) % RDD_MOIS_PAR_AN; - return { - heureRdD: 0, // Index dans heuresList / heuresDef[x].heure - minutesRelative: 0, - indexJour: index, - annee: Math.floor(index / (RDD_JOUR_PAR_MOIS * RDD_MOIS_PAR_AN)), - moisRdD: RdDCalendrier.getDefSigne(mois).heure, - moisLabel: RdDCalendrier.getDefSigne(mois).label, - jour: (index % RDD_JOUR_PAR_MOIS) // Le calendrier stocke le jour en 0-27, mais en 1-28 à l'affichage - } - } - constructor() { super(); // position @@ -114,19 +44,19 @@ export class RdDCalendrier extends Application { this.calendrierPos = RdDCalendrier.createCalendrierPos(); game.settings.set(SYSTEM_RDD, "calendrier-pos", this.calendrierPos); } - // Calendrier - this.calendrier = duplicate(game.settings.get(SYSTEM_RDD, "calendrier") ?? RdDCalendrier.createCalendrierInitial()); - this.calendrier.annee = this.calendrier.annee ?? Math.floor((this.calendrier.moisRdD ?? 0) / RDD_MOIS_PAR_AN); - this.calendrier.moisRdD = (this.calendrier.moisRdD ?? 0) % RDD_MOIS_PAR_AN; + this.timestamp = new RdDTimestamp({}); if (Misc.isUniqueConnectedGM()) { // Uniquement si GM - game.settings.set(SYSTEM_RDD, "calendrier", this.calendrier); - + RdDTimestamp.setWorldTime(this.timestamp); this.listeNombreAstral = this.getListeNombreAstral(); this.rebuildListeNombreAstral(HIDE_DICE); // Ensure always up-to-date } - console.log('RdDCalendrier.constructor()', this.calendrier, this.calendrierPos, this.listeNombreAstral); + console.log('RdDCalendrier.constructor()', this.timestamp, this.timestamp.toOldCalendrier(), this.calendrierPos, this.listeNombreAstral); + } + + getCalendrier() { + return this.timestamp.toOldCalendrier(); } /* -------------------------------------------- */ @@ -227,48 +157,49 @@ export class RdDCalendrier extends Application { } /* -------------------------------------------- */ - getDateFromIndex(index) { - const dateRdD = this.getCalendrier(index); - return (dateRdD.jour + 1) + ' ' + dateRdD.moisLabel; + dateCourante() { + return this.timestamp.formatDate(); + } + + isAfterIndexDate(indexDate) { + return indexDate < this.timestamp.indexDate; } /* -------------------------------------------- */ - getDayMonthFromIndex(index = undefined) { - const dateRdD = this.getCalendrier(index); - return { - day: dateRdD.jour + 1, - month: heuresList[dateRdD.moisRdD] - } - } + heureCourante() { return RdDTimestamp.definition(this.timestamp.heure); } /* -------------------------------------------- */ - getCurrentHeure() { - return heuresList[this.calendrier.heureRdD]; + getCurrentMinute() { return this.timestamp.indexMinute; } + + getTimestampFinChateauDormant(nbJours = 0) { + return this.timestamp.nouveauJour().addJour(nbJours); } - /* -------------------------------------------- */ - getCurrentDayIndex() { - return (((this.calendrier.annee ?? 0) * RDD_MOIS_PAR_AN + (this.calendrier.moisRdD ?? 0)) * RDD_JOUR_PAR_MOIS) + (this.calendrier.jour ?? 0); + getTimestampFinHeure(nbHeures = 0) { + return this.timestamp.nouvelleHeure().addHeures(nbHeures); } /* -------------------------------------------- */ getIndexFromDate(jour, mois) { - return (heuresDef[mois].heure * RDD_JOUR_PAR_MOIS) + jour - 1; + const addYear = mois < this.timestamp.mois || (mois == this.timestamp.mois && jour < this.timestamp.jour) + const time = RdDTimestamp.timestamp(this.timestamp.annee + (addYear ? 1 : 0), mois, jour); + return time.indexDate; } + /* -------------------------------------------- */ - getJoursSuivants(num) { + getJoursSuivants(count) { let jours = []; - let index = this.getCurrentDayIndex(); - for (let i = 0; i < num; i++) { - jours[i] = { label: this.getDateFromIndex(index + i), index: index + i }; + let indexDate = this.timestamp.indexDate; + for (let i = 0; i < count; i++, indexDate++) { + jours[i] = { label: RdDTimestamp.formatIndexDate(indexDate), index: indexDate }; } return jours; } /* -------------------------------------------- */ - async ajouterNombreAstral(index, showDice = SHOW_DICE) { + async ajouterNombreAstral(indexDate, showDice = SHOW_DICE) { const nombreAstral = await RdDDice.rollTotal("1dh", { showDice: showDice, rollMode: "selfroll" }); - const dateFuture = this.getDateFromIndex(index); + const dateFuture = RdDTimestamp.formatIndexDate(indexDate); if (showDice != HIDE_DICE) { ChatMessage.create({ whisper: ChatMessage.getWhisperRecipients("GM"), @@ -278,14 +209,13 @@ export class RdDCalendrier extends Application { return { nombreAstral: nombreAstral, valeursFausses: [], - index: index + index: indexDate } } /* -------------------------------------------- */ getCurrentNombreAstral() { - let indexDate = this.getCurrentDayIndex(); - return this.getNombreAstral(indexDate); + return this.getNombreAstral(this.timestamp.indexDate); } /* -------------------------------------------- */ @@ -309,10 +239,9 @@ export class RdDCalendrier extends Application { /* -------------------------------------------- */ async rebuildListeNombreAstral(showDice = HIDE_DICE) { if (Misc.isUniqueConnectedGM()) { - let jourCourant = this.getCurrentDayIndex(); let newList = []; for (let i = 0; i < MAX_NOMBRE_ASTRAL; i++) { - let dayIndex = jourCourant + i; + let dayIndex = this.timestamp.indexDate + i; let na = this.listeNombreAstral.find(n => n.index == dayIndex); if (na) { newList[i] = na; @@ -320,25 +249,31 @@ export class RdDCalendrier extends Application { newList[i] = await this.ajouterNombreAstral(dayIndex, showDice); } } - game.settings.set(SYSTEM_RDD, "liste-nombre-astral", newList); this.listeNombreAstral = newList; + game.settings.set(SYSTEM_RDD, "liste-nombre-astral", newList); } } /* -------------------------------------------- */ - async onCalendarButton(ev) { - ev.preventDefault(); - const calendarAvance = ev.currentTarget.attributes['data-calendar-avance']; - const calendarSet = ev.currentTarget.attributes['data-calendar-set']; - if (calendarAvance) { - await this.incrementTime(Number(calendarAvance.value)); + async setNewTimestamp(newTimestamp) { + this.checkMaladiePoison(this.timestamp, newTimestamp); + + this.checkMaladie("round"); + this.checkMaladie("minute"); + if (this.timestamp.heure != newTimestamp.heure || this.timestamp.indexDate != newTimestamp.indexDate) { + this.checkMaladie("heure"); } - else if (calendarSet) { - this.positionnerHeure(Number(calendarSet.value)); + if (this.timestamp.indexDate != newTimestamp.indexDate) { + this.checkMaladie("jour"); } + + RdDTimestamp.setWorldTime(newTimestamp); + this.timestamp = newTimestamp; + await this.rebuildListeNombreAstral(); this.updateDisplay(); } + /* -------------------------------------------- */ checkMaladie(periode) { for (let actor of game.actors) { @@ -357,77 +292,94 @@ export class RdDCalendrier extends Application { } } + checkMaladiePoison(oldTimestamp, newTimestamp) { + // TODO + const isInPeriod = maladie => { + //TODO: utiliser les timestamp + return false; + } + + game.actors.filter(it => it.type == 'personnage') + .forEach(actor => { + actor.items.filter(it => it.type == 'maladie' || (it.type == 'poison' && it.system.active)) + .filter(m => isInPeriod(m)) + .forEach(m => { + if (m.system.identifie) { + ChatMessage.create({ content: `${actor.name} souffre de ${m.name} (${m.type}): vérifiez que les effets ne se sont pas aggravés !` }); + } else { + ChatMessage.create({ content: `${actor.name} souffre d'un mal inconnu (${m.type}): vérifiez que les effets ne se sont pas aggravés !` }); + } + let itemMaladie = actor.getItem(m.id) + itemMaladie.postItemToChat('gmroll'); + }) + }); + } + + /* -------------------------------------------- */ + async onCalendarButton(ev) { + ev.preventDefault(); + const calendarAvance = ev.currentTarget.attributes['data-calendar-avance']; + const calendarSet = ev.currentTarget.attributes['data-calendar-set']; + if (calendarAvance) { + await this.incrementTime(Number(calendarAvance.value)); + } + else if (calendarSet) { + this.positionnerHeure(Number(calendarSet.value)); + } + this.updateDisplay(); + } + /* -------------------------------------------- */ async incrementTime(minutes = 0) { - this.calendrier.minutesRelative += minutes; - this.checkMaladie("round"); - this.checkMaladie("minute"); - if (this.calendrier.minutesRelative >= RDD_MINUTES_PAR_HEURES) { - this.calendrier.minutesRelative -= RDD_MINUTES_PAR_HEURES; - this.calendrier.heureRdD += 1; - this.checkMaladie("heure"); - } - if (this.calendrier.heureRdD >= RDD_HEURES_PAR_JOUR) { - this.calendrier.heureRdD -= RDD_HEURES_PAR_JOUR; - await this.incrementerJour(); - this.checkMaladie("heure"); - this.checkMaladie("jour"); - } - game.settings.set(SYSTEM_RDD, "calendrier", duplicate(this.calendrier)); - // Notification aux joueurs // TODO: replace with Hook on game settings update - game.socket.emit(SYSTEM_SOCKET_ID, { - msg: "msg_sync_time", - data: duplicate(this.calendrier) - }); + await this.setNewTimestamp(this.timestamp.addMinutes(minutes)); } /* -------------------------------------------- */ async incrementerJour() { - const index = this.getCurrentDayIndex() + 1; - this.calendrier = this.getCalendrier(index); - await this.rebuildListeNombreAstral(); + await this.setNewTimestamp(this.timestamp.nouveauJour()); } /* -------------------------------------------- */ - syncPlayerTime(calendrier) { - this.calendrier = duplicate(calendrier); // Local copy update + syncPlayerTime(timestamp) { + this.timestamp = new RdDTimestamp(timestamp); this.updateDisplay(); } /* -------------------------------------------- */ async positionnerHeure(indexHeure) { - if (indexHeure <= this.calendrier.heureRdD) { - await this.incrementerJour(); - } - this.calendrier.heureRdD = indexHeure; - this.calendrier.minutesRelative = 0; - game.settings.set(SYSTEM_RDD, "calendrier", duplicate(this.calendrier)); + await this.setNewTimestamp(new RdDTimestamp({ indexDate: this.timestamp.indexDate + (this.timestamp.heure < indexHeure ? 0 : 1) }).addHeures(indexHeure)) } /* -------------------------------------------- */ fillCalendrierData(formData = {}) { - const mois = RdDCalendrier.getDefSigne(this.calendrier.moisRdD); - const heure = RdDCalendrier.getDefSigne(this.calendrier.heureRdD); - console.log('fillCalendrierData', this.calendrier, mois, heure); + const mois = RdDTimestamp.definition(this.timestamp.mois); + const heure = RdDTimestamp.definition(this.timestamp.heure); + + formData.annee = this.timestamp.annee; + + formData.moisKey = mois.key; + formData.nomMois = mois.label; // heures et mois nommés identiques + formData.iconMois = mois.icon; + formData.nomSaison = saisonsDef[mois.saison].label; + + formData.jourMois = this.timestamp.jour + 1; formData.heureKey = heure.key; - formData.moisKey = mois.key; - formData.jourMois = this.calendrier.jour + 1; - formData.nomMois = mois.label; // heures et mois nommés identiques - formData.annee = this.calendrier.annee; - formData.iconMois = dossierIconesHeures + mois.icon; + formData.heureRdD = this.timestamp.heure; formData.nomHeure = heure.label; - formData.iconHeure = dossierIconesHeures + heure.icon; - formData.nomSaison = saisonsDef[mois.saison].label; - formData.heureRdD = this.calendrier.heureRdD; - formData.minutesRelative = this.calendrier.minutesRelative; + formData.iconHeure = heure.icon; + + formData.minutesRelative = this.timestamp.minute; + formData.isGM = game.user.isGM; + + console.log('fillCalendrierData', this.timestamp, mois, heure, formData); return formData; } /* -------------------------------------------- */ getLectureAstrologieDifficulte(dateIndex) { - let indexNow = this.getCurrentDayIndex(); + let indexNow = this.timestamp.indexDate; let diffDay = dateIndex - indexNow; return - Math.floor(diffDay / 2); } @@ -449,9 +401,9 @@ export class RdDCalendrier extends Application { request.rolled = rollData.rolled; request.isValid = request.rolled.isSuccess; request.nbAstral = this.getNombreAstral(request.date); - + if (request.rolled.isSuccess) { - if (request.rolled.isPart){ + if (request.rolled.isPart) { // Gestion expérience (si existante) request.competence = actor.getCompetence("astrologie") request.selectedCarac = actor.system.carac["vue"]; @@ -483,55 +435,32 @@ export class RdDCalendrier extends Application { game.settings.set(SYSTEM_RDD, "liste-nombre-astral", this.listeNombreAstral); } - /* -------------------------------------------- */ - findHeure(heure) { - heure = Grammar.toLowerCaseNoAccentNoSpace(heure); - let parHeureOuLabel = Object.values(heuresDef).filter(it => (it.heure + 1) == parseInt(heure) || Grammar.toLowerCaseNoAccentNoSpace(it.label) == heure); - if (parHeureOuLabel.length == 1) { - return parHeureOuLabel[0]; - } - let parLabelPartiel = Object.values(heuresDef).filter(it => Grammar.toLowerCaseNoAccentNoSpace(it.label).includes(heure)); - if (parLabelPartiel.length > 0) { - parLabelPartiel.sort(Misc.ascending(h => h.label.length)); - return parLabelPartiel[0]; - } - return undefined; - } - /* -------------------------------------------- */ - getHeureNumber(hNum) { - let heure = Object.values(heuresDef).find(it => (it.heure) == hNum); - return heure + getHeureChance(heure) { + return heure + (this.getCurrentNombreAstral() ?? 1) - 1; } /* -------------------------------------------- */ getHeuresChanceMalchance(heureNaissance) { - let heuresChancesMalchances = []; - let defHeure = this.findHeure(heureNaissance); + let defHeure = RdDTimestamp.findHeure(heureNaissance); if (defHeure) { - let hn = defHeure.heure; - let chiffreAstral = this.getCurrentNombreAstral() ?? 0; - heuresChancesMalchances[0] = { value: "+4", heures: [this.getHeureNumber((hn + chiffreAstral) % RDD_HEURES_PAR_JOUR).label] }; - heuresChancesMalchances[1] = { - value: "+2", heures: [this.getHeureNumber((hn + chiffreAstral + 4) % RDD_HEURES_PAR_JOUR).label, - this.getHeureNumber((hn + chiffreAstral + 8) % RDD_HEURES_PAR_JOUR).label] - }; - heuresChancesMalchances[2] = { value: "-4", heures: [this.getHeureNumber((hn + chiffreAstral + 6) % RDD_HEURES_PAR_JOUR).label] }; - heuresChancesMalchances[3] = { - value: "-2", heures: [this.getHeureNumber((hn + chiffreAstral + 3) % RDD_HEURES_PAR_JOUR).label, - this.getHeureNumber((hn + chiffreAstral + 9) % RDD_HEURES_PAR_JOUR).label] - }; + const signe = h => h % RDD_HEURES_PAR_JOUR; + const chance = this.getHeureChance(defHeure.heure); + return [ + { ajustement: "+4", heures: [signe(chance)] }, + { ajustement: "+2", heures: [signe(chance + 4), signe(chance + 8)] }, + { ajustement: "-4", heures: [signe(chance + 6)] }, + { ajustement: "-2", heures: [signe(chance + 3), signe(chance + 9)] } + ]; } - return heuresChancesMalchances; + return []; } /* -------------------------------------------- */ getAjustementAstrologique(heureNaissance, name = undefined) { - let defHeure = this.findHeure(heureNaissance); + let defHeure = RdDTimestamp.findHeure(heureNaissance); if (defHeure) { - let hn = defHeure.heure; - let chiffreAstral = this.getCurrentNombreAstral() ?? 0; - let heureCourante = this.calendrier.heureRdD; - let ecartChance = (hn + chiffreAstral - heureCourante) % RDD_HEURES_PAR_JOUR; + const chance = this.getHeureChance(defHeure.heure); + const ecartChance = (chance - this.timestamp.heure) % RDD_HEURES_PAR_JOUR; switch (ecartChance) { case 0: return 4; case 4: case 8: return 2; @@ -551,9 +480,7 @@ export class RdDCalendrier extends Application { /* -------------------------------------------- */ getData() { let formData = super.getData(); - this.fillCalendrierData(formData); - this.setPos(this.calendrierPos); return formData; } @@ -602,30 +529,20 @@ export class RdDCalendrier extends Application { /* -------------------------------------------- */ async saveEditeur(calendrierData) { - this.calendrier.minutesRelative = Number(calendrierData.minutesRelative); - this.calendrier.jour = Number(calendrierData.jourMois) - 1; - this.calendrier.moisRdD = RdDCalendrier.getChiffreFromSigne(calendrierData.moisKey); - this.calendrier.annee = Number(calendrierData.annee); - this.calendrier.heureRdD = RdDCalendrier.getChiffreFromSigne(calendrierData.heureKey); - game.settings.set(SYSTEM_RDD, "calendrier", duplicate(this.calendrier)); - - await this.rebuildListeNombreAstral(); - - game.socket.emit(SYSTEM_SOCKET_ID, { - msg: "msg_sync_time", - data: duplicate(this.calendrier) - }); - - this.updateDisplay(); + const newTimestamp = RdDTimestamp.timestamp( + Number.parseInt(calendrierData.annee), + RdDTimestamp.definition(calendrierData.moisKey).heure, + Number.parseInt(calendrierData.jourMois), + RdDTimestamp.definition(calendrierData.heureKey).heure, + Number.parseInt(calendrierData.minutesRelative) + ); + await this.setNewTimestamp(newTimestamp); } /* -------------------------------------------- */ async showCalendarEditor() { - let calendrierData = duplicate(this.fillCalendrierData()); + let calendrierData = this.fillCalendrierData(); if (this.editeur == undefined) { - calendrierData.jourMoisOptions = RdDCalendrier.buildJoursMois(); - calendrierData.heuresOptions = [0, 1]; - calendrierData.minutesOptions = Array(RDD_MINUTES_PAR_HEURES).fill().map((item, index) => 0 + index); let html = await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/calendar-editor-template.html', calendrierData); this.editeur = new RdDCalendrierEditeur(html, this, calendrierData) } @@ -633,33 +550,30 @@ export class RdDCalendrier extends Application { this.editeur.render(true); } - static buildJoursMois() { - return Array(RDD_JOUR_PAR_MOIS).fill().map((item, index) => 1 + index); - } + static buildJoursMois() { return JOURS_DU_MOIS; } /* -------------------------------------------- */ async showAstrologieEditor() { - let calendrierData = duplicate(this.fillCalendrierData()); - let astrologieArray = []; + const calendrierData = duplicate(this.fillCalendrierData()); this.listeNombreAstral = this.listeNombreAstral || []; - for (let astralData of this.listeNombreAstral) { - astralData.humanDate = this.getDateFromIndex(astralData.index); - for (let vf of astralData.valeursFausses) { + + calendrierData.astrologieData = this.listeNombreAstral.map(astro => { + const timestamp = new RdDTimestamp({ indexDate: astro.index }); + astro.date = { mois: timestamp.mois, jour: timestamp.jour + 1 } + for (let vf of astro.valeursFausses) { let actor = game.actors.get(vf.actorId); vf.actorName = (actor) ? actor.name : "Inconnu"; } - astrologieArray.push(duplicate(astralData)); - } - let heuresParActeur = {}; - for (let actor of game.actors) { + return astro; + }); + + calendrierData.heuresParActeur = {}; + game.actors.filter(it => it.isPersonnage() && it.hasPlayerOwner).forEach(actor => { let heureNaissance = actor.getHeureNaissance(); if (heureNaissance) { - heuresParActeur[actor.name] = this.getHeuresChanceMalchance(heureNaissance); + calendrierData.heuresParActeur[actor.name] = this.getHeuresChanceMalchance(heureNaissance); } - } - //console.log("ASTRO", astrologieArray); - calendrierData.astrologieData = astrologieArray; - calendrierData.heuresParActeur = heuresParActeur; + }) let html = await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/calendar-astrologie-template.html', calendrierData); let astrologieEditeur = new RdDAstrologieEditeur(html, this, calendrierData) astrologieEditeur.updateData(calendrierData); diff --git a/module/rdd-herbes.js b/module/rdd-herbes.js index 5210e03e..859cccea 100644 --- a/module/rdd-herbes.js +++ b/module/rdd-herbes.js @@ -1,7 +1,6 @@ -import { RdDUtility } from "./rdd-utility.js"; -import { RdDCalendrier } from "./rdd-calendrier.js"; import { Grammar } from "./grammar.js"; import { SystemCompendiums } from "./settings/system-compendiums.js"; +import { RdDTimestamp } from "./rdd-timestamp.js"; /* -------------------------------------------- */ export class RdDHerbes extends Item { @@ -29,7 +28,7 @@ export class RdDHerbes extends Item { } /* -------------------------------------------- */ - static async updatePotionData(formData) { + static async addPotionFormData(formData) { formData.isSoins = formData.system.categorie.includes('Soin'); formData.isRepos = formData.system.categorie.includes('Repos'); if (formData.isSoins) { @@ -40,9 +39,8 @@ export class RdDHerbes extends Item { } formData.herbesSoins = RdDHerbes.buildHerbesList(this.herbesSoins, 12); formData.herbesRepos = RdDHerbes.buildHerbesList(this.herbesRepos, 7); - formData.jourMoisOptions = RdDCalendrier.buildJoursMois(); - formData.dateActuelle = game.system.rdd.calendrier.getDateFromIndex(); - formData.splitDate = game.system.rdd.calendrier.getDayMonthFromIndex(formData.system.prdate); + formData.dateActuelle = game.system.rdd.calendrier.dateCourante(); + formData.enchantement = RdDTimestamp.splitIndexDate(formData.system.prdate); } /* -------------------------------------------- */ diff --git a/module/rdd-main.js b/module/rdd-main.js index 2b13a1d2..54684146 100644 --- a/module/rdd-main.js +++ b/module/rdd-main.js @@ -1,10 +1,6 @@ import { SYSTEM_RDD, SYSTEM_SOCKET_ID } from "./constants.js"; import { RdDActor } from "./actor.js"; -import { RdDItemSheet } from "./item-sheet.js"; -import { RdDActorSheet } from "./actor-sheet.js"; -import { RdDActorCreatureSheet } from "./actor-creature-sheet.js"; -import { RdDActorVehiculeSheet } from "./actor-vehicule-sheet.js"; -import { RdDActorEntiteSheet } from "./actor-entite-sheet.js"; +import { RdDItem } from "./item.js"; import { RdDUtility } from "./rdd-utility.js"; import { TMRUtility } from "./tmr-utility.js"; import { RdDCalendrier } from "./rdd-calendrier.js"; @@ -19,26 +15,40 @@ import { ReglesOptionelles } from "./settings/regles-optionelles.js"; import { RdDHotbar } from "./rdd-hotbar-drop.js" import { EffetsDraconiques } from "./tmr/effets-draconiques.js"; import { RdDHerbes } from "./rdd-herbes.js"; -import { RdDItem } from "./item.js"; import { RdDDice } from "./rdd-dice.js"; import { RdDPossession } from "./rdd-possession.js"; -import { RdDSigneDraconiqueItemSheet } from "./item-signedraconique-sheet.js"; import { Misc } from "./misc.js"; import { Migrations } from './migrations.js'; import { DialogChronologie } from "./dialog-chronologie.js"; import { SystemCompendiums } from "./settings/system-compendiums.js"; -import { RdDRencontreItemSheet } from "./item-rencontre-sheet.js"; -import { TMRRencontres } from "./tmr-rencontres.js"; -import { RdDHerbeItemSheet } from "./item-herbe-sheet.js"; import { Environnement } from "./environnement.js"; -import { RdDIngredientItemSheet } from "./item-ingredient-sheet.js"; -import { RdDFauneItemSheet } from "./item-faune-sheet.js"; -import { RdDConteneurItemSheet } from "./item-conteneur-sheet.js"; -import { RdDServiceItemSheet } from "./item-service-sheet.js"; -import { RdDItemService } from "./item-service.js"; +import { RdDItemService } from "./item/item-service.js"; import { RdDBaseActor } from "./actor/base-actor.js"; import { RdDCommerceSheet } from "./actor/commerce-sheet.js"; import { RdDCommerce } from "./actor/commerce.js"; +import { RdDTimestamp } from "./rdd-timestamp.js"; +import { RdDItemMaladie } from "./item/maladie.js"; +import { RdDItemPoison } from "./item/poison.js"; +import { RdDItemSigneDraconique } from "./item/item-signedraconique.js"; +import { RdDItemQueue } from "./item/queue.js"; +import { RdDItemOmbre } from "./item/ombre.js"; +import { RdDItemSouffle } from "./item/souffle.js"; +import { RdDRencontre } from "./item/item-rencontre.js"; + +import { RdDActorSheet } from "./actor-sheet.js"; +import { RdDActorCreatureSheet } from "./actor-creature-sheet.js"; +import { RdDActorVehiculeSheet } from "./actor-vehicule-sheet.js"; +import { RdDActorEntiteSheet } from "./actor-entite-sheet.js"; +import { RdDItemSheet } from "./item-sheet.js"; +import { RdDServiceItemSheet } from "./item-service-sheet.js"; +import { RdDHerbeItemSheet } from "./item-herbe-sheet.js"; +import { RdDRencontreItemSheet } from "./item-rencontre-sheet.js"; +import { RdDIngredientItemSheet } from "./item-ingredient-sheet.js"; +import { RdDFauneItemSheet } from "./item-faune-sheet.js"; +import { RdDConteneurItemSheet } from "./item-conteneur-sheet.js"; +import { RdDSigneDraconiqueItemSheet } from "./item-signedraconique-sheet.js"; + +import { TMRRencontres } from "./tmr-rencontres.js"; /** * RdD system @@ -57,7 +67,14 @@ export class SystemReveDeDragon { this.RdDUtility = RdDUtility; this.RdDHotbar = RdDHotbar; this.itemClasses = { - service: RdDItemService + service: RdDItemService, + maladie: RdDItemMaladie, + poison: RdDItemPoison, + queue: RdDItemQueue, + ombre: RdDItemOmbre, + souffle: RdDItemSouffle, + signedraconique: RdDItemSigneDraconique, + rencontre: RdDRencontre } this.actorClasses = { creature: RdDActor, @@ -145,6 +162,7 @@ export class SystemReveDeDragon { CONFIG.Combat.documentClass = RdDCombatManager; // préparation des différents modules + RdDTimestamp.init(); SystemCompendiums.init(); DialogChronologie.init(); ReglesOptionelles.init(); @@ -181,15 +199,6 @@ export class SystemReveDeDragon { default: "avant-encaissement" }); - /* -------------------------------------------- */ - game.settings.register(SYSTEM_RDD, "calendrier", { - name: "calendrier", - scope: "world", - config: false, - default: RdDCalendrier.createCalendrierInitial(), - type: Object - }); - /* -------------------------------------------- */ game.settings.register(SYSTEM_RDD, "liste-nombre-astral", { name: "liste-nombre-astral", diff --git a/module/rdd-timestamp.js b/module/rdd-timestamp.js new file mode 100644 index 00000000..619dfc55 --- /dev/null +++ b/module/rdd-timestamp.js @@ -0,0 +1,292 @@ +import { SHOW_DICE, SYSTEM_RDD, SYSTEM_SOCKET_ID } from "./constants.js"; +import { Grammar } from "./grammar.js"; +import { Misc } from "./misc.js"; +import { RdDDice } from "./rdd-dice.js"; + +const RDD_MOIS_PAR_AN = 12; +const RDD_JOURS_PAR_MOIS = 28; +const RDD_JOURS_PAR_AN = 336; //RDD_JOURS_PAR_MOIS * RDD_MOIS_PAR_AN; +const RDD_HEURES_PAR_JOUR = 12; +const RDD_MINUTES_PAR_HEURES = 120; +const RDD_MINUTES_PAR_JOUR = 1440; //RDD_HEURES_PAR_JOUR * RDD_MINUTES_PAR_HEURES; +const ROUNDS_PAR_MINUTE = 10; +const CALENDRIER = "calendrier"; + +const DEFINITION_HEURES = [ + { key: "vaisseau", label: "Vaisseau", lettreFont: 'v', saison: "printemps" }, + { key: "sirene", label: "Sirène", lettreFont: 'i', saison: "printemps" }, + { key: "faucon", label: "Faucon", lettreFont: 'f', saison: "printemps" }, + { key: "couronne", label: "Couronne", lettreFont: '', saison: "ete" }, + { key: "dragon", label: "Dragon", lettreFont: 'd', saison: "ete" }, + { key: "epees", label: "Epées", lettreFont: 'e', saison: "ete" }, + { key: "lyre", label: "Lyre", lettreFont: 'l', saison: "automne" }, + { key: "serpent", label: "Serpent", lettreFont: 's', saison: "automne" }, + { key: "poissonacrobate", label: "Poisson Acrobate", lettreFont: 'p', saison: "automne" }, + { key: "araignee", label: "Araignée", lettreFont: 'a', saison: "hiver" }, + { key: "roseau", label: "Roseau", lettreFont: 'r', saison: "hiver" }, + { key: "chateaudormant", label: "Château Dormant", lettreFont: 'c', saison: "hiver" }, +] + +const FORMULES_DUREE = [ + { code: "", label: "", calcul: async (t, actor) => t.addJours(100 * RDD_JOURS_PAR_AN) }, + { code: "jour", label: "1 jour", calcul: async (t, actor) => t.nouveauJour().addJours(1) }, + { code: "1d7jours", label: "1d7 jour", calcul: async (t, actor) => t.nouveauJour().addJours(await RdDDice.rollTotal('1d7', { showDice: SHOW_DICE })) }, + { code: "1ddr", label: "Un dé draconique jours", calcul: async (t, actor) => t.nouveauJour().addJours(await RdDDice.rollTotal('1dr+7', { showDice: SHOW_DICE })) }, + { code: "hn", label: "Fin de l'Heure de Naissance", calcul: async (t, actor) => t.finHeure(actor.getHeureNaissance()) }, + // { code: "1h", label: "Une heure", calcul: async (t, actor) => t.nouvelleHeure().addHeures(1) }, + // { code: "12h", label: "12 heures", calcul: async (t, actor) => t.nouvelleHeure().addHeures(12) }, + // { code: "chateaudormant", label: "Fin Chateau dormant", calcul: async (t, actor) => t.nouveauJour() }, + // { code: "special", label: "Spéciale", calcul: async (t, actor) => t.addJours(100 * RDD_JOURS_PAR_AN) }, +] + +export class RdDTimestamp { + + static iconeHeure(heure) { + return `systems/foundryvtt-reve-de-dragon/icons/heures/hd${heure < 9 ? '0' : ''}${heure + 1}.svg`; + } + + static init() { + game.settings.register(SYSTEM_RDD, CALENDRIER, { + name: CALENDRIER, + scope: "world", + config: false, + default: { indexJour: 0, heureRdD: 0, minutesRelative: 0 }, + type: Object + }); + + for (let i = 0; i < DEFINITION_HEURES.length; i++) { + DEFINITION_HEURES[i].heure = i; + DEFINITION_HEURES[i].icon = RdDTimestamp.iconeHeure(i); + DEFINITION_HEURES[i].webp = DEFINITION_HEURES[i].icon.replace(".svg", ".webp"); + } + // TODO: positionner les calculs de FORMULES_DUREE + } + + /** + * @param signe + * @returns L'entrée de DEFINITION_HEURES correspondant au signe + */ + static definition(signe) { + if (Number.isInteger(signe)) { + return DEFINITION_HEURES[signe % RDD_HEURES_PAR_JOUR]; + } + let definition = DEFINITION_HEURES.find(it => it.key == signe); + if (!definition) { + definition = Misc.findFirstLike(signe, DEFINITION_HEURES, { mapper: it => it.label, description: 'signe' }); + } + return definition + } + + static formulesDuree() { + return FORMULES_DUREE + } + + static imgSigneHeure(heure) { + return RdDTimestamp.imgSigne(RdDTimestamp.definition(heure)); + } + + static imgSigne(signe) { + return `${signe.label}` + } + + static findHeure(heure) { + heure = Grammar.toLowerCaseNoAccentNoSpace(heure); + let parHeureOuLabel = DEFINITION_HEURES.filter(it => (it.heure) == parseInt(heure) % RDD_HEURES_PAR_JOUR || Grammar.toLowerCaseNoAccentNoSpace(it.label) == heure); + if (parHeureOuLabel.length == 1) { + return parHeureOuLabel[0]; + } + let parLabelPartiel = DEFINITION_HEURES.filter(it => Grammar.toLowerCaseNoAccentNoSpace(it.label).includes(heure)); + if (parLabelPartiel.length > 0) { + parLabelPartiel.sort(Misc.ascending(h => h.label.length)); + return parLabelPartiel[0]; + } + return undefined; + } + + static signeHeure(key, value) { + const signe = RdDTimestamp.definition(value); + if (signe && ['key', 'webp', 'label', 'lettreFont', 'saison', 'heure', 'icon'].includes(key)) { + return signe[key]; + } + console.error(`Appel à getSigneAs('${key}', ${value}) avec une clé/heure incorrects`); + return value; + + } + + static getCalendrier(indexDate, indexMinute = 0) { + return new RdDTimestamp({ indexDate, indexMinute }).toOldCalendrier(); + } + + /** + * + * @param indexMinute: la version formattée de la date + */ + static formatIndexDate(indexDate) { + return new RdDTimestamp({ indexDate }).formatDate() + } + static splitIndexDate(indexDate) { + const timestamp = new RdDTimestamp({ indexDate }); + return { + jour: timestamp.jour + 1, + mois: RdDTimestamp.definition(timestamp.mois).key + } + } + + static getWorldTime() { + return game.settings.get(SYSTEM_RDD, CALENDRIER); + } + + static setWorldTime(timestamp) { + game.settings.set(SYSTEM_RDD, CALENDRIER, timestamp.toOldCalendrier()); + game.socket.emit(SYSTEM_SOCKET_ID, { + msg: "msg_sync_time", + data: duplicate(timestamp) + }); + + } + + /** construit un RdDTimestamp à partir de l'année/mois/jour/heure?/minute? */ + static timestamp(annee, mois, jour, heure = 0, minute = 0) { + mois = this.definition(mois)?.heure + heure = this.definition(heure)?.heure + return new RdDTimestamp({ + indexDate: (jour - 1) + (mois + annee * RDD_MOIS_PAR_AN) * RDD_JOURS_PAR_MOIS, + indexMinute: heure * RDD_MINUTES_PAR_HEURES + minute + }) + } + + /** + * Constructeur d'un timestamp. + * Selon les paramètres, l'objet construit se base su: + * - le timestamp + * - la date numérique + minute (dans la journée) + * @param indexDate: la date à utiliser pour ce timestamp + * @param indexMinute: la minute de la journée à utiliser pour ce timestamp + * + */ + constructor({ indexDate = undefined, indexMinute = undefined }) { + function fromSettings() { + const fromSettings = RdDTimestamp.getWorldTime(); + return { indexDate: fromSettings.indexJour, indexMinute: fromSettings.heureRdD * RDD_MINUTES_PAR_HEURES + fromSettings.minutesRelative }; + } + + const val = Number.isInteger(indexDate) ? { indexDate, indexMinute: indexMinute ?? 0 } : fromSettings(); + + this.indexDate = val.indexDate + this.indexMinute = val.indexMinute + } + + toCalendrier() { + return { + timestamp: this, + annee: this.annee, + mois: RdDTimestamp.definition(this.mois), + jour: this.jour, + heure: RdDTimestamp.definition(this.heure), + minute: this.minute + }; + } + + /** + * Convertit un timestamp en donnée utile à l'affichage d'un calendrier + */ + toOldCalendrier() { + const calendrier = { + indexJour: this.indexDate, + annee: this.annee, + moisRdD: this.mois, + jour: this.jour, + heureRdD: this.heure, + moisLabel: RdDTimestamp.definition(this.mois).label, + heureLabel: RdDTimestamp.definition(this.heure).label, + minutesRelative: this.minute, + }; + return calendrier + } + get annee() { return Math.floor(this.indexDate / RDD_JOURS_PAR_AN) } + get mois() { return Math.floor((this.indexDate % RDD_JOURS_PAR_AN) / RDD_JOURS_PAR_MOIS) } + get jour() { return (this.indexDate % RDD_JOURS_PAR_AN) % RDD_JOURS_PAR_MOIS } + get heure() { return Math.floor(this.indexMinute / RDD_MINUTES_PAR_HEURES) } + get minute() { return this.indexMinute % RDD_MINUTES_PAR_HEURES } + get round() { return ROUNDS_PAR_MINUTE * (this.indexMinute - Math.floor(this.indexMinute)) } + + formatDate() { + const jour = this.jour + 1; + const mois = RdDTimestamp.definition(this.mois).label; + const annee = this.annee ?? ''; + return `${jour} ${mois}` + (annee ? ' ' + annee : ''); + } + + nouveauJour() { return new RdDTimestamp({ indexDate: this.indexDate + 1, indexMinute: 0 }) } + + nouvelleHeure() { + return this.heure >= RDD_HEURES_PAR_JOUR ? this.nouveauJour() : new RdDTimestamp({ + indexDate: this.indexDate, + indexMinute: (this.heure + 1) * RDD_MINUTES_PAR_HEURES + }) + } + + addJours(jours) { + return jours == 0 ? this : new RdDTimestamp({ + indexDate: this.indexDate + jours, + indexMinute: this.indexMinute + }) + } + + addHeures(heures) { + if (heures == 0) { + return this + } + const heure = this.heure + heures; + return new RdDTimestamp({ + indexDate: this.indexDate + Math.floor(heure / RDD_HEURES_PAR_JOUR), + indexMinute: (this.indexMinute + (heure % RDD_HEURES_PAR_JOUR)) % (RDD_MINUTES_PAR_JOUR) + }) + } + + addMinutes(minutes) { + if (minutes == 0) { + return this; + } + const indexMinute = this.indexMinute + minutes; + const jours = Math.floor(indexMinute / RDD_MINUTES_PAR_JOUR) + return new RdDTimestamp({ + indexDate: this.indexDate + jours, + indexMinute: indexMinute - (jours * RDD_MINUTES_PAR_JOUR) + }) + } + + addPeriode(nombre, unite) { + switch (unite) { + case 'heures': return this.addHeures(nombre) + case 'minutes': return this.addMinutes(nombre) + case 'jours': return this.addJours(nombre) + case 'rounds': return this.addMinutes(nombre / 10) + } + return this; + } + + finHeure(heure) { + return this.nouvelleHeure().addHeures((12 + heure - this.heure) % 12); + } + + async appliquerDuree(duree, actor) { + const formule = FORMULES_DUREE.find(it => it.code == duree) ?? FORMULES_DUREE.find(it => it.code == ""); + return await formule.calcul(this, actor); + } + + compare(timestamp) { + let diff = (this.indexDate - timestamp.indexDate) ?? (this.indexMinute - timestamp.indexMinute); + return diff < 0 ? -1 : diff > 0 ? 1 : 0; + } + + difference(timestamp) { + const jours = this.indexDate - timestamp.indexDate; + const minutes = this.indexMinute - timestamp.indexMinute; + return { + jours: jours, + heures: Math.floor(minutes / RDD_MINUTES_PAR_HEURES), + minutes: minutes % RDD_MINUTES_PAR_HEURES + } + } +} \ No newline at end of file diff --git a/module/rdd-tmr-dialog.js b/module/rdd-tmr-dialog.js index 0e7ffb31..c6c9f5d9 100644 --- a/module/rdd-tmr-dialog.js +++ b/module/rdd-tmr-dialog.js @@ -15,8 +15,9 @@ import { HtmlUtility } from "./html-utility.js"; import { ReglesOptionelles } from "./settings/regles-optionelles.js"; import { RdDDice } from "./rdd-dice.js"; import { STATUSES } from "./settings/status-effects.js"; -import { RdDRencontre } from "./item-rencontre.js"; +import { RdDRencontre } from "./item/item-rencontre.js"; import { RdDCalendrier } from "./rdd-calendrier.js"; +import { RdDTimestamp } from "./rdd-timestamp.js"; /* -------------------------------------------- */ @@ -840,7 +841,7 @@ export class RdDTMRDialog extends Dialog { async processSortReserve(sortReserve) { await this.actor.deleteEmbeddedDocuments('Item', [sortReserve.id]); console.log("declencheSortEnReserve", sortReserve); - const heureCible = RdDCalendrier.getSigneAs('label', sortReserve.system.heurecible); + const heureCible = RdDTimestamp.definition(sortReserve.system.heurecible).label; this._tellToUserAndGM(`Vous avez déclenché ${sortReserve.system.echectotal ? "l'échec total!" : "le sort"} en réserve ${sortReserve.name} diff --git a/module/rdd-utility.js b/module/rdd-utility.js index d8cb280c..688aec63 100644 --- a/module/rdd-utility.js +++ b/module/rdd-utility.js @@ -12,11 +12,10 @@ import { Monnaie } from "./item-monnaie.js"; import { RdDPossession } from "./rdd-possession.js"; import { RdDNameGen } from "./rdd-namegen.js"; import { RdDConfirm } from "./rdd-confirm.js"; -import { RdDCalendrier } from "./rdd-calendrier.js"; import { Environnement } from "./environnement.js"; import { RdDItemCompetence } from "./item-competence.js"; import { RdDResolutionTable } from "./rdd-resolution-table.js"; -import { RdDCommerce } from "./actor/commerce.js"; +import { RdDTimestamp } from "./rdd-timestamp.js"; /* -------------------------------------------- */ // This table starts at 0 -> niveau -10 @@ -177,9 +176,11 @@ export class RdDUtility { 'systems/foundryvtt-reve-de-dragon/templates/scripts/autocomplete-script.hbs', 'systems/foundryvtt-reve-de-dragon/templates/scripts/autocomplete.hbs', 'systems/foundryvtt-reve-de-dragon/templates/item/boutons-comestible.html', + 'systems/foundryvtt-reve-de-dragon/templates/item/temporel.hbs', 'systems/foundryvtt-reve-de-dragon/templates/item/partial-inventaire.html', 'systems/foundryvtt-reve-de-dragon/templates/item/partial-environnement.html', 'systems/foundryvtt-reve-de-dragon/templates/item/partial-tab-environnement.html', + 'systems/foundryvtt-reve-de-dragon/templates/item-queue-sheet.html', 'systems/foundryvtt-reve-de-dragon/templates/header-item.html', // partial enums 'systems/foundryvtt-reve-de-dragon/templates/enum-caracteristiques.html', @@ -200,6 +201,8 @@ export class RdDUtility { 'systems/foundryvtt-reve-de-dragon/templates/enum-tmr-type.html', 'systems/foundryvtt-reve-de-dragon/templates/enum-tmr-effet.html', // Partials + 'systems/foundryvtt-reve-de-dragon/templates/common/timestamp.hbs', + 'systems/foundryvtt-reve-de-dragon/templates/common/enum-duree.hbs', 'systems/foundryvtt-reve-de-dragon/templates/common/compendium-link.hbs', 'systems/foundryvtt-reve-de-dragon/templates/partial-description-overflow.html', 'systems/foundryvtt-reve-de-dragon/templates/partial-description-sort.html', @@ -279,7 +282,13 @@ export class RdDUtility { Handlebars.registerHelper('caseTmr-type', coord => TMRUtility.getTMRType(coord)); Handlebars.registerHelper('typeTmr-name', type => TMRUtility.typeTmrName(type)); Handlebars.registerHelper('effetRencontre-name', coord => TMRUtility.typeTmrName(coord)); - Handlebars.registerHelper('signeHeure', (key, heure) => RdDCalendrier.getSigneAs(key, heure)); + // TODO: upgrade + Handlebars.registerHelper('signeHeure', (key, heure) => RdDTimestamp.signeHeure(key, heure)); + Handlebars.registerHelper('timestamp-imgSigneHeure', (heure) => { return new Handlebars.SafeString(RdDTimestamp.imgSigneHeure(heure)) }); + Handlebars.registerHelper('timestamp-imgSigne', (heure) => { return new Handlebars.SafeString(RdDTimestamp.imgSigne(heure)) }); + Handlebars.registerHelper('timestamp-extract', timestamp => new RdDTimestamp(timestamp).toCalendrier()); + Handlebars.registerHelper('timestamp-formulesDuree', () => RdDTimestamp.formulesDuree()); + Handlebars.registerHelper('min', (...args) => Math.min(...args.slice(0, -1))); Handlebars.registerHelper('regle-optionnelle', (option) => ReglesOptionelles.isUsing(option)); Handlebars.registerHelper('trier', list => list.sort((a, b) => a.name.localeCompare(b.name))); @@ -338,69 +347,6 @@ export class RdDUtility { return undefined; } - /* -------------------------------------------- */ - static filterItemsPerTypeForSheet(formData, itemTypes) { - - RdDUtility.filterEquipementParType(formData, itemTypes); - - formData.sorts = this.arrayOrEmpty(itemTypes['sort']); - formData.rencontres = this.arrayOrEmpty(itemTypes['rencontre']); - formData.casestmr = this.arrayOrEmpty(itemTypes['casetmr']); - formData.signesdraconiques = this.arrayOrEmpty(itemTypes['signedraconique']); - formData.queues = this.arrayOrEmpty(itemTypes['queue']); - formData.souffles = this.arrayOrEmpty(itemTypes['souffle']); - formData.ombres = this.arrayOrEmpty(itemTypes['ombre']); - formData.tetes = this.arrayOrEmpty(itemTypes['tete']); - formData.taches = this.arrayOrEmpty(itemTypes['tache']); - formData.meditations = this.arrayOrEmpty(itemTypes['meditation']); - formData.chants = this.arrayOrEmpty(itemTypes['chant']); - formData.danses = this.arrayOrEmpty(itemTypes['danse']); - formData.musiques = this.arrayOrEmpty(itemTypes['musique']); - formData.oeuvres = this.arrayOrEmpty(itemTypes['oeuvre']); - formData.jeux = this.arrayOrEmpty(itemTypes['jeu']); - - formData.services = this.arrayOrEmpty(itemTypes['service']); - formData.recettescuisine = this.arrayOrEmpty(itemTypes['recettecuisine']); - formData.recettesAlchimiques = this.arrayOrEmpty(itemTypes['recettealchimique']); - formData.maladies = this.arrayOrEmpty(itemTypes['maladie']); - formData.poisons = this.arrayOrEmpty(itemTypes['poison']); - formData.possessions = this.arrayOrEmpty(itemTypes['possession']); - formData.maladiesPoisons = formData.maladies.concat(formData.poisons); - formData.competences = (itemTypes['competence'] ?? []).concat(itemTypes['competencecreature'] ?? []); - formData.sortsReserve = this.arrayOrEmpty(itemTypes['sortreserve']); - } - - static filterEquipementParType(formData, itemTypes) { - formData.conteneurs = this.arrayOrEmpty(itemTypes['conteneur']); - - formData.materiel = this.arrayOrEmpty(itemTypes['objet']); - formData.armes = this.arrayOrEmpty(itemTypes['arme']); - formData.armures = this.arrayOrEmpty(itemTypes['armure']); - formData.munitions = this.arrayOrEmpty(itemTypes['munition']); - formData.livres = this.arrayOrEmpty(itemTypes['livre']); - formData.potions = this.arrayOrEmpty(itemTypes['potion']); - formData.ingredients = this.arrayOrEmpty(itemTypes['ingredient']); - formData.faunes = this.arrayOrEmpty(itemTypes['faune']); - formData.herbes = this.arrayOrEmpty(itemTypes['herbe']); - formData.monnaie = this.arrayOrEmpty(itemTypes['monnaie']).sort(Monnaie.triValeurEntiere()); - formData.nourritureboissons = this.arrayOrEmpty(itemTypes['nourritureboisson']); - formData.gemmes = this.arrayOrEmpty(itemTypes['gemme']); - - formData.objets = formData.conteneurs - .concat(formData.materiel) - .concat(formData.armes) - .concat(formData.armures) - .concat(formData.munitions) - .concat(formData.livres) - .concat(formData.potions) - .concat(formData.ingredients) - .concat(formData.herbes) - .concat(formData.faunes) - .concat(formData.monnaie) - .concat(formData.nourritureboissons) - .concat(formData.gemmes); - } - /* -------------------------------------------- */ static buildArbreDeConteneurs(conteneurs, objets) { let objetVersConteneur = {}; @@ -474,7 +420,7 @@ export class RdDUtility { objet.niveau = profondeur; const display = afficherContenu ? 'item-display-show' : 'item-display-hide'; - let strContenu = `
    `; + let strContenu = `
      `; for (let subItem of objet.subItems) { strContenu += this.buildConteneur(subItem, profondeur + 1, templateItem, options); } @@ -628,7 +574,7 @@ export class RdDUtility { return await RdDUtility.prepareEncaissement(rollData, roll, armure); } - + /* -------------------------------------------- */ static async prepareEncaissement(rollData, roll, armure) { const jetTotal = roll.total + rollData.dmg.total - armure; @@ -644,11 +590,11 @@ export class RdDUtility { encaissement.endurance = await RdDUtility._evaluatePerte(encaissement.endurance, over20); encaissement.penetration = rollData.arme?.system.penetration ?? 0; encaissement.blessures = ( - encaissement.critiques> 0 ? "Critique": - encaissement.graves> 0 ? "Grave": - encaissement.legeres> 0 ? "Légère": - encaissement.eraflures>0 ? "Contusions/Eraflures": - 'Aucune' + encaissement.critiques > 0 ? "Critique" : + encaissement.graves > 0 ? "Grave" : + encaissement.legeres > 0 ? "Légère" : + encaissement.eraflures > 0 ? "Contusions/Eraflures" : + 'Aucune' ); return encaissement; } @@ -767,7 +713,7 @@ export class RdDUtility { html.on("click", '.rdd-world-content-link', async event => { const htmlElement = html.find(event.currentTarget); const id = htmlElement?.data("id"); - const doctype= htmlElement?.data("doctype"); + const doctype = htmlElement?.data("doctype"); switch (doctype ?? 'Item') { case 'Actor': return game.actors.get(id)?.sheet.render(true); @@ -851,7 +797,7 @@ export class RdDUtility { if (p2[2] == 'd') deniers += Number(p2[1]); if (p2[2] == 's') sols += Number(p2[1]); - let sommeAPayer = sols + deniers/100; + let sommeAPayer = sols + deniers / 100; let msgPayer = `La somme de ${sols} Sols et ${deniers} Deniers est à payer
      Payer` ChatMessage.create({ content: msgPayer }); @@ -934,10 +880,10 @@ export class RdDUtility { /* -------------------------------------------- */ static afficherHeuresChanceMalchance(heureNaissance) { if (game.user.isGM) { - let heure = game.system.rdd.calendrier.findHeure(heureNaissance); + const heure = RdDTimestamp.findHeure(heureNaissance - 1); if (heureNaissance && heure) { let ajustement = game.system.rdd.calendrier.getAjustementAstrologique(heureNaissance); - const current = game.system.rdd.calendrier.findHeure(game.system.rdd.calendrier.getCurrentHeure()); + const current = game.system.rdd.calendrier.heureCourante(); ChatMessage.create({ content: `A l'heure de ${current.label}, le modificateur de Chance/Malchance est de ${Misc.toSignedString(ajustement)} pour l'heure de naissance ${heure.label}.`, whisper: ChatMessage.getWhisperRecipients("GM") diff --git a/module/tmr-rencontres.js b/module/tmr-rencontres.js index 0d7bfcd1..94ed295c 100644 --- a/module/tmr-rencontres.js +++ b/module/tmr-rencontres.js @@ -12,10 +12,10 @@ export class TMRRencontres { static init() { const tmrRencontre = new TMRRencontres(); game.system.rdd.rencontresTMR = tmrRencontre; - + } - constructor(){ + constructor() { this.table = new CompendiumTable('rencontres', 'Item', 'rencontre', Misc.ascending(it => it.system.ordreTri)); } @@ -59,24 +59,16 @@ export class TMRRencontres { return rencontre.clone({ 'system.force': await RdDDice.rollTotal(rencontre.system.formule), 'system.coord': tmr?.coord, - 'system.date': game.system.rdd.calendrier.getDateFromIndex(), - 'system.heure': game.system.rdd.calendrier.getCurrentHeure() + 'system.date': game.system.rdd.calendrier.dateCourante(), + 'system.heure': game.system.rdd.calendrier.heureCourante().key }, { save: false }); } async calculRencontre(rencontre, tmr = undefined) { - if (rencontre.system.coord == "") { - rencontre.system.coord = tmr?.coord; - } - if (rencontre.system.force == 0) { - rencontre.system.force = await RdDDice.rollTotal(rencontre.system.formule); - } - if (rencontre.system.date == "") { - rencontre.system.date = game.system.rdd.calendrier.getDateFromIndex(); - } - if (rencontre.system.heure == "") { - rencontre.system.heure = game.system.rdd.calendrier.getCurrentHeure(); - } + rencontre.system.coord = rencontre.system.coord ?? tmr?.coord; + rencontre.system.force = rencontre.system.force ?? await RdDDice.rollTotal(rencontre.system.formule); + rencontre.system.date = rencontre.system.date ?? game.system.rdd.calendrier.dateCourante(); + rencontre.system.heure = rencontre.system.heure ?? game.system.rdd.calendrier.heureCourante().key; return rencontre; } @@ -110,7 +102,7 @@ export class TMRRencontres { /* -------------------------------------------- */ - async $chatRolledRencontre(row, rencontre,tmr) { + async $chatRolledRencontre(row, rencontre, tmr) { const flavorContent = await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/chat-compendium-table-roll-rencontre.html', { roll: row.roll, diff --git a/styles/simple.css b/styles/simple.css index e7488487..df57b1a7 100644 --- a/styles/simple.css +++ b/styles/simple.css @@ -476,6 +476,12 @@ input:is(.blessure-premiers_soins, .blessure-soins_complets) { border-width: 0; border: 1px solid rgba(0, 0, 0, 0); } +.img-signe-heure { + vertical-align: bottom; + max-width: 1.5rem; + max-height: 1.5rem; + border-width: 0; +} .button-effect-img { vertical-align: baseline; max-width: 16px; @@ -1607,21 +1613,13 @@ div.competence-column div.categorie-competence{ .calendar-btn-edit{ grid-row: 1; grid-column: 1; - margin: auto; - color: rgba(0, 0, 0, 0.5); } -.astrologie-btn-edit:hover, -.calendar-btn-edit:hover { - color: #FFF; - border: 0px solid #000; - cursor: pointer; -} -.calendar-btn{ - margin: auto; +:is(.astrologie-btn-edit,.calendar-btn-edit,.calendar-btn){ + margin: auto; border: 1px solid rgba(0, 0, 0, 0); color: rgba(255, 255, 255, 0.5); } -.calendar-btn:hover { +:is(.astrologie-btn-edit,.calendar-btn-edit,.calendar-btn):hover { color: var(--color-controls-hover); border: 1px solid var(--color-control-border-hover); cursor: pointer; diff --git a/template.json b/template.json index 423c91d0..94f48e62 100644 --- a/template.json +++ b/template.json @@ -37,14 +37,14 @@ "equipage": 0, "capacite_encombrement": 0, "etat": { - "resistance" : { + "resistance": { "type": "number", "max": 20, "value": 20, "label": "Résistance", "derivee": false }, - "structure":{ + "structure": { "type": "number", "max": 10, "value": 10, @@ -90,7 +90,7 @@ "derivee": false }, "resonnance": { - "actors" : [] + "actors": [] } }, "compteurs": { @@ -532,19 +532,19 @@ } }, "personnage": { - "templates": [ "personnage", "background", "subacteurs" ] + "templates": ["personnage", "background", "subacteurs"] }, "creature": { - "templates": [ "creature", "description" ] + "templates": ["creature", "description"] }, "entite": { - "templates": [ "entite", "description" ] + "templates": ["entite", "description"] }, "vehicule": { - "templates": [ "vehicule", "description" ] + "templates": ["vehicule", "description"] }, - "commerce":{ - "templates": [ "description" ], + "commerce": { + "templates": ["description"], "pourcentage": 100, "illimite": false } @@ -565,6 +565,18 @@ "description": "", "descriptionmj": "" }, + "temporel": { + "temporel": { + "debut": { + "indexDate": 0, + "indexMinute": 0 + }, + "fin": { + "indexDate": 0, + "indexMinute": 0 + } + } + }, "equipement": { "equipe": false }, @@ -580,11 +592,11 @@ }, "comestible": { "sust": 0, - "exotisme": 0 + "exotisme": 0 } }, "competence": { - "templates": [ "description" ], + "templates": ["description"], "niveau": 0, "default_diffLibre": 0, "base": 0, @@ -595,7 +607,7 @@ "xp_sort": 0 }, "competencecreature": { - "templates": [ "description" ], + "templates": ["description"], "categorie_parade": "", "niveau": 0, "default_diffLibre": 0, @@ -607,7 +619,7 @@ "dommages": 0 }, "possession": { - "templates": [ "description" ], + "templates": ["description"], "typepossession": "", "possede": false, "possessionid": "", @@ -617,26 +629,34 @@ "date": 0 }, "maladie": { - "templates": [ "description" ], + "templates": ["description", "temporel"], "identifie": false, "malignite": 0, "periodicite": "", + "periode": { + "unite": "", + "nombre": 0 + }, "remedesconnus": false, "remedes": "", - "dommages":"" + "dommages": "" }, "poison": { - "templates": [ "description" ], + "templates": ["description", "temporel"], "identifie": false, "malignite": 0, "periodicite": "", + "periode": { + "unite": "", + "nombre": 0 + }, "remedesconnus": false, "remedes": "", - "dommages":"", + "dommages": "", "active": false }, "arme": { - "templates": [ "description", "equipement", "inventaire" ], + "templates": ["description", "equipement", "inventaire"], "resistance": 0, "categorie_parade": "", "dommages": "0", @@ -657,24 +677,24 @@ "initpremierround": "" }, "armure": { - "templates": [ "description", "equipement", "inventaire" ], + "templates": ["description", "equipement", "inventaire"], "protection": 0, "deterioration": 0, "malus": 0 }, "conteneur": { - "templates": [ "description", "inventaire" ], + "templates": ["description", "inventaire"], "contenu": [], "capacite": 0 }, "objet": { - "templates": [ "description", "inventaire"] + "templates": ["description", "inventaire"] }, "monnaie": { - "templates": [ "description", "inventaire" ] + "templates": ["description", "inventaire"] }, "gemme": { - "templates": [ "description", "inventaire" ], + "templates": ["description", "inventaire"], "type": "", "taille": 0, "purete": 0, @@ -682,10 +702,10 @@ "enchantabilite": 0 }, "munition": { - "templates": [ "description", "inventaire" ] + "templates": ["description", "inventaire"] }, "nourritureboisson": { - "templates": [ "description", "inventaire", "comestible"], + "templates": ["description", "inventaire", "comestible"], "cuisinier": "", "boisson": false, "desaltere": 0, @@ -693,19 +713,19 @@ "force": 0 }, "herbe": { - "templates": [ "description", "inventaire", "environnement"], + "templates": ["description", "inventaire", "environnement", "comestible"], "niveau": 0, "base": 0, "categorie": "" }, "ingredient": { - "templates": [ "description", "inventaire", "environnement", "comestible"], + "templates": ["description", "inventaire", "environnement", "comestible"], "niveau": 0, "base": 0, "categorie": "" }, "faune": { - "templates": [ "description", "inventaire", "environnement", "comestible"], + "templates": ["description", "inventaire", "environnement", "comestible"], "categorie": "", "actor": { "id": "", @@ -714,7 +734,7 @@ } }, "livre": { - "templates": [ "description", "inventaire" ], + "templates": ["description", "inventaire"], "competence": "", "auteur": "", "difficulte": 0, @@ -724,7 +744,7 @@ "niveau_maximum": 0 }, "potion": { - "templates": [ "description", "inventaire" ], + "templates": ["description", "inventaire", "temporel"], "rarete": "", "categorie": "", "herbe": "", @@ -736,16 +756,16 @@ "prdate": 0 }, "service": { - "templates": [ "description", "inventaire" ], + "templates": ["description", "inventaire"], "moral": false }, "musique": { - "templates": [ "description" ], + "templates": ["description"], "niveau": "", "reference": "" }, "danse": { - "templates": [ "description" ], + "templates": ["description"], "type": "", "agilite": false, "apparence": false, @@ -753,19 +773,19 @@ "reference": "" }, "chant": { - "templates": [ "description" ], + "templates": ["description"], "niveau": "", "reference": "" }, "jeu": { - "templates": [ "description" ], + "templates": ["description"], "type": "", "base": "", "caraccomp": "", "reference": "" }, "recettecuisine": { - "templates": [ "description" ], + "templates": ["description"], "niveau": "", "ingredients": "", "duree": "", @@ -774,14 +794,14 @@ "reference": "" }, "oeuvre": { - "templates": [ "description" ], + "templates": ["description"], "default_carac": "", "competence": "", "niveau": 0, "reference": "" }, "recettealchimique": { - "templates": [ "description" ], + "templates": ["description"], "but": "", "utilisation": "", "enchantement": "", @@ -789,7 +809,7 @@ "manipulation": "" }, "tache": { - "templates": [ "description" ], + "templates": ["description"], "carac": "", "competence": "", "periodicite": "", @@ -802,7 +822,7 @@ "cacher_points_de_tache": false }, "sort": { - "templates": [ "description" ], + "templates": ["description"], "draconic": "", "duree": "", "JR": "", @@ -818,7 +838,7 @@ "coutseuil": 0 }, "sortreserve": { - "sortid" : "", + "sortid": "", "draconic": "", "coord": "", "ptreve": 0, @@ -826,7 +846,7 @@ "echectotal": false }, "rencontre": { - "templates": [ "description" ], + "templates": ["description", "temporel"], "genre": "f", "formule": "2d4", "refoulement": 1, @@ -841,7 +861,7 @@ "effets": [], "message": "", "poesie": "", - "reference":"" + "reference": "" }, "echec": { "effets": [], @@ -868,45 +888,45 @@ } }, "queue": { - "templates": [ "description" ], + "templates": ["description", "temporel"], "frequence": 0, "hautrevant": false, "categorie": "", "refoulement": 0, "duree": "", - "restant" : 0 + "restant": 0 }, "ombre": { - "templates": [ "description" ], + "templates": ["description", "temporel"], "frequence": 0, "hautrevant": false, "categorie": "false", "refoulement": 2, "duree": "", - "restant" : 0 + "restant": 0 }, "souffle": { - "templates": [ "description" ], + "templates": ["description", "temporel"], "frequence": 0, "hautrevant": false, "duree": "", - "restant" : 0 + "restant": 0 }, "tete": { - "templates": [ "description" ], + "templates": ["description"], "frequence": 0, "hautrevant": false }, "casetmr": { - "templates": [ "description" ], + "templates": ["description"], "coord": "", "type": "", "label": "", "specific": "", - "sourceid":"" + "sourceid": "" }, "meditation": { - "templates": [ "description" ], + "templates": ["description"], "competence": "", "theme": "", "support": "", @@ -915,10 +935,10 @@ "veture": "", "comportement": "", "tmr": "", - "malus" : 0 + "malus": 0 }, "signedraconique": { - "templates": [ "description" ], + "templates": ["description", "temporel"], "typesTMR": [], "ephemere": true, "duree": "1 round", @@ -930,9 +950,9 @@ } }, "tarot": { - "templates": [ "description" ], - "concept":"", - "aspect":"", + "templates": ["description"], + "concept": "", + "aspect": "", "frequence": 1 }, "nombreastral": { diff --git a/templates/calendar-astrologie-template-table.html b/templates/calendar-astrologie-template-table.html new file mode 100644 index 00000000..bac8d367 --- /dev/null +++ b/templates/calendar-astrologie-template-table.html @@ -0,0 +1,56 @@ +
      +
      +
      +

      Horoscope

      +
      +
      + {{!-- Sheet Body --}} +
      +
      + + + + {{#each astrologieData as |nombreData key|}} + + {{/each}} + + + + {{#each astrologieData as |nombreData key|}} + + {{/each}} + +
      Date{{nombreData.date.jour}}{{timestamp-imgSigneHeure nombreData.date.mois}}
      Nombre astral +
        + {{nombreData.nombreAstral}} + {{#each nombreData.valeursFausses as |fausseVal key|}} +
      1. {{fausseVal.actorName}} - {{fausseVal.nombreAstral}}
      2. + {{/each}} +
      +
      +
      +
      + + + + + + + + + {{#each heuresParActeur as |heuresDef name|}} + + + {{#each heuresDef as |ajustement|}} + + {{/each}} + + {{/each}} +
      +4+2-2-4
      {{name}}: + {{#each ajustement.heures as |heure|}} + {{timestamp-imgSigneHeure heure}} + {{/each}} +
      +
      +
      +
      diff --git a/templates/calendar-astrologie-template.html b/templates/calendar-astrologie-template.html index 62499527..28178557 100644 --- a/templates/calendar-astrologie-template.html +++ b/templates/calendar-astrologie-template.html @@ -4,47 +4,49 @@

      Horoscope

      - {{!-- Sheet Body --}}
      + {{#each astrologieData as |nombreData key|}} - + {{/each}} + {{#each astrologieData as |nombreData key|}} {{/each}} -
      Date{{nombreData.humanDate}}{{nombreData.date.jour}}{{timestamp-imgSigneHeure nombreData.date.mois}}
      Nombre astral
        {{nombreData.nombreAstral}} {{#each nombreData.valeursFausses as |fausseVal key|}}
      1. {{fausseVal.actorName}} - {{fausseVal.nombreAstral}}
      2. - {{/each}} + {{/each}}
      +
      -
        +
          {{#each heuresParActeur as |heuresDef name|}} -
        • {{name}}
        • -
            - {{#each heuresDef as |heure idx|}} -
          • {{heure.value}} : - {{#each heure.heures as |heureName idx|}} - {{heureName}}  +
          • + {{name}}: + + |{{#each heuresDef as |ajustement|}} + + {{#each ajustement.heures as |heure|}} + {{timestamp-imgSigneHeure heure}} + {{/each}} + | + {{/each}} -
          • - {{/each}} -
          + {{/each}}
      - diff --git a/templates/calendar-editor-template.html b/templates/calendar-editor-template.html index 3f69620e..eb3ce338 100644 --- a/templates/calendar-editor-template.html +++ b/templates/calendar-editor-template.html @@ -8,44 +8,36 @@ {{!-- Sheet Body --}}
      - - +
      + + +
      +
      + + +
      +
      + + +
      - - -
      -
      - - -
      -
      - - -
      -
      - - +
      + + +
      +
      + + +
      diff --git a/templates/calendar-template.html b/templates/calendar-template.html index 13951d34..6ec5bb51 100644 --- a/templates/calendar-template.html +++ b/templates/calendar-template.html @@ -1,8 +1,8 @@
      {{#if isGM}} - - + + {{/if}}

      Jour {{jourMois}} de {{nomMois}} ({{nomSaison}})

      diff --git a/templates/common/enum-duree.hbs b/templates/common/enum-duree.hbs new file mode 100644 index 00000000..b0a91858 --- /dev/null +++ b/templates/common/enum-duree.hbs @@ -0,0 +1,3 @@ +{{#each (timestamp-formulesDuree) as |duree|}} + +{{/each}} \ No newline at end of file diff --git a/templates/common/timestamp.hbs b/templates/common/timestamp.hbs new file mode 100644 index 00000000..6f9a6b9f --- /dev/null +++ b/templates/common/timestamp.hbs @@ -0,0 +1,23 @@ +
      +
      + + + {{timestamp-imgSigne mois}} + + +
      +
      + + {{timestamp-imgSigne heure}} + + +
      +
      \ No newline at end of file diff --git a/templates/enum-formuleduree.html b/templates/enum-formuleduree.html new file mode 100644 index 00000000..1feef106 --- /dev/null +++ b/templates/enum-formuleduree.html @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/templates/item-maladie-sheet.html b/templates/item-maladie-sheet.html index 0f8049ca..b165c726 100644 --- a/templates/item-maladie-sheet.html +++ b/templates/item-maladie-sheet.html @@ -14,35 +14,37 @@
      {{#if (or isGM system.identifie)}}
      - +
      - +
      - +
      - +
      - +
      {{#if (or isGM system.remedesconnus)}}
      - +
      {{/if}} {{/if}} + {{#if (and isGM isOwned)}} + {{>"systems/foundryvtt-reve-de-dragon/templates/item/temporel.hbs" this labeldebut="Contractée" labelfin="Prochain jet"}} + {{/if}} {{>"systems/foundryvtt-reve-de-dragon/templates/partial-item-description.html"}} - +
      - diff --git a/templates/item-poison-sheet.html b/templates/item-poison-sheet.html index d25ee4c8..01073ced 100644 --- a/templates/item-poison-sheet.html +++ b/templates/item-poison-sheet.html @@ -13,37 +13,40 @@ {{!-- Sheet Body --}}
      - - + +
      {{#if (or isGM system.identifie)}}
      - +
      - +
      - +
      - +
      - +
      {{#if (or isGM system.remedesconnus)}}
      - +
      {{/if}} {{/if}} + {{#if (and isGM isOwned system.active)}} + {{>"systems/foundryvtt-reve-de-dragon/templates/item/temporel.hbs" this labeldebut="Contracté" labelfin="Prochain jet"}} + {{/if}} {{>"systems/foundryvtt-reve-de-dragon/templates/partial-item-description.html"}} diff --git a/templates/item-potion-sheet.html b/templates/item-potion-sheet.html index b7ecd665..b7a91d56 100644 --- a/templates/item-potion-sheet.html +++ b/templates/item-potion-sheet.html @@ -85,15 +85,9 @@
      - - + diff --git a/templates/item-queue-sheet.html b/templates/item-queue-sheet.html index 3f41467f..efa2faa7 100644 --- a/templates/item-queue-sheet.html +++ b/templates/item-queue-sheet.html @@ -19,11 +19,24 @@
      +
      + + +
      +
      + {{#if isOwned}} + {{>"systems/foundryvtt-reve-de-dragon/templates/item/temporel.hbs" this labeldebut="Depuis le" labelfin="Jusqu'au"}} + {{/if}} + {{>"systems/foundryvtt-reve-de-dragon/templates/partial-item-hautrevant.html"}} {{>"systems/foundryvtt-reve-de-dragon/templates/partial-item-frequence.html"}} {{>"systems/foundryvtt-reve-de-dragon/templates/partial-item-description.html"}} diff --git a/templates/item-rencontre-sheet.html b/templates/item-rencontre-sheet.html index edc87565..f8b3d4cc 100644 --- a/templates/item-rencontre-sheet.html +++ b/templates/item-rencontre-sheet.html @@ -27,6 +27,7 @@
      + {{>"systems/foundryvtt-reve-de-dragon/templates/item/temporel.hbs" this labeldebut="Rencontrée le" labelfin="Disparaît le"}} {{else}}
      diff --git a/templates/item-souffle-sheet.html b/templates/item-souffle-sheet.html index 6c55fb10..ba875b8b 100644 --- a/templates/item-souffle-sheet.html +++ b/templates/item-souffle-sheet.html @@ -2,6 +2,18 @@ {{>"systems/foundryvtt-reve-de-dragon/templates/header-item.html"}} {{!-- Sheet Body --}}
      +
      + + +
      + + {{#if isOwned}} + {{>"systems/foundryvtt-reve-de-dragon/templates/item/temporel.hbs" this labeldebut="Depuis le" labelfin="Jusqu'au"}} + {{/if}} {{>"systems/foundryvtt-reve-de-dragon/templates/partial-item-hautrevant.html"}} {{>"systems/foundryvtt-reve-de-dragon/templates/partial-item-frequence.html"}} diff --git a/templates/item/temporel.hbs b/templates/item/temporel.hbs new file mode 100644 index 00000000..a4d3b9ef --- /dev/null +++ b/templates/item/temporel.hbs @@ -0,0 +1,17 @@ +
      + {{>"systems/foundryvtt-reve-de-dragon/templates/common/timestamp.hbs" + (timestamp-extract system.temporel.debut) + path='system.temporel.debut' + label=(either labeldebut 'Date début') + disabled='' + }} + +
      +
      + {{>"systems/foundryvtt-reve-de-dragon/templates/common/timestamp.hbs" + (timestamp-extract system.temporel.fin) + path='system.temporel.fin' + label=(either labelfin 'Date fin') + disabled='' + }} +
      From 388629d36ebfed39a00f55f4ff126e5c78f1a977 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 7 Jan 2023 19:46:27 +0100 Subject: [PATCH 06/14] =?UTF-8?q?Fix:=20=C3=A9dition=20des=20comp=C3=A9ten?= =?UTF-8?q?ces=20de=20cr=C3=A9atures?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- module/actor-entite-sheet.js | 34 +++++++++++++++--------------- module/actor.js | 22 +++++++++++-------- styles/simple.css | 2 ++ templates/actor/comp-creature.html | 6 +++--- 4 files changed, 35 insertions(+), 29 deletions(-) diff --git a/module/actor-entite-sheet.js b/module/actor-entite-sheet.js index 0b0e54c2..d7a96ce0 100644 --- a/module/actor-entite-sheet.js +++ b/module/actor-entite-sheet.js @@ -3,20 +3,20 @@ import { RdDActorSheet } from "./actor-sheet.js"; export class RdDActorEntiteSheet extends RdDActorSheet { /** @override */ - static get defaultOptions() { - return mergeObject(super.defaultOptions, { - classes: ["rdd", "sheet", "actor"], - template: "systems/foundryvtt-reve-de-dragon/templates/actor-entite-sheet.html", + static get defaultOptions() { + return mergeObject(super.defaultOptions, { + classes: ["rdd", "sheet", "actor"], + template: "systems/foundryvtt-reve-de-dragon/templates/actor-entite-sheet.html", width: 640, height: 720, - tabs: [{navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "carac"}], - dragDrop: [{dragSelector: ".item-list .item", dropSelector: undefined}] + tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "carac" }], + dragDrop: [{ dragSelector: ".item-list .item", dropSelector: undefined }] }); } /* -------------------------------------------- */ /** @override */ - activateListeners(html) { + activateListeners(html) { super.activateListeners(html); // Everything below here is only needed if the sheet is editable @@ -24,17 +24,17 @@ export class RdDActorEntiteSheet extends RdDActorSheet { // On competence change this.html.find('.creature-carac').change(async event => { - let compName = event.currentTarget.attributes.compname.value; - this.actor.updateCreatureCompetence( compName, "carac_value", parseInt(event.target.value) ); - } ); + let compName = event.currentTarget.attributes.compname.value; + this.actor.updateCreatureCompetence(compName, "carac_value", parseInt(event.target.value)); + }); this.html.find('.creature-niveau').change(async event => { - let compName = event.currentTarget.attributes.compname.value; - this.actor.updateCreatureCompetence( compName, "niveau", parseInt(event.target.value) ); - } ); - this.html.find('.creature-dommages').change(async event => { - let compName = event.currentTarget.attributes.compname.value; - this.actor.updateCreatureCompetence( compName, "dommages", parseInt(event.target.value) ); - } ); + let compName = event.currentTarget.attributes.compname.value; + this.actor.updateCreatureCompetence(compName, "niveau", parseInt(event.target.value)); + }); + this.html.find('.creature-dommages').change(async event => { + let compName = event.currentTarget.attributes.compname.value; + this.actor.updateCreatureCompetence(compName, "dommages", parseInt(event.target.value)); + }); } } diff --git a/module/actor.js b/module/actor.js index 83d366c8..dcf92e44 100644 --- a/module/actor.js +++ b/module/actor.js @@ -847,17 +847,21 @@ export class RdDActor extends RdDBaseActor { } /* -------------------------------------------- */ - async updateCreatureCompetence(idOrName, fieldName, compValue) { + async updateCreatureCompetence(idOrName, fieldName, value) { let competence = this.getCompetence(idOrName); if (competence) { - const update = { _id: competence.id } - if (fieldName == "niveau") - update['system.niveau'] = compValue; - else if (fieldName == "dommages") - update['system.dommages'] = compValue; - else - update['system.carac_value'] = compValue; - await this.updateEmbeddedDocuments('Item', [update]); // updates one EmbeddedEntity + function getPath(fieldName) { + switch (fieldName) { + case "niveau": return 'system.niveau'; + case "dommages": return 'system.dommages'; + case "carac_value": return 'system.carac_value'; + } + return undefined + } + const path = getPath(fieldName); + if (path){ + await this.updateEmbeddedDocuments('Item', [{ _id: competence.id, [path]: value }]); // updates one EmbeddedEntity + } } } diff --git a/styles/simple.css b/styles/simple.css index df57b1a7..b72ee6a6 100644 --- a/styles/simple.css +++ b/styles/simple.css @@ -1158,6 +1158,8 @@ div.competence-column div.categorie-competence{ margin-left: 4px; } .sante-value, +.competence-carac, +.competence-damage, .competence-value { flex-grow: 0; flex-basis: 2rem; diff --git a/templates/actor/comp-creature.html b/templates/actor/comp-creature.html index 7628e807..39122cab 100644 --- a/templates/actor/comp-creature.html +++ b/templates/actor/comp-creature.html @@ -6,13 +6,13 @@ {{comp.name}} - - - {{#if @root.options.vueDetaillee}} From 19b3adc222b968ad3581acf245cc9491f89f81c4 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 7 Jan 2023 20:04:18 +0100 Subject: [PATCH 07/14] Cleanup logs --- templates/actor/carac-entitee.html | 1 - templates/actor/commerce-inventaire-item.html | 1 - 2 files changed, 2 deletions(-) diff --git a/templates/actor/carac-entitee.html b/templates/actor/carac-entitee.html index 53bde06d..6a3b38d8 100644 --- a/templates/actor/carac-entitee.html +++ b/templates/actor/carac-entitee.html @@ -1,4 +1,3 @@ -{{log 'entitee.system' system}}
      1. Catégorie : diff --git a/templates/actor/commerce-inventaire-item.html b/templates/actor/commerce-inventaire-item.html index 5190fbeb..c9f2293c 100644 --- a/templates/actor/commerce-inventaire-item.html +++ b/templates/actor/commerce-inventaire-item.html @@ -12,7 +12,6 @@ {{item.name}} - {{log 'item-inventaire' this}} {{#unless item.parent.system.illimite}} {{#unless (or (eq item.type 'service') (and (eq item.type 'conteneur') (not vide)))}} From 739fcbdf09d12a7b47e0574b37d82677dae21a41 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 7 Jan 2023 20:06:04 +0100 Subject: [PATCH 08/14] Calendrier/timestamp, suite MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Correction autour des éditeurs/affichages Migration de la date du monde dans les settings --- module/dialog-chronologie.js | 15 ++--- module/rdd-astrologie-editeur.js | 27 ++++---- module/rdd-calendrier-editeur.js | 45 ++++++------- module/rdd-calendrier.js | 67 +++++++++---------- module/rdd-timestamp.js | 71 ++++++++++----------- module/rdd-utility.js | 2 - styles/simple.css | 4 +- templates/calendar-astrologie-template.html | 1 + templates/calendar-editor-template.html | 37 ++--------- templates/calendar-template.html | 13 ++-- templates/chronologie-entry.html | 2 +- templates/common/timestamp.hbs | 10 ++- templates/dialog-chronologie.html | 24 ++----- 13 files changed, 136 insertions(+), 182 deletions(-) diff --git a/module/dialog-chronologie.js b/module/dialog-chronologie.js index cd24e6de..374c1f9e 100644 --- a/module/dialog-chronologie.js +++ b/module/dialog-chronologie.js @@ -1,5 +1,6 @@ import { SYSTEM_RDD } from "./constants.js"; import { Grammar } from "./grammar.js"; +import { RdDTimestamp } from "./rdd-timestamp.js"; const LATEST_USED_JOURNAL_ID = "chronologie-dernier-journal"; @@ -16,16 +17,13 @@ export class DialogChronologie extends Dialog { }); } static async create() { - const dateRdD = game.system.rdd.calendrier.getCalendrier(); const dialogData = { auteur: game.user.name, isGM: game.user.isGM, information: "", journalId: game.settings.get(SYSTEM_RDD, LATEST_USED_JOURNAL_ID), journaux: game.journal.filter(it => it.testUserPermission(game.user, CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER)), - dateRdD: dateRdD, - jourRdD: dateRdD.jour +1, - heureRdD: game.system.rdd.calendrier.heureCourante().key, + timestamp: game.system.rdd.calendrier.timestamp, dateReel: DialogChronologie.getCurrentDateTime() }; const html = await renderTemplate("systems/foundryvtt-reve-de-dragon/templates/dialog-chronologie.html", dialogData); @@ -93,11 +91,12 @@ export class DialogChronologie extends Dialog { auteur: this.html.find("form.rdddialogchrono :input[name='auteur']").val(), information: this.html.find("form.rdddialogchrono :input[name='information']").val(), dateRdD: { - jour: this.html.find("form.rdddialogchrono :input[name='jourRdD']").val(), - moisRdD: this.html.find("form.rdddialogchrono :input[name='dateRdD.moisRdD.key']").val(), - annee: this.html.find("form.rdddialogchrono :input[name='dateRdD.annee']").val() + jour: this.html.find("form.rdddialogchrono :input[name='chronologie.jourDuMois']").val(), + mois: RdDTimestamp.definition(this.html.find("form.rdddialogchrono :input[name='chronologie.mois']").val()), + annee: this.html.find("form.rdddialogchrono :input[name='chronologie.annee']").val(), + heure: RdDTimestamp.definition(this.html.find("form.rdddialogchrono :input[name='chronologie.heure']").val()), + minute: this.html.find("form.rdddialogchrono :input[name='chronologie.minute']").val(), }, - heureRdD: this.html.find("form.rdddialogchrono :input[name='heureRdD']").val(), dateReel: this.html.find("form.rdddialogchrono :input[name='dateReel']").val().replace('T', ' ') } } diff --git a/module/rdd-astrologie-editeur.js b/module/rdd-astrologie-editeur.js index 3dbf6cbe..d681af82 100644 --- a/module/rdd-astrologie-editeur.js +++ b/module/rdd-astrologie-editeur.js @@ -3,23 +3,28 @@ * Extend the base Dialog entity by defining a custom window to perform roll. * @extends {Dialog} */ - export class RdDAstrologieEditeur extends Dialog { +export class RdDAstrologieEditeur extends Dialog { /* -------------------------------------------- */ constructor(html, calendrier, calendrierData) { let myButtons = { - resetButton: { label: "Re-tirer les nombres astraux", callback: html => this.resetNombreAstraux() }, - saveButton: { label: "Fermer", callback: html => this.fillData() } - }; + resetButton: { label: "Re-tirer les nombres astraux", callback: html => this.resetNombreAstraux() }, + saveButton: { label: "Fermer", callback: html => this.fillData() } + }; // Common conf let dialogConf = { content: html, title: "Editeur d'Astrologie", buttons: myButtons, default: "saveButton" }; - let dialogOptions = { classes: ["rdd-roll-dialog"], width: 600, height: 'fit-content', 'z-index': 99999 } + let dialogOptions = { + classes: ["rdd-roll-dialog"], width: 600, + height: 'fit-content', + 'max-height': 800, + 'z-index': 99999 + } super(dialogConf, dialogOptions) - + this.calendrier = calendrier; - this.updateData( calendrierData ); + this.updateData(calendrierData); } activateListeners(html) { @@ -28,7 +33,7 @@ } - /* -------------------------------------------- */ + /* -------------------------------------------- */ async resetNombreAstraux() { game.system.rdd.calendrier.resetNombreAstral(); await game.system.rdd.calendrier.rebuildListeNombreAstral(); @@ -36,12 +41,12 @@ game.system.rdd.calendrier.showAstrologieEditor(); } - /* -------------------------------------------- */ - fillData( ) { + /* -------------------------------------------- */ + fillData() { } /* -------------------------------------------- */ - updateData( calendrierData ) { + updateData(calendrierData) { this.calendrierData = duplicate(calendrierData); } diff --git a/module/rdd-calendrier-editeur.js b/module/rdd-calendrier-editeur.js index e5fac221..d6347ffa 100644 --- a/module/rdd-calendrier-editeur.js +++ b/module/rdd-calendrier-editeur.js @@ -26,40 +26,35 @@ export class RdDCalendrierEditeur extends Dialog { activateListeners(html) { super.activateListeners(html); this.html = html; - this.html.find("input[name='annee']").val(this.calendrierData.annee); - this.html.find("select[name='nomMois']").val(this.calendrierData.moisKey); - this.html.find("input[name='jourMois']").val(this.calendrierData.jourMois); - this.html.find("select[name='nomHeure']").val(this.calendrierData.heureKey); - this.html.find("input[name='minutesRelative']").val(this.calendrierData.minutesRelative); - this.html.find("input[name='jourMois']").change(event => { - const jour = Number.parseInt(this.html.find("input[name='jourMois']").val()); - if (jour < 1) { - this.html.find("input[name='jourMois']").val(1); + this.html.find("input[name='calendar.annee']").val(this.calendrierData.annee); + this.html.find("select[name='calendar.mois']").val(this.calendrierData.mois.key); + this.html.find("select[name='calendar.heure']").val(this.calendrierData.heure.key); + RdDCalendrierEditeur.setLimited(this.html.find("input[name='calendar.jourDuMois']"), this.calendrierData.jourDuMois, 1, 28); + RdDCalendrierEditeur.setLimited(this.html.find("input[name='calendar.minute']"), this.calendrierData.minute, 0, 119); + } + + static setLimited(input, init, min, max) { + input.val(init); + input.change(event => { + const val = Number.parseInt(input.val()); + if (val < min) { + input.val(min); } - if (jour > 28) { - this.html.find("input[name='jourMois']").val(28); + if (val > max) { + input.val(max); } }); - this.html.find("input[name='minutesRelative']").change(event => { - const minute = Number.parseInt(this.html.find("input[name='minutesRelative']").val()); - if (minute < 0) { - this.html.find("input[name='minutesRelative']").val(0); - } - if (minute > 119) { - this.html.find("input[name='minutesRelative']").val(119); - } - }); } /* -------------------------------------------- */ saveCalendrier() { - const annee = Number.parseInt(this.html.find("input[name='annee']").val()); - const mois = this.html.find("select[name='nomMois']").val(); - const jour = Number.parseInt(this.html.find("input[name='jourMois']").val()); - const heure = this.html.find("select[name='nomHeure']").val(); - const minute = Number.parseInt(this.html.find("input[name='minutesRelative']").val()); + const annee = Number.parseInt(this.html.find("input[name='calendar.annee']").val()); + const mois = this.html.find("select[name='calendar.mois']").val(); + const jour = Number.parseInt(this.html.find("input[name='calendar.jourDuMois']").val()); + const heure = this.html.find("select[name='calendar.heure']").val(); + const minute = Number.parseInt(this.html.find("input[name='calendar.minute']").val()); this.calendrier.setNewTimestamp(RdDTimestamp.timestamp(annee, mois, jour, heure, minute)) } diff --git a/module/rdd-calendrier.js b/module/rdd-calendrier.js index 5ec8cf76..d58055ce 100644 --- a/module/rdd-calendrier.js +++ b/module/rdd-calendrier.js @@ -6,15 +6,7 @@ import { RdDDice } from "./rdd-dice.js"; import { Misc } from "./misc.js"; import { HIDE_DICE, SHOW_DICE, SYSTEM_RDD, SYSTEM_SOCKET_ID } from "./constants.js"; import { DialogChronologie } from "./dialog-chronologie.js"; -import { RdDTimestamp } from "./rdd-timestamp.js"; - -/* -------------------------------------------- */ -const saisonsDef = { - "printemps": { label: "Printemps" }, - "ete": { label: "Eté" }, - "automne": { label: "Automne" }, - "hiver": { label: "Hiver" } -}; +import { RdDTimestamp, WORLD_TIMESTAMP_SETTING } from "./rdd-timestamp.js"; const RDD_JOUR_PAR_MOIS = 28; const RDD_HEURES_PAR_JOUR = 12; @@ -45,7 +37,7 @@ export class RdDCalendrier extends Application { game.settings.set(SYSTEM_RDD, "calendrier-pos", this.calendrierPos); } // Calendrier - this.timestamp = new RdDTimestamp({}); + this.timestamp = RdDTimestamp.getWorldTime(); if (Misc.isUniqueConnectedGM()) { // Uniquement si GM RdDTimestamp.setWorldTime(this.timestamp); @@ -53,10 +45,14 @@ export class RdDCalendrier extends Application { this.rebuildListeNombreAstral(HIDE_DICE); // Ensure always up-to-date } console.log('RdDCalendrier.constructor()', this.timestamp, this.timestamp.toOldCalendrier(), this.calendrierPos, this.listeNombreAstral); + Hooks.on('updateSetting', async (setting, update, options, id) => this.onUpdateSetting(setting, update, options, id)); } - getCalendrier() { - return this.timestamp.toOldCalendrier(); + async onUpdateSetting(setting, update, options, id) { + if (setting.key == SYSTEM_RDD + '.' + WORLD_TIMESTAMP_SETTING) { + this.timestamp = RdDTimestamp.getWorldTime(); + this.updateDisplay(); + } } /* -------------------------------------------- */ @@ -162,6 +158,7 @@ export class RdDCalendrier extends Application { } isAfterIndexDate(indexDate) { + // TODO: standardize return indexDate < this.timestamp.indexDate; } @@ -339,12 +336,6 @@ export class RdDCalendrier extends Application { await this.setNewTimestamp(this.timestamp.nouveauJour()); } - /* -------------------------------------------- */ - syncPlayerTime(timestamp) { - this.timestamp = new RdDTimestamp(timestamp); - this.updateDisplay(); - } - /* -------------------------------------------- */ async positionnerHeure(indexHeure) { await this.setNewTimestamp(new RdDTimestamp({ indexDate: this.timestamp.indexDate + (this.timestamp.heure < indexHeure ? 0 : 1) }).addHeures(indexHeure)) @@ -355,21 +346,23 @@ export class RdDCalendrier extends Application { const mois = RdDTimestamp.definition(this.timestamp.mois); const heure = RdDTimestamp.definition(this.timestamp.heure); + formData.timestamp = this.timestamp; formData.annee = this.timestamp.annee; + formData.mois = mois; + formData.jourDuMois = this.timestamp.jour + 1; + formData.jour = this.timestamp.jour; + formData.heure = heure; + formData.minute = this.timestamp.minute; - formData.moisKey = mois.key; - formData.nomMois = mois.label; // heures et mois nommés identiques - formData.iconMois = mois.icon; - formData.nomSaison = saisonsDef[mois.saison].label; + // formData.nomMois = mois.label; // heures et mois nommés identiques + // formData.iconMois = mois.icon; - formData.jourMois = this.timestamp.jour + 1; + // formData.heureKey = heure.key; + // formData.heureRdD = formData.heure.heure; + // formData.nomHeure = heure.label; + // formData.iconHeure = heure.icon; - formData.heureKey = heure.key; - formData.heureRdD = this.timestamp.heure; - formData.nomHeure = heure.label; - formData.iconHeure = heure.icon; - - formData.minutesRelative = this.timestamp.minute; + // formData.minutes = this.timestamp.minute; formData.isGM = game.user.isGM; @@ -509,21 +502,21 @@ export class RdDCalendrier extends Application { updateDisplay() { let calendrier = this.fillCalendrierData(); // Rebuild text du calendrier - let dateHTML = `${calendrier.jourMois} ${calendrier.nomMois} ${calendrier.annee} (${calendrier.nomSaison})` + let dateHTML = `${calendrier.jourDuMois} ${calendrier.mois.label} ${calendrier.annee} (${calendrier.mois.saison})` if (game.user.isGM) { - dateHTML = dateHTML + " - NA: " + (this.getCurrentNombreAstral() ?? "indéterminé"); + dateHTML = dateHTML + " - NA: " + (this.getCurrentNombreAstral() ?? "?"); } for (let handle of document.getElementsByClassName("calendar-date-rdd")) { handle.innerHTML = dateHTML; } for (let heure of document.getElementsByClassName("calendar-heure-texte")) { - heure.innerHTML = calendrier.nomHeure; + heure.innerHTML = calendrier.heure.label; } for (const minute of document.getElementsByClassName("calendar-time-disp")) { - minute.innerHTML = `${calendrier.minutesRelative} minutes`; + minute.innerHTML = `${calendrier.minute} minutes`; } for (const heureImg of document.getElementsByClassName("calendar-heure-img")) { - heureImg.src = calendrier.iconHeure; + heureImg.src = calendrier.heure.icon; } } @@ -531,10 +524,10 @@ export class RdDCalendrier extends Application { async saveEditeur(calendrierData) { const newTimestamp = RdDTimestamp.timestamp( Number.parseInt(calendrierData.annee), - RdDTimestamp.definition(calendrierData.moisKey).heure, + calendrierData.mois.heure, Number.parseInt(calendrierData.jourMois), - RdDTimestamp.definition(calendrierData.heureKey).heure, - Number.parseInt(calendrierData.minutesRelative) + calendrierData.heure.heure, + Number.parseInt(calendrierData.minutes) ); await this.setNewTimestamp(newTimestamp); } diff --git a/module/rdd-timestamp.js b/module/rdd-timestamp.js index 619dfc55..2369c0ab 100644 --- a/module/rdd-timestamp.js +++ b/module/rdd-timestamp.js @@ -3,6 +3,8 @@ import { Grammar } from "./grammar.js"; import { Misc } from "./misc.js"; import { RdDDice } from "./rdd-dice.js"; +export const WORLD_TIMESTAMP_SETTING = "calendrier"; + const RDD_MOIS_PAR_AN = 12; const RDD_JOURS_PAR_MOIS = 28; const RDD_JOURS_PAR_AN = 336; //RDD_JOURS_PAR_MOIS * RDD_MOIS_PAR_AN; @@ -10,21 +12,20 @@ const RDD_HEURES_PAR_JOUR = 12; const RDD_MINUTES_PAR_HEURES = 120; const RDD_MINUTES_PAR_JOUR = 1440; //RDD_HEURES_PAR_JOUR * RDD_MINUTES_PAR_HEURES; const ROUNDS_PAR_MINUTE = 10; -const CALENDRIER = "calendrier"; const DEFINITION_HEURES = [ - { key: "vaisseau", label: "Vaisseau", lettreFont: 'v', saison: "printemps" }, - { key: "sirene", label: "Sirène", lettreFont: 'i', saison: "printemps" }, - { key: "faucon", label: "Faucon", lettreFont: 'f', saison: "printemps" }, - { key: "couronne", label: "Couronne", lettreFont: '', saison: "ete" }, - { key: "dragon", label: "Dragon", lettreFont: 'd', saison: "ete" }, - { key: "epees", label: "Epées", lettreFont: 'e', saison: "ete" }, - { key: "lyre", label: "Lyre", lettreFont: 'l', saison: "automne" }, - { key: "serpent", label: "Serpent", lettreFont: 's', saison: "automne" }, - { key: "poissonacrobate", label: "Poisson Acrobate", lettreFont: 'p', saison: "automne" }, - { key: "araignee", label: "Araignée", lettreFont: 'a', saison: "hiver" }, - { key: "roseau", label: "Roseau", lettreFont: 'r', saison: "hiver" }, - { key: "chateaudormant", label: "Château Dormant", lettreFont: 'c', saison: "hiver" }, + { key: "vaisseau", label: "Vaisseau", lettreFont: 'v', saison: "Printemps" }, + { key: "sirene", label: "Sirène", lettreFont: 'i', saison: "Printemps" }, + { key: "faucon", label: "Faucon", lettreFont: 'f', saison: "Printemps" }, + { key: "couronne", label: "Couronne", lettreFont: '', saison: "Eté" }, + { key: "dragon", label: "Dragon", lettreFont: 'd', saison: "Eté" }, + { key: "epees", label: "Epées", lettreFont: 'e', saison: "Eté" }, + { key: "lyre", label: "Lyre", lettreFont: 'l', saison: "Automne" }, + { key: "serpent", label: "Serpent", lettreFont: 's', saison: "Automne" }, + { key: "poissonacrobate", label: "Poisson Acrobate", lettreFont: 'p', saison: "Automne" }, + { key: "araignee", label: "Araignée", lettreFont: 'a', saison: "Hiver" }, + { key: "roseau", label: "Roseau", lettreFont: 'r', saison: "Hiver" }, + { key: "chateaudormant", label: "Château Dormant", lettreFont: 'c', saison: "Hiver" }, ] const FORMULES_DUREE = [ @@ -46,11 +47,11 @@ export class RdDTimestamp { } static init() { - game.settings.register(SYSTEM_RDD, CALENDRIER, { - name: CALENDRIER, + game.settings.register(SYSTEM_RDD, WORLD_TIMESTAMP_SETTING, { + name: WORLD_TIMESTAMP_SETTING, scope: "world", config: false, - default: { indexJour: 0, heureRdD: 0, minutesRelative: 0 }, + default: { indexDate: 0, indexMinute: 0 }, type: Object }); @@ -59,7 +60,6 @@ export class RdDTimestamp { DEFINITION_HEURES[i].icon = RdDTimestamp.iconeHeure(i); DEFINITION_HEURES[i].webp = DEFINITION_HEURES[i].icon.replace(".svg", ".webp"); } - // TODO: positionner les calculs de FORMULES_DUREE } /** @@ -124,6 +124,7 @@ export class RdDTimestamp { static formatIndexDate(indexDate) { return new RdDTimestamp({ indexDate }).formatDate() } + static splitIndexDate(indexDate) { const timestamp = new RdDTimestamp({ indexDate }); return { @@ -133,16 +134,21 @@ export class RdDTimestamp { } static getWorldTime() { - return game.settings.get(SYSTEM_RDD, CALENDRIER); + let worldTime = game.settings.get(SYSTEM_RDD, WORLD_TIMESTAMP_SETTING); + if (worldTime.indexJour && worldTime.heureRdD) { + // Migration + worldTime = { + indexDate: worldTime.indexJour, + indexMinute: worldTime.heureRdD * 120 + worldTime.minutesRelative + }; + RdDTimestamp.setWorldTime(new RdDTimestamp(worldTime)) + + } + return new RdDTimestamp(worldTime); } static setWorldTime(timestamp) { - game.settings.set(SYSTEM_RDD, CALENDRIER, timestamp.toOldCalendrier()); - game.socket.emit(SYSTEM_SOCKET_ID, { - msg: "msg_sync_time", - data: duplicate(timestamp) - }); - + game.settings.set(SYSTEM_RDD, WORLD_TIMESTAMP_SETTING, duplicate(timestamp)); } /** construit un RdDTimestamp à partir de l'année/mois/jour/heure?/minute? */ @@ -164,16 +170,9 @@ export class RdDTimestamp { * @param indexMinute: la minute de la journée à utiliser pour ce timestamp * */ - constructor({ indexDate = undefined, indexMinute = undefined }) { - function fromSettings() { - const fromSettings = RdDTimestamp.getWorldTime(); - return { indexDate: fromSettings.indexJour, indexMinute: fromSettings.heureRdD * RDD_MINUTES_PAR_HEURES + fromSettings.minutesRelative }; - } - - const val = Number.isInteger(indexDate) ? { indexDate, indexMinute: indexMinute ?? 0 } : fromSettings(); - - this.indexDate = val.indexDate - this.indexMinute = val.indexMinute + constructor({ indexDate, indexMinute = undefined }) { + this.indexDate = indexDate + this.indexMinute = indexMinute ?? 0 } toCalendrier() { @@ -182,6 +181,7 @@ export class RdDTimestamp { annee: this.annee, mois: RdDTimestamp.definition(this.mois), jour: this.jour, + jourDuMois: this.jour + 1, heure: RdDTimestamp.definition(this.heure), minute: this.minute }; @@ -191,7 +191,7 @@ export class RdDTimestamp { * Convertit un timestamp en donnée utile à l'affichage d'un calendrier */ toOldCalendrier() { - const calendrier = { + return { indexJour: this.indexDate, annee: this.annee, moisRdD: this.mois, @@ -201,7 +201,6 @@ export class RdDTimestamp { heureLabel: RdDTimestamp.definition(this.heure).label, minutesRelative: this.minute, }; - return calendrier } get annee() { return Math.floor(this.indexDate / RDD_JOURS_PAR_AN) } get mois() { return Math.floor((this.indexDate % RDD_JOURS_PAR_AN) / RDD_JOURS_PAR_MOIS) } diff --git a/module/rdd-utility.js b/module/rdd-utility.js index 688aec63..93e08d3a 100644 --- a/module/rdd-utility.js +++ b/module/rdd-utility.js @@ -648,8 +648,6 @@ export class RdDUtility { switch (sockmsg.msg) { case "msg_gm_chat_message": return ChatUtility.handleGMChatMessage(sockmsg.data); - case "msg_sync_time": - return game.system.rdd.calendrier.syncPlayerTime(sockmsg.data); case "msg_request_nombre_astral": return game.system.rdd.calendrier.requestNombreAstral(sockmsg.data); case "msg_response_nombre_astral": diff --git a/styles/simple.css b/styles/simple.css index b72ee6a6..30f2d1d0 100644 --- a/styles/simple.css +++ b/styles/simple.css @@ -478,8 +478,8 @@ input:is(.blessure-premiers_soins, .blessure-soins_complets) { } .img-signe-heure { vertical-align: bottom; - max-width: 1.5rem; - max-height: 1.5rem; + max-width: 1.5em; + max-height: 1.5em; border-width: 0; } .button-effect-img { diff --git a/templates/calendar-astrologie-template.html b/templates/calendar-astrologie-template.html index 28178557..07a12afc 100644 --- a/templates/calendar-astrologie-template.html +++ b/templates/calendar-astrologie-template.html @@ -37,6 +37,7 @@ |{{#each heuresDef as |ajustement|}} + {{ajustement.ajustement}} {{#each ajustement.heures as |heure|}} {{timestamp-imgSigneHeure heure}} {{/each}} diff --git a/templates/calendar-editor-template.html b/templates/calendar-editor-template.html index eb3ce338..604a526f 100644 --- a/templates/calendar-editor-template.html +++ b/templates/calendar-editor-template.html @@ -8,37 +8,12 @@ {{!-- Sheet Body --}}
        -
        - - -
        -
        - - -
        -
        - - -
        -
        -
        -
        - - -
        -
        - - -
        + {{>"systems/foundryvtt-reve-de-dragon/templates/common/timestamp.hbs" + (timestamp-extract timestamp) + path='calendar' + label='Date courante' + disabled='' + }}
        - diff --git a/templates/calendar-template.html b/templates/calendar-template.html index 6ec5bb51..8a72183f 100644 --- a/templates/calendar-template.html +++ b/templates/calendar-template.html @@ -5,7 +5,7 @@ {{/if}}
        -

        Jour {{jourMois}} de {{nomMois}} ({{nomSaison}})

        +

        {{jourDuMois}} {{mois.label}} ({{mois.saison}})

        {{#if isGM}} @@ -20,15 +20,12 @@
        {{/if}}
        - {{#if isGM}} - {{nomHeure}} {{nomHeure}} - -

        {{minutesRelative}} minutes

        - {{else}} - - {{nomHeure}} {{nomHeure}} + {{nomHeure}}  + {{heure.label}} + {{#if isGM}} +

        {{minute}} minutes

        {{/if}}
        {{#if isGM}} diff --git a/templates/chronologie-entry.html b/templates/chronologie-entry.html index eca3ca3a..1e7ed124 100644 --- a/templates/chronologie-entry.html +++ b/templates/chronologie-entry.html @@ -1,4 +1,4 @@ -

        {{dateRdD.jour}} {{signeHeure 'label' dateRdD.moisRdD}}, an {{dateRdD.annee}} à l'heure de {{signeHeure 'label' heureRdD}}

        +

        {{dateRdD.jour}} {{dateRdD.mois.label}} {{dateRdD.annee}}, à l'heure de {{dateRdD.heure.label}}

        {{information}}

        Par {{auteur}} ({{dateReel}})


        diff --git a/templates/common/timestamp.hbs b/templates/common/timestamp.hbs index 6f9a6b9f..75cbd402 100644 --- a/templates/common/timestamp.hbs +++ b/templates/common/timestamp.hbs @@ -1,23 +1,27 @@
        - - {{timestamp-imgSigne mois}} + + {{timestamp-imgSigne mois}}
        - {{timestamp-imgSigne heure}} + {{timestamp-imgSigne heure}} +
        \ No newline at end of file diff --git a/templates/dialog-chronologie.html b/templates/dialog-chronologie.html index 320fa413..90bfa366 100644 --- a/templates/dialog-chronologie.html +++ b/templates/dialog-chronologie.html @@ -9,24 +9,12 @@
      - - -
      -
      - - - - - - + {{>"systems/foundryvtt-reve-de-dragon/templates/common/timestamp.hbs" + (timestamp-extract timestamp) + path='chronologie' + label='Date en jeu' + disabled='' + }}
      From c3076fdbfc2c4d314371ac7144019bbb4c37759b Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 7 Jan 2023 23:28:30 +0100 Subject: [PATCH 09/14] =?UTF-8?q?Gestion=20de=20la=20p=C3=A9riodicit=C3=A9?= =?UTF-8?q?/temporalit=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- module/actor/base-actor.js | 5 ++ module/item.js | 96 +++++++++++-------------- module/item/maladie.js | 36 +++++++++- module/item/ombre.js | 9 +-- module/item/poison.js | 6 +- module/rdd-calendrier.js | 80 +-------------------- module/rdd-timestamp.js | 67 ++++++++---------- module/rdd-utility.js | 6 +- packs/maladies-et-poisons.db | 56 +++++++-------- packs/ombres-de-thanatos.db | 50 ++++++------- packs/queues-de-dragon.db | 112 +++++++++++++++--------------- packs/souffles-de-dragon.db | 38 +++++----- template.json | 4 +- templates/common/periodicite.hbs | 9 +++ templates/common/timestamp.hbs | 1 + templates/enum-periode.html | 3 + templates/item-maladie-sheet.html | 3 + templates/item-poison-sheet.html | 3 + 18 files changed, 269 insertions(+), 315 deletions(-) create mode 100644 templates/common/periodicite.hbs create mode 100644 templates/enum-periode.html diff --git a/module/actor/base-actor.js b/module/actor/base-actor.js index 7acad67f..b360811c 100644 --- a/module/actor/base-actor.js +++ b/module/actor/base-actor.js @@ -136,6 +136,11 @@ export class RdDBaseActor extends Actor { async onUpdateActor(update, options, actorId) { } + async onTimeChanging(oldTimestamp, newTimestamp) { + this.items.filter(it => it.isFinPeriode(oldTimestamp, newTimestamp)) + .forEach(async it => await it.onFinPeriodeTemporel(oldTimestamp, newTimestamp)) + } + /* -------------------------------------------- */ getFortune() { return Monnaie.getFortune(this.itemTypes['monnaie']); diff --git a/module/item.js b/module/item.js index 594ad6b4..729e9385 100644 --- a/module/item.js +++ b/module/item.js @@ -152,17 +152,20 @@ export class RdDItem extends Item { isCompetenceCreature() { return this.type == 'competencecreature' } isConteneur() { return this.type == 'conteneur'; } isMonnaie() { return this.type == 'monnaie'; } + isPotion() { return this.type == 'potion'; } isNourritureBoisson() { return this.type == 'nourritureboisson'; } isService() { return this.type == 'service'; } + isCompetence() { return typesObjetsCompetence.includes(this.type) } isTemporel() { return typesObjetsTemporels.includes(this.type) } - isOeuvre() { return typesObjetsOeuvres.includes(this.type) } isDraconique() { return typesObjetsDraconiques.includes(this.type) } isEffet() { return typesObjetsEffet.includes(this.type) } isConnaissance() { return typesObjetsConnaissance.includes(this.type) } isInventaire(mode = 'materiel') { return RdDItem.getItemTypesInventaire(mode).includes(this.type); } + isAlcool() { return this.isNourritureBoisson() && this.system.boisson && this.system.alcoolise; } + isHerbeAPotion() { return this.type == 'herbe' && (this.system.categorie == 'Soin' || this.system.categorie == 'Repos'); } getItemGroup() { if (this.isInventaire()) return "equipement"; @@ -174,16 +177,43 @@ export class RdDItem extends Item { return "autres"; } - isConteneurNonVide() { - return this.isConteneur() && (this.system.contenu?.length ?? 0) > 0; + isConteneurNonVide() { return this.isConteneur() && (this.system.contenu?.length ?? 0) > 0; } + isConteneurVide() { return this.isConteneur() && (this.system.contenu?.length ?? 0) == 0; } + isVideOuNonConteneur() { return !this.isConteneur() || (this.system.contenu?.length ?? 0) == 0; } + + isFinPeriode(oldTimestamp, newTimestamp) { + if (!this.isTemporel()) { + return false; + } + const finPeriode = new RdDTimestamp(this.system.temporel.fin); + return oldTimestamp.compare(finPeriode) < 0 && finPeriode.compare(newTimestamp) <= 0 } - isConteneurVide() { - return this.isConteneur() && (this.system.contenu?.length ?? 0) == 0; + async onCreateItemTemporel(actor) { + if (this.isTemporel()) { + const timestampDebut = game.system.rdd.calendrier.timestamp; + const timestampFin = await this.calculerFinPeriodeTemporel(timestampDebut); + await actor.updateEmbeddedDocuments('Item', [{ + _id: this.id, + 'system.temporel.debut': duplicate(timestampDebut), + 'system.temporel.fin': duplicate(timestampFin), + }]) + } } - isVideOuNonConteneur() { - return !this.isConteneur() || (this.system.contenu?.length ?? 0) == 0; + async calculerFinPeriodeTemporel(timestampDebut) { + return timestampDebut; + } + + async onFinPeriodeTemporel(oldTimestamp, newTimestamp) { + if (this.isTemporel() && this.actor) { + await this.onFinPeriode(oldTimestamp, newTimestamp); + } + } + + async onFinPeriode(oldTimestamp, newTimestamp) { + console.log(`${this.actor.name}: l'objet ${this.name} a expiré et été supprimé`); + await this.actor?.deleteEmbeddedDocuments('Item', [this.id]); } isComestible() { @@ -197,16 +227,6 @@ export class RdDItem extends Item { return ''; } - isAlcool() { - return this.isNourritureBoisson() && this.system.boisson && this.system.alcoolise; - } - - isHerbeAPotion() { - return this.type == 'herbe' && (this.system.categorie == 'Soin' || this.system.categorie == 'Repos'); - } - isPotion() { - return this.type == 'potion'; - } isCristalAlchimique() { return this.type == 'objet' && Grammar.toLowerCaseNoAccent(this.name) == 'cristal alchimique' && this.system.quantite > 0; } @@ -215,6 +235,10 @@ export class RdDItem extends Item { return this.system.magique } + isItemCommerce() { + return this.parent?.type == 'commerce'; + } + getQuantite() { return this.isService() ? undefined : Math.round(this.system.quantite ?? 0) } @@ -252,10 +276,6 @@ export class RdDItem extends Item { return this.system.cout ?? 0 } - isItemCommerce() { - return this.parent?.type == 'commerce'; - } - calculerPrixCommercant() { if (this.isItemCommerce()) { // appliquer le pourcentage @@ -376,40 +396,6 @@ export class RdDItem extends Item { await item.delete(); } - async onCreateItemTemporel(actor) { - if (this.isTemporel()) { - const timestampDebut = game.system.rdd.calendrier.timestamp; - const timestampFin = await this.calculerFinPeriodeTemporel(timestampDebut); - await actor.updateEmbeddedDocuments('Item', [{ - _id: this.id, - 'system.temporel.debut': duplicate(timestampDebut), - 'system.temporel.fin': duplicate(timestampFin), - }]) - } - } - - async calculerFinPeriodeTemporel(timestampDebut) { - return timestampDebut; - } - - async prolongerPeriode() { - if (this.actor) { - const current = game.system.rdd.calendrier.timestamp; - const finPeriode = new RdDTimestamp(this.system.temporel.fin) - const periodeSuivante = (finPeriode.compare(current)>0 ? finPeriode : current); - const timestampFin = await this.calculerFinPeriodeTemporel(periodeSuivante); - - await this.actor.updateEmbeddedDocuments('Item', [{ - _id: this.id, - 'system.temporel.fin': duplicate(timestampFin), - }]) - } - } - - async onFinTemporel() { - await this.actor?.deleteEmbeddedDocuments('Item', [this.id]); - } - async quantiteIncDec(nombre, options = { supprimerSiZero: false }) { const quantite = Number(this.system.quantite ?? -1); if (quantite >= 0) { diff --git a/module/item/maladie.js b/module/item/maladie.js index f6ace94c..d7f15c93 100644 --- a/module/item/maladie.js +++ b/module/item/maladie.js @@ -1,4 +1,6 @@ import { RdDItem } from "../item.js"; +import { Misc } from "../misc.js"; +import { RdDTimestamp } from "../rdd-timestamp.js"; export class RdDItemMaladie extends RdDItem { @@ -7,7 +9,39 @@ export class RdDItemMaladie extends RdDItem { } async calculerFinPeriodeTemporel(debut) { - return await debut.addPeriode(this.system.periode.nombre, this.system.periode.unite) ; + return await debut.addPeriode(this.system.periode.nombre, this.system.periode.unite); } + async onFinPeriode(oldTimestamp, newTimestamp) { + await RdDItemMaladie.notifierMaladiePoison(this, oldTimestamp, newTimestamp) + } + + static async notifierMaladiePoison(mal, oldTimestamp, newTimestamp) { + if (mal.actor) { + const souffrance = mal.system.identifie + ? `de ${mal.name}` + : `d'un mal inconnu` + ChatMessage.create({ content: `${mal.actor.name} souffre ${souffrance} (${Misc.typeName('Item', mal.type)}): vérifiez que les effets ne se sont pas aggravés !` }); + mal.postItemToChat('gmroll'); + await RdDItemMaladie.prolongerPeriode(mal,oldTimestamp, newTimestamp); + } + } + + static async prolongerPeriode(mal, oldTimestamp, newTimestamp) { + if (mal.actor) { + // TODO: déterminer le nombre de périodes écoulées + console.log(`${mal.actor.name}: le mal ${mal.name} a atteint la fin de sa période et été prolongé`); + const current = newTimestamp; + const finPeriode = new RdDTimestamp(mal.system.temporel.fin) + const periodeSuivante = (finPeriode.compare(current) > 0 ? finPeriode : current); + const timestampFin = await mal.calculerFinPeriodeTemporel(periodeSuivante); + + await mal.actor.updateEmbeddedDocuments('Item', [{ + _id: mal.id, + 'system.temporel.fin': duplicate(timestampFin), + }]) + } + } + + } \ No newline at end of file diff --git a/module/item/ombre.js b/module/item/ombre.js index c7d55ccd..b543901a 100644 --- a/module/item/ombre.js +++ b/module/item/ombre.js @@ -1,7 +1,6 @@ import { RdDItem } from "../item.js"; export class RdDItemOmbre extends RdDItem { - static get defaultIcon() { return "systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp"; } @@ -9,10 +8,4 @@ export class RdDItemOmbre extends RdDItem { async calculerFinPeriodeTemporel(debut) { return await debut.appliquerDuree(this.system.duree, this.parent); } - - async onFinTemporel() { - // fin de période - await this.prolongerPeriode(); - } - -} \ No newline at end of file +} diff --git a/module/item/poison.js b/module/item/poison.js index c6ef408e..75d7bf83 100644 --- a/module/item/poison.js +++ b/module/item/poison.js @@ -1,4 +1,5 @@ import { RdDItem } from "../item.js"; +import { RdDItemMaladie } from "./maladie.js"; export class RdDItemPoison extends RdDItem { @@ -10,8 +11,7 @@ export class RdDItemPoison extends RdDItem { return await debut.addPeriode(this.system.periode.nombre, this.system.periode.unite) ; } - async onFinTemporel() { - // fin de période - await this.prolongerPeriode(); + async onFinPeriode(oldTimestamp, newTimestamp) { + RdDItemMaladie.notifierMaladiePoison(this, oldTimestamp, newTimestamp) } } \ No newline at end of file diff --git a/module/rdd-calendrier.js b/module/rdd-calendrier.js index d58055ce..32bb13ea 100644 --- a/module/rdd-calendrier.js +++ b/module/rdd-calendrier.js @@ -44,7 +44,7 @@ export class RdDCalendrier extends Application { this.listeNombreAstral = this.getListeNombreAstral(); this.rebuildListeNombreAstral(HIDE_DICE); // Ensure always up-to-date } - console.log('RdDCalendrier.constructor()', this.timestamp, this.timestamp.toOldCalendrier(), this.calendrierPos, this.listeNombreAstral); + console.log('RdDCalendrier.constructor()', this.timestamp, this.timestamp.toCalendrier(), this.calendrierPos, this.listeNombreAstral); Hooks.on('updateSetting', async (setting, update, options, id) => this.onUpdateSetting(setting, update, options, id)); } @@ -253,65 +253,13 @@ export class RdDCalendrier extends Application { /* -------------------------------------------- */ async setNewTimestamp(newTimestamp) { - this.checkMaladiePoison(this.timestamp, newTimestamp); - - this.checkMaladie("round"); - this.checkMaladie("minute"); - if (this.timestamp.heure != newTimestamp.heure || this.timestamp.indexDate != newTimestamp.indexDate) { - this.checkMaladie("heure"); - } - if (this.timestamp.indexDate != newTimestamp.indexDate) { - this.checkMaladie("jour"); - } - + game.actors.forEach(actor => actor.onTimeChanging(this.timestamp, newTimestamp)); RdDTimestamp.setWorldTime(newTimestamp); this.timestamp = newTimestamp; await this.rebuildListeNombreAstral(); this.updateDisplay(); } - - /* -------------------------------------------- */ - checkMaladie(periode) { - for (let actor of game.actors) { - if (actor.type == 'personnage') { - let maladies = actor.items.filter(item => (item.type == 'maladie' || (item.type == 'poison' && item.system.active)) && item.system.periodicite.toLowerCase().includes(periode)); - for (let maladie of maladies) { - if (maladie.system.identifie) { - ChatMessage.create({ content: `${actor.name} souffre de ${maladie.name} (${maladie.type}): vérifiez que les effets ne se sont pas aggravés !` }); - } else { - ChatMessage.create({ content: `${actor.name} souffre d'un mal inconnu (${maladie.type}): vérifiez que les effets ne se sont pas aggravés !` }); - } - let itemMaladie = actor.getItem(maladie.id) - itemMaladie.postItemToChat('gmroll'); - } - } - } - } - - checkMaladiePoison(oldTimestamp, newTimestamp) { - // TODO - const isInPeriod = maladie => { - //TODO: utiliser les timestamp - return false; - } - - game.actors.filter(it => it.type == 'personnage') - .forEach(actor => { - actor.items.filter(it => it.type == 'maladie' || (it.type == 'poison' && it.system.active)) - .filter(m => isInPeriod(m)) - .forEach(m => { - if (m.system.identifie) { - ChatMessage.create({ content: `${actor.name} souffre de ${m.name} (${m.type}): vérifiez que les effets ne se sont pas aggravés !` }); - } else { - ChatMessage.create({ content: `${actor.name} souffre d'un mal inconnu (${m.type}): vérifiez que les effets ne se sont pas aggravés !` }); - } - let itemMaladie = actor.getItem(m.id) - itemMaladie.postItemToChat('gmroll'); - }) - }); - } - /* -------------------------------------------- */ async onCalendarButton(ev) { ev.preventDefault(); @@ -343,30 +291,8 @@ export class RdDCalendrier extends Application { /* -------------------------------------------- */ fillCalendrierData(formData = {}) { - const mois = RdDTimestamp.definition(this.timestamp.mois); - const heure = RdDTimestamp.definition(this.timestamp.heure); - - formData.timestamp = this.timestamp; - formData.annee = this.timestamp.annee; - formData.mois = mois; - formData.jourDuMois = this.timestamp.jour + 1; - formData.jour = this.timestamp.jour; - formData.heure = heure; - formData.minute = this.timestamp.minute; - - // formData.nomMois = mois.label; // heures et mois nommés identiques - // formData.iconMois = mois.icon; - - // formData.heureKey = heure.key; - // formData.heureRdD = formData.heure.heure; - // formData.nomHeure = heure.label; - // formData.iconHeure = heure.icon; - - // formData.minutes = this.timestamp.minute; - + mergeObject(formData, this.timestamp.toCalendrier()); formData.isGM = game.user.isGM; - - console.log('fillCalendrierData', this.timestamp, mois, heure, formData); return formData; } diff --git a/module/rdd-timestamp.js b/module/rdd-timestamp.js index 2369c0ab..a9941b73 100644 --- a/module/rdd-timestamp.js +++ b/module/rdd-timestamp.js @@ -39,6 +39,12 @@ const FORMULES_DUREE = [ // { code: "chateaudormant", label: "Fin Chateau dormant", calcul: async (t, actor) => t.nouveauJour() }, // { code: "special", label: "Spéciale", calcul: async (t, actor) => t.addJours(100 * RDD_JOURS_PAR_AN) }, ] +const FORMULES_PERIODE = [ + { code: 'rounds', label: "Rounds", calcul: async (t, nombre) => t.addMinutes(nombre / 10) }, + { code: 'minutes', label: "Minutes", calcul: async (t, nombre) => t.addMinutes(nombre) }, + { code: 'heures', label: "Heures", calcul: async (t, nombre) => t.addHeures(nombre) }, + { code: 'jours', label: "Jours", calcul: async (t, nombre) => t.addJours(nombre) }, +] export class RdDTimestamp { @@ -80,6 +86,9 @@ export class RdDTimestamp { static formulesDuree() { return FORMULES_DUREE } + static formulesPeriode() { + return FORMULES_PERIODE + } static imgSigneHeure(heure) { return RdDTimestamp.imgSigne(RdDTimestamp.definition(heure)); @@ -103,23 +112,9 @@ export class RdDTimestamp { return undefined; } - static signeHeure(key, value) { - const signe = RdDTimestamp.definition(value); - if (signe && ['key', 'webp', 'label', 'lettreFont', 'saison', 'heure', 'icon'].includes(key)) { - return signe[key]; - } - console.error(`Appel à getSigneAs('${key}', ${value}) avec une clé/heure incorrects`); - return value; - - } - - static getCalendrier(indexDate, indexMinute = 0) { - return new RdDTimestamp({ indexDate, indexMinute }).toOldCalendrier(); - } - /** - * - * @param indexMinute: la version formattée de la date + * @param indexDate: la date (depuis le jour 0) + * @return la version formattée de la date */ static formatIndexDate(indexDate) { return new RdDTimestamp({ indexDate }).formatDate() @@ -142,9 +137,9 @@ export class RdDTimestamp { indexMinute: worldTime.heureRdD * 120 + worldTime.minutesRelative }; RdDTimestamp.setWorldTime(new RdDTimestamp(worldTime)) - + } - return new RdDTimestamp(worldTime); + return new RdDTimestamp(worldTime); } static setWorldTime(timestamp) { @@ -175,6 +170,11 @@ export class RdDTimestamp { this.indexMinute = indexMinute ?? 0 } + + /** + * Convertit le timestamp en une structure avec les informations utiles + * pour afficher la date et l'heure + */ toCalendrier() { return { timestamp: this, @@ -187,21 +187,6 @@ export class RdDTimestamp { }; } - /** - * Convertit un timestamp en donnée utile à l'affichage d'un calendrier - */ - toOldCalendrier() { - return { - indexJour: this.indexDate, - annee: this.annee, - moisRdD: this.mois, - jour: this.jour, - heureRdD: this.heure, - moisLabel: RdDTimestamp.definition(this.mois).label, - heureLabel: RdDTimestamp.definition(this.heure).label, - minutesRelative: this.minute, - }; - } get annee() { return Math.floor(this.indexDate / RDD_JOURS_PAR_AN) } get mois() { return Math.floor((this.indexDate % RDD_JOURS_PAR_AN) / RDD_JOURS_PAR_MOIS) } get jour() { return (this.indexDate % RDD_JOURS_PAR_AN) % RDD_JOURS_PAR_MOIS } @@ -256,11 +241,12 @@ export class RdDTimestamp { } addPeriode(nombre, unite) { - switch (unite) { - case 'heures': return this.addHeures(nombre) - case 'minutes': return this.addMinutes(nombre) - case 'jours': return this.addJours(nombre) - case 'rounds': return this.addMinutes(nombre / 10) + const formule = FORMULES_PERIODE.find(it => it.code == unite); + if (formule) { + return formule.calcul(this, nombre); + } + else { + ui.notifications.info(`Pas de période pour ${unite ?? 'Aucune uinité définie'}`) } return this; } @@ -275,7 +261,10 @@ export class RdDTimestamp { } compare(timestamp) { - let diff = (this.indexDate - timestamp.indexDate) ?? (this.indexMinute - timestamp.indexMinute); + let diff = this.indexDate - timestamp.indexDate + if (diff == 0) { + diff = this.indexMinute - timestamp.indexMinute + } return diff < 0 ? -1 : diff > 0 ? 1 : 0; } diff --git a/module/rdd-utility.js b/module/rdd-utility.js index 93e08d3a..8fa4c4a5 100644 --- a/module/rdd-utility.js +++ b/module/rdd-utility.js @@ -199,9 +199,11 @@ export class RdDUtility { 'systems/foundryvtt-reve-de-dragon/templates/enum-categorie-queue.html', 'systems/foundryvtt-reve-de-dragon/templates/enum-draconic.html', 'systems/foundryvtt-reve-de-dragon/templates/enum-tmr-type.html', + 'systems/foundryvtt-reve-de-dragon/templates/enum-periode.html', 'systems/foundryvtt-reve-de-dragon/templates/enum-tmr-effet.html', // Partials 'systems/foundryvtt-reve-de-dragon/templates/common/timestamp.hbs', + 'systems/foundryvtt-reve-de-dragon/templates/common/periodicite.hbs', 'systems/foundryvtt-reve-de-dragon/templates/common/enum-duree.hbs', 'systems/foundryvtt-reve-de-dragon/templates/common/compendium-link.hbs', 'systems/foundryvtt-reve-de-dragon/templates/partial-description-overflow.html', @@ -282,12 +284,12 @@ export class RdDUtility { Handlebars.registerHelper('caseTmr-type', coord => TMRUtility.getTMRType(coord)); Handlebars.registerHelper('typeTmr-name', type => TMRUtility.typeTmrName(type)); Handlebars.registerHelper('effetRencontre-name', coord => TMRUtility.typeTmrName(coord)); - // TODO: upgrade - Handlebars.registerHelper('signeHeure', (key, heure) => RdDTimestamp.signeHeure(key, heure)); + Handlebars.registerHelper('timestamp-imgSigneHeure', (heure) => { return new Handlebars.SafeString(RdDTimestamp.imgSigneHeure(heure)) }); Handlebars.registerHelper('timestamp-imgSigne', (heure) => { return new Handlebars.SafeString(RdDTimestamp.imgSigne(heure)) }); Handlebars.registerHelper('timestamp-extract', timestamp => new RdDTimestamp(timestamp).toCalendrier()); Handlebars.registerHelper('timestamp-formulesDuree', () => RdDTimestamp.formulesDuree()); + Handlebars.registerHelper('timestamp-formulesPeriode', () => RdDTimestamp.formulesPeriode()); Handlebars.registerHelper('min', (...args) => Math.min(...args.slice(0, -1))); Handlebars.registerHelper('regle-optionnelle', (option) => ReglesOptionelles.isUsing(option)); diff --git a/packs/maladies-et-poisons.db b/packs/maladies-et-poisons.db index 470752a7..3e7edc66 100644 --- a/packs/maladies-et-poisons.db +++ b/packs/maladies-et-poisons.db @@ -1,28 +1,28 @@ -{"name":"Mal glauque","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.0S9GCJskJQaYEuXz"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"0S9GCJskJQaYEuXz","system":{"description":"

      Le mal glauque est une maladie due à la famine.

      \n

      Il peut être contracté en conséquence d’un jeûne prolongé ou d’une malnutrition chronique. Ses symptômes sont de violents maux de tête accompagnés d’hallucinations auditives où le malade croit entendre le bruit de la mer. À mesure que le mal progresse, la peau du malade prend une couleur plombée, puis carrément verdâtre, cependant que dans sa tête, le bruit de la mer atteint des mugissements de tempête.

      \n

      La perte de chaque point de vie s’accompagne de celle d’un point d’EMPATHIE. Une fois la maladie éliminée, ces points sont regagnés de la même manière que les points de VUE de la fièvre brune (sauf qu’il n’y a pas d’équivalent de la solimonce). Il faut enfin noter qu’aucun remède ne peut être efficace tant que l’alimentation n’est pas redevenue normale.

      ","descriptionmj":"","identifie":false,"malignite":8,"periodicite":"12 heures","remedesconnus":false,"remedes":"-6 \\ Topazoïne +16, Élixir des Gnomes +14","dommages":"1 pt de Vie et 1 pt d'Empathie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299815,"modifiedTime":1671050485807,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Nanar","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.4zOQxOMwgAxxd2MV"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"4zOQxOMwgAxxd2MV","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":2,"periodicite":"2 minutes","remedesconnus":false,"remedes":"-3/ Teinture d’Érozonne +16, Lait de lune +12.","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299815,"modifiedTime":1671050485807,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Fièvre blanche","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.AWarJ2i12lEOdyiM"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"AWarJ2i12lEOdyiM","system":{"description":"

      La fièvre blanche est une fièvre infectieuse, mortelle, qui accompagne souvent les blessures graves.

      \n

      Elle se caractérise par un rapide affaiblissement général accompagné de délire. Tout autour de la blessure, la chair devient blanche et purulente.

      ","descriptionmj":"","identifie":false,"malignite":4,"periodicite":"8 heures","remedesconnus":false,"remedes":"-5 \\ Sable-Poudre +15, Tournegraisse +10","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299816,"modifiedTime":1671050485807,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Ossiphage","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.HB057aVUY1GylYxw"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"HB057aVUY1GylYxw","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","identifie":false,"malignite":6,"periodicite":"3 rounds","remedesconnus":false,"remedes":"-5/ Perle de Bjwal +10, Huile de Sélikanthe +6","dommages":"4 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299816,"modifiedTime":1671050485807,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Venin paralysant de goule","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.IF19EUvrY1HL87lr"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"IF19EUvrY1HL87lr","system":{"description":"

      Venin inoculé par une morsure de goule.

      \n

      La paralysie intervient quand toutes les lignes de fatigue sont pleines et dure 6 heures.

      \n

      Le floume-dhu est obtenu en mélangeant en quantités égales gelée de floumette et lait humain (pour une dose : une demi-mesure de chaque).

      \n

      Puis chauffer le mélange jusqu’à couleur bleu-sangue (-2).

      ","descriptionmj":"","identifie":false,"malignite":6,"periodicite":"1 round","remedesconnus":false,"remedes":"-4 \\ Floume-dhu +16","dommages":"1 ligne de fatigue"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1671050485807,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Blèmissure","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.JYMeJz8mxyI2oYIj"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"JYMeJz8mxyI2oYIj","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":4,"periodicite":"1 minute","remedesconnus":false,"remedes":"-4/ Élixir des Gnomes +14, Huile de Sélikanthe +10.","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1671050485807,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Fesse de groin","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.LkDe57PbpOIshhMI"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"LkDe57PbpOIshhMI","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":3,"periodicite":"1 minute","remedesconnus":false,"remedes":"-3/ Bitume de Camphre +16, Élixir des Gnomes +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1671050485807,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Nécrophase","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.MImC24IVo96y7r7p"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"MImC24IVo96y7r7p","system":{"description":"

      La Nécrophase est une horrible maladie contractée suite à une morsure de Rananècre. 

      \n

      Tout autour de la blessure, la chair s’enfle, vire au noir et se putréfie, puis l’ensemble du corps est gagné peu à peu.

      \n

      Si la mort survient, elle donne naissance à une entité de cauchemar non incarnée ayant le même nombre de points de rêve que la caractéristique RÊVE de la victime.

      \n

      Tirer 1d2 : 1 = haine ; 2 = désespoir.

      ","descriptionmj":"","identifie":false,"malignite":7,"periodicite":"1 heure","remedesconnus":false,"remedes":"-4 \\ Tournegraisse +16 Huile de Sélikanthe +6","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1671050485807,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Arrache-rêve","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Rl5jadqNYTxzn6Ns"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Rl5jadqNYTxzn6Ns","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":6,"periodicite":"4 rounds","remedesconnus":false,"remedes":"-3/ Tournegraisse +14, Perle de Bjwal +12","dommages":"4 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1671050485809,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Salsimir à points verts","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Rx2nQjwaCa5s38Tm"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Rx2nQjwaCa5s38Tm","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":1,"periodicite":"5 minutes","remedesconnus":false,"remedes":"-5/ Lait de lune +14, Gelée royale +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1671050485809,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Énervure","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.SlfTPRdCC9t3o9ai"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"SlfTPRdCC9t3o9ai","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","identifie":false,"malignite":3,"periodicite":"1 minute","remedesconnus":false,"remedes":"-3/ Tournegraisse +14, Mirobolant +10","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1671050485809,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Crétamère","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.WBmXlsa3Wt2AN952"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"WBmXlsa3Wt2AN952","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":3,"periodicite":"3 minutes","remedesconnus":false,"remedes":"-3/ Lait de lune +12, Gelée royale +8","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299819,"modifiedTime":1671050485809,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Ortilise","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.X8vVqbK5pjuxQwBF"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"X8vVqbK5pjuxQwBF","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","identifie":false,"malignite":3,"periodicite":"1 minute","remedesconnus":false,"remedes":"-3/ Topazoïne +12, Lait de lune +8","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299819,"modifiedTime":1671050485810,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Croupigne","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Zsodttv3S6OPTJL4"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Zsodttv3S6OPTJL4","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":2,"periodicite":"5 minutes","remedesconnus":false,"remedes":"-3/ Élixir des Gnomes +16, Gelée royale +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1671050485810,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Acrève","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.aTzSlu5leo4JJypZ"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"aTzSlu5leo4JJypZ","system":{"description":"

      L’acrève est une mortelle infection pulmonaire, due à un brusque refroidissement.

      \n

      Ses symptômes sont l’apparition de sueurs et de tremblements, bientôt suivis d’une toux de plus en plus douloureuse. Puis le malade se met à cracher du sang.

      \n

      La première période indiquée est celle de l’incubation, la seconde est la périodicité normale.

      \n

      Tant que le malade n’a subi aucun dommage, utiliser la période d’incubation (2 heures) ; puis dès qu’il a perdu ses deux premiers points de vie, utiliser la périodicité normale (5 heures).

      ","descriptionmj":"","identifie":false,"malignite":3,"periodicite":"2 heures / 5 heures","remedesconnus":false,"remedes":"-4 \\ Gelée royale +14, Huile de Sélikanthe +10","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1671050485810,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Ortironce","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.bEDPtCAlJwmoZx5p"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"bEDPtCAlJwmoZx5p","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","identifie":false,"malignite":4,"periodicite":"1 minute","remedesconnus":false,"remedes":"-3/ Bitume de Camphre +12, Teinture d’Érozonne +8","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1671050485810,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Venin de chrasme","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.cFMUtU6LZG0mKeDl"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"cFMUtU6LZG0mKeDl","system":{"description":"

      Venin du chrasme. 

      ","descriptionmj":"","identifie":false,"malignite":3,"periodicite":"1 minute","remedesconnus":false,"remedes":"-2 \\ Liqueur de Bagdol +16 Teinture d’Érozonne +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1671050485810,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Téthanatos","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.fMukHi1h4lU84XQR"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"fMukHi1h4lU84XQR","system":{"description":"

      Le téthanatos est un mal mortel, usuellement transmis par les blessures causées par les objets souillés, comme par exemple les armes des Groins. 

      \n

      Ses symptomes sont une forte fièvre  et l'apparition progressive de plaques noires,  accompagnées d'une odeur nauséabonde.

      ","descriptionmj":"","identifie":false,"malignite":7,"periodicite":"6 heures","remedesconnus":false,"remedes":"-3\\ Bitume de Camphre +12, Mirobolant +8","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1671050485810,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Venin de scologriffe","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.iwlN0bNJ5XNNfjgj"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"iwlN0bNJ5XNNfjgj","system":{"description":"

      Venin du scologriffe. Il provoque une sensation aiguë de déséquilibre.

      \n

      Jouer VOLONTÉ à -3. En cas d’échec, on chute sans parvenir à se relever.

      ","descriptionmj":"","identifie":false,"malignite":3,"periodicite":"1 minute","remedesconnus":false,"remedes":"-3 \\ Liqueur de Bagdol +16 Topazoïne +8","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1671050485810,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Genèfle","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.jl0MvAcVRo63LWg3"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"jl0MvAcVRo63LWg3","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":1,"periodicite":"10 minutes","remedesconnus":false,"remedes":"-3/ Teinture d’Érozonne +16, Topazoïne +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1671050485811,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Venin de vipère jaune","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.lUeNPc0ECKqHglbG"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"lUeNPc0ECKqHglbG","system":{"description":"

      Venin de la vipère jaune. Il provoque des spasmes musculaires.

      ","descriptionmj":"","identifie":false,"malignite":2,"periodicite":"6 rounds","remedesconnus":false,"remedes":"-3\\ Liqueur de Bagdol +14, Topazoïne +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1671050485811,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Fièvre brune","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.nyruCPiWDd8Scv44"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"nyruCPiWDd8Scv44","system":{"description":"

      La fièvre brune est une fièvre mortelle véhiculée par les moustiques de certains marais. Outre un affaiblissement général, elle provoque la cécité.

      \n

      Ses symptômes progressifs consistent en hallucinations de taches brunes, puis en saignement des yeux, jusqu’à la cécité complète qui précède la mort.

      \n

      La première période indiquée est celle de l’incubation, la seconde est la périodicité normale. Tant que le malade n’a subi aucun dommage, utiliser la période d’incubation (1 heure) ; puis dès qu’il a perdu un premier point de vie, utiliser la périodicité normale (6 heures).

      \n

      Les points de VUE perdus ne peuvent être regagnés que quand la maladie est entièrement guérie. À chaque point de vie regagné, jouer un jet de CONSTITUTION ajusté négativement par les points de vie toujours manquants. Puis selon le résultat:

      \n
        \n
      • Particulière                              Regain de 2 points de VUE
      • \n
      • Normale et significative      Regain de 1 point de VUE
      • \n
      • Échec et Échec particulier  Aucun regain
      • \n
      • Échec total                                Aggravation, re-perte d’un point de VUE
      • \n
      \n

      Si tous les points de vie ont été regagnés et qu’il manque toujours un ou plusieurs points de VUE, jouer un jet de CONSTITUTION à zéro toutes les 12 heures, et appliquer les mêmes résultats que ci-dessus.

      \n

      Une potion d’herbes de soin enchantée peut faire regagner tous les points de vie une fois la maladie guérie, mais ne fait pas regagner les points de VUE perdus. Si le malade est devenu entièrement aveugle au cours de sa maladie, c’est-à-dire si sa VUE est tombée à zéro, il perd définitivement un point de VUE. Quand il regagnera ses points de VUE, il les regagnera tous moins un.

      \n

      Bains de solimonce

      \n

      Une décoction de feuilles de solimonce (voir Herbes, p336) utilisée en bains d’yeux donne un bonus de +4 au jet de CONSTITUTION pour le regain des points de VUE.

      \n

      La décoction se prépare comme une décoction d’herbes de soin. Pour baigner les deux yeux, il en faut 10 brins. Le bain doit durer 60 minutes (pour les deux yeux), puis les yeux doivent être tenus à l’abri de la lumière pendant un minimum de 3 heures. Le mieux est de les fermer et de dormir. Un bain d’yeux n’est valable que pour un seul jet de CONSTITUTION.

      \n

      Dans tous les cas, la fréquence des jets est toutes les 12 heures. La décoction de solimonce n’étant jamais bue, un enchantement ne lui confère rien de plus. La solimonce ne guérit pas la fièvre brune et ne peut avoir d’effet que quand la maladie est entièrement guérie.

      ","descriptionmj":"","identifie":false,"malignite":6,"periodicite":"1 heure \\ 6 heures","remedesconnus":false,"remedes":"-4 \\ Élixir des Gnomes +14, Bitume de Camphre +10","dommages":"1 pt de Vie et 1 pt de Vue"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1671050485811,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Bousille","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.qE4IEazgBeRs4uE0"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"qE4IEazgBeRs4uE0","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":5,"periodicite":"6 rounds","remedesconnus":false,"remedes":"-4/ Teinture d’Érozonne +10, Topazoïne +6","dommages":"3 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1671050485811,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Hécatombe","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.sSgu1FYK1s1vZinT"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"sSgu1FYK1s1vZinT","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":4,"periodicite":"1 minute","remedesconnus":false,"remedes":"-5/ Bitume de Camphre +12, Mirobolant +6","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1671050485811,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Amanite thanataire","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.sriGtgt3FQkc642z"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"sriGtgt3FQkc642z","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":7,"periodicite":"3 rounds","remedesconnus":false,"remedes":"-3/ Tournegraisse +12, Perle de Bjwal +10","dommages":"4 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1671050485811,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Cheleuse","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.tpzD5959gxuIcTir"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"tpzD5959gxuIcTir","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","identifie":false,"malignite":1,"periodicite":"5 minutes","remedesconnus":false,"remedes":"-3/ Liqueur de Bagdol +16, Mirobolant +14","dommages":"1 pt de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1671050485811,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Venin d'araflate","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.v7yZidE9mObKO566"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"v7yZidE9mObKO566","system":{"description":"

      Venin de l'araflate. Sa morsure inflige un venin anesthésiant, inoculé sur toute blessure sauf contusion\\ éraflure.

      \n

      Chaque perte d’endurance s’accompagne de la fatigue équivalente. À zéro d’endurance, la victime est paralysée et ne peut plus faire un geste.

      ","descriptionmj":"","identifie":false,"malignite":6,"periodicite":"1 round","remedesconnus":false,"remedes":"-3 \\ Liqueur de Bagdol +12 Lait de lune +6","dommages":"1d6 pts d'endurance"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1671050485812,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Fumebol","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.xzCBr3FiSk1WewcT"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"xzCBr3FiSk1WewcT","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","identifie":false,"malignite":5,"periodicite":"8 rounds","remedesconnus":false,"remedes":"-5/ Sable-Poudre +12, Huile de Sélikanthe +8.","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.3.13","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1671050485812,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Mal glauque","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.0S9GCJskJQaYEuXz"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"0S9GCJskJQaYEuXz","system":{"description":"

      Le mal glauque est une maladie due à la famine.

      \n

      Il peut être contracté en conséquence d’un jeûne prolongé ou d’une malnutrition chronique. Ses symptômes sont de violents maux de tête accompagnés d’hallucinations auditives où le malade croit entendre le bruit de la mer. À mesure que le mal progresse, la peau du malade prend une couleur plombée, puis carrément verdâtre, cependant que dans sa tête, le bruit de la mer atteint des mugissements de tempête.

      \n

      La perte de chaque point de vie s’accompagne de celle d’un point d’EMPATHIE. Une fois la maladie éliminée, ces points sont regagnés de la même manière que les points de VUE de la fièvre brune (sauf qu’il n’y a pas d’équivalent de la solimonce). Il faut enfin noter qu’aucun remède ne peut être efficace tant que l’alimentation n’est pas redevenue normale.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":8,"periodicite":"12 heures","periode":{"unite":"heures","nombre":12},"remedesconnus":false,"remedes":"-6 \\ Topazoïne +16, Élixir des Gnomes +14","dommages":"1 pt de Vie et 1 pt d'Empathie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299815,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Nanar","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.4zOQxOMwgAxxd2MV"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"4zOQxOMwgAxxd2MV","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":2,"periodicite":"2 minutes","periode":{"unite":"minutes","nombre":2},"remedesconnus":false,"remedes":"-3/ Teinture d’Érozonne +16, Lait de lune +12.","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299815,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Fièvre blanche","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.AWarJ2i12lEOdyiM"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"AWarJ2i12lEOdyiM","system":{"description":"

      La fièvre blanche est une fièvre infectieuse, mortelle, qui accompagne souvent les blessures graves.

      \n

      Elle se caractérise par un rapide affaiblissement général accompagné de délire. Tout autour de la blessure, la chair devient blanche et purulente.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"8 heures","periode":{"unite":"heures","nombre":8},"remedesconnus":false,"remedes":"-5 \\ Sable-Poudre +15, Tournegraisse +10","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299816,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Ossiphage","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.HB057aVUY1GylYxw"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"HB057aVUY1GylYxw","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"3 rounds","periode":{"unite":"rounds","nombre":3},"remedesconnus":false,"remedes":"-5/ Perle de Bjwal +10, Huile de Sélikanthe +6","dommages":"4 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299816,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Venin paralysant de goule","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.IF19EUvrY1HL87lr"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"IF19EUvrY1HL87lr","system":{"description":"

      Venin inoculé par une morsure de goule.

      \n

      La paralysie intervient quand toutes les lignes de fatigue sont pleines et dure 6 heures.

      \n

      Le floume-dhu est obtenu en mélangeant en quantités égales gelée de floumette et lait humain (pour une dose : une demi-mesure de chaque).

      \n

      Puis chauffer le mélange jusqu’à couleur bleu-sangue (-2).

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"1 round","periode":{"unite":"rounds","nombre":1},"remedesconnus":false,"remedes":"-4 \\ Floume-dhu +16","dommages":"1 ligne de fatigue"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718053,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Blèmissure","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.JYMeJz8mxyI2oYIj"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"JYMeJz8mxyI2oYIj","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-4/ Élixir des Gnomes +14, Huile de Sélikanthe +10.","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Fesse de groin","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.LkDe57PbpOIshhMI"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"LkDe57PbpOIshhMI","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-3/ Bitume de Camphre +16, Élixir des Gnomes +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Nécrophase","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.MImC24IVo96y7r7p"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"MImC24IVo96y7r7p","system":{"description":"

      La Nécrophase est une horrible maladie contractée suite à une morsure de Rananècre. 

      \n

      Tout autour de la blessure, la chair s’enfle, vire au noir et se putréfie, puis l’ensemble du corps est gagné peu à peu.

      \n

      Si la mort survient, elle donne naissance à une entité de cauchemar non incarnée ayant le même nombre de points de rêve que la caractéristique RÊVE de la victime.

      \n

      Tirer 1d2 : 1 = haine ; 2 = désespoir.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":7,"periodicite":"1 heure","periode":{"unite":"heures","nombre":1},"remedesconnus":false,"remedes":"-4 \\ Tournegraisse +16 Huile de Sélikanthe +6","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Arrache-rêve","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Rl5jadqNYTxzn6Ns"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Rl5jadqNYTxzn6Ns","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"4 rounds","periode":{"unite":"rounds","nombre":4},"remedesconnus":false,"remedes":"-3/ Tournegraisse +14, Perle de Bjwal +12","dommages":"4 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Salsimir à points verts","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Rx2nQjwaCa5s38Tm"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Rx2nQjwaCa5s38Tm","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":1,"periodicite":"5 minutes","periode":{"unite":"minutes","nombre":5},"remedesconnus":false,"remedes":"-5/ Lait de lune +14, Gelée royale +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Énervure","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.SlfTPRdCC9t3o9ai"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"SlfTPRdCC9t3o9ai","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-3/ Tournegraisse +14, Mirobolant +10","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Crétamère","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.WBmXlsa3Wt2AN952"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"WBmXlsa3Wt2AN952","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"3 minutes","periode":{"unite":"minutes","nombre":3},"remedesconnus":false,"remedes":"-3/ Lait de lune +12, Gelée royale +8","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299819,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Ortilise","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.X8vVqbK5pjuxQwBF"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"X8vVqbK5pjuxQwBF","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-3/ Topazoïne +12, Lait de lune +8","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299819,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Croupigne","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Zsodttv3S6OPTJL4"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Zsodttv3S6OPTJL4","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":2,"periodicite":"5 minutes","periode":{"unite":"minutes","nombre":5},"remedesconnus":false,"remedes":"-3/ Élixir des Gnomes +16, Gelée royale +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Acrève","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.aTzSlu5leo4JJypZ"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"aTzSlu5leo4JJypZ","system":{"description":"

      L’acrève est une mortelle infection pulmonaire, due à un brusque refroidissement.

      \n

      Ses symptômes sont l’apparition de sueurs et de tremblements, bientôt suivis d’une toux de plus en plus douloureuse. Puis le malade se met à cracher du sang.

      \n

      La première période indiquée est celle de l’incubation, la seconde est la périodicité normale.

      \n

      Tant que le malade n’a subi aucun dommage, utiliser la période d’incubation (2 heures) ; puis dès qu’il a perdu ses deux premiers points de vie, utiliser la périodicité normale (5 heures).

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"2 heures / 5 heures","periode":{"unite":"heures","nombre":5},"remedesconnus":false,"remedes":"-4 \\ Gelée royale +14, Huile de Sélikanthe +10","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718048,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Ortironce","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.bEDPtCAlJwmoZx5p"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"bEDPtCAlJwmoZx5p","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"1 minute","periode":{"unite":"","nombre":0},"remedesconnus":false,"remedes":"-3/ Bitume de Camphre +12, Teinture d’Érozonne +8","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Venin de chrasme","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.cFMUtU6LZG0mKeDl"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"cFMUtU6LZG0mKeDl","system":{"description":"

      Venin du chrasme. 

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-2 \\ Liqueur de Bagdol +16 Teinture d’Érozonne +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718052,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Téthanatos","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.fMukHi1h4lU84XQR"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"fMukHi1h4lU84XQR","system":{"description":"

      Le téthanatos est un mal mortel, usuellement transmis par les blessures causées par les objets souillés, comme par exemple les armes des Groins. 

      \n

      Ses symptomes sont une forte fièvre  et l'apparition progressive de plaques noires,  accompagnées d'une odeur nauséabonde.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":7,"periodicite":"6 heures","periode":{"unite":"heures","nombre":6},"remedesconnus":false,"remedes":"-3\\ Bitume de Camphre +12, Mirobolant +8","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718052,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Venin de scologriffe","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.iwlN0bNJ5XNNfjgj"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"iwlN0bNJ5XNNfjgj","system":{"description":"

      Venin du scologriffe. Il provoque une sensation aiguë de déséquilibre.

      \n

      Jouer VOLONTÉ à -3. En cas d’échec, on chute sans parvenir à se relever.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-3 \\ Liqueur de Bagdol +16 Topazoïne +8","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718052,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Genèfle","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.jl0MvAcVRo63LWg3"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"jl0MvAcVRo63LWg3","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":1,"periodicite":"10 minutes","periode":{"unite":"minutes","nombre":10},"remedesconnus":false,"remedes":"-3/ Teinture d’Érozonne +16, Topazoïne +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Venin de vipère jaune","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.lUeNPc0ECKqHglbG"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"lUeNPc0ECKqHglbG","system":{"description":"

      Venin de la vipère jaune. Il provoque des spasmes musculaires.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":2,"periodicite":"6 rounds","periode":{"unite":"rounds","nombre":6},"remedesconnus":false,"remedes":"-3\\ Liqueur de Bagdol +14, Topazoïne +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718052,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Fièvre brune","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.nyruCPiWDd8Scv44"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"nyruCPiWDd8Scv44","system":{"description":"

      La fièvre brune est une fièvre mortelle véhiculée par les moustiques de certains marais. Outre un affaiblissement général, elle provoque la cécité.

      \n

      Ses symptômes progressifs consistent en hallucinations de taches brunes, puis en saignement des yeux, jusqu’à la cécité complète qui précède la mort.

      \n

      La première période indiquée est celle de l’incubation, la seconde est la périodicité normale. Tant que le malade n’a subi aucun dommage, utiliser la période d’incubation (1 heure) ; puis dès qu’il a perdu un premier point de vie, utiliser la périodicité normale (6 heures).

      \n

      Les points de VUE perdus ne peuvent être regagnés que quand la maladie est entièrement guérie. À chaque point de vie regagné, jouer un jet de CONSTITUTION ajusté négativement par les points de vie toujours manquants. Puis selon le résultat:

      \n
        \n
      • Particulière                              Regain de 2 points de VUE
      • \n
      • Normale et significative      Regain de 1 point de VUE
      • \n
      • Échec et Échec particulier  Aucun regain
      • \n
      • Échec total                                Aggravation, re-perte d’un point de VUE
      • \n
      \n

      Si tous les points de vie ont été regagnés et qu’il manque toujours un ou plusieurs points de VUE, jouer un jet de CONSTITUTION à zéro toutes les 12 heures, et appliquer les mêmes résultats que ci-dessus.

      \n

      Une potion d’herbes de soin enchantée peut faire regagner tous les points de vie une fois la maladie guérie, mais ne fait pas regagner les points de VUE perdus. Si le malade est devenu entièrement aveugle au cours de sa maladie, c’est-à-dire si sa VUE est tombée à zéro, il perd définitivement un point de VUE. Quand il regagnera ses points de VUE, il les regagnera tous moins un.

      \n

      Bains de solimonce

      \n

      Une décoction de feuilles de solimonce (voir Herbes, p336) utilisée en bains d’yeux donne un bonus de +4 au jet de CONSTITUTION pour le regain des points de VUE.

      \n

      La décoction se prépare comme une décoction d’herbes de soin. Pour baigner les deux yeux, il en faut 10 brins. Le bain doit durer 60 minutes (pour les deux yeux), puis les yeux doivent être tenus à l’abri de la lumière pendant un minimum de 3 heures. Le mieux est de les fermer et de dormir. Un bain d’yeux n’est valable que pour un seul jet de CONSTITUTION.

      \n

      Dans tous les cas, la fréquence des jets est toutes les 12 heures. La décoction de solimonce n’étant jamais bue, un enchantement ne lui confère rien de plus. La solimonce ne guérit pas la fièvre brune et ne peut avoir d’effet que quand la maladie est entièrement guérie.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"1 heure \\ 6 heures","periode":{"unite":"heures","nombre":6},"remedesconnus":false,"remedes":"-4 \\ Élixir des Gnomes +14, Bitume de Camphre +10","dommages":"1 pt de Vie et 1 pt de Vue"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Bousille","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.qE4IEazgBeRs4uE0"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"qE4IEazgBeRs4uE0","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":5,"periodicite":"6 rounds","periode":{"unite":"rounds","nombre":6},"remedesconnus":false,"remedes":"-4/ Teinture d’Érozonne +10, Topazoïne +6","dommages":"3 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Hécatombe","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.sSgu1FYK1s1vZinT"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"sSgu1FYK1s1vZinT","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-5/ Bitume de Camphre +12, Mirobolant +6","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Amanite thanataire","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.sriGtgt3FQkc642z"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"sriGtgt3FQkc642z","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":7,"periodicite":"3 rounds","periode":{"unite":"rounds","nombre":3},"remedesconnus":false,"remedes":"-3/ Tournegraisse +12, Perle de Bjwal +10","dommages":"4 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673124718048,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Cheleuse","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.tpzD5959gxuIcTir"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"tpzD5959gxuIcTir","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":1,"periodicite":"5 minutes","periode":{"unite":"minutes","nombre":5},"remedesconnus":false,"remedes":"-3/ Liqueur de Bagdol +16, Mirobolant +14","dommages":"1 pt de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Venin d'araflate","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.v7yZidE9mObKO566"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"v7yZidE9mObKO566","system":{"description":"

      Venin de l'araflate. Sa morsure inflige un venin anesthésiant, inoculé sur toute blessure sauf contusion\\ éraflure.

      \n

      Chaque perte d’endurance s’accompagne de la fatigue équivalente. À zéro d’endurance, la victime est paralysée et ne peut plus faire un geste.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"1 round","periode":{"unite":"rounds","nombre":1},"remedesconnus":false,"remedes":"-3 \\ Liqueur de Bagdol +12 Lait de lune +6","dommages":"1d6 pts d'endurance"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673124718052,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Fumebol","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.xzCBr3FiSk1WewcT"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"xzCBr3FiSk1WewcT","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":5,"periodicite":"8 rounds","periode":{"unite":"rounds","nombre":8},"remedesconnus":false,"remedes":"-5/ Sable-Poudre +12, Huile de Sélikanthe +8.","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} diff --git a/packs/ombres-de-thanatos.db b/packs/ombres-de-thanatos.db index b87e88a8..f8f20787 100644 --- a/packs/ombres-de-thanatos.db +++ b/packs/ombres-de-thanatos.db @@ -1,25 +1,25 @@ -{"_id":"2KM1yiEOE0ZdT2oL","name":"Désir d'escalade difficile","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.2KM1yiEOE0ZdT2oL"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. Hauteur à grimper : 4d6 m, difficulté de l’escalade : 1d4-4.

      ","descriptionmj":"","frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017067,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"2KbzOC2aj98CiQbW","name":"Désir de blesser un enfant","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.2KbzOC2aj98CiQbW"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. Causer au minimum une blessure légère.

      ","descriptionmj":"","frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017067,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"3dnmi4Fyh5eUQcyP","name":"Urgence draconique","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.3dnmi4Fyh5eUQcyP"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Le haut-rêvant est pris du besoin irrésistible de déclencher immédiatement son plus proche sort en réserve. À équidistance, prendre dans le sens des aiguilles d’une montre en commençant par le haut. En cas de rencontre dans les TMR, se dérober équivaut à refouler la queue de Dragon. Si aucun sort n’est en réserve, ou si il y a impossibilité de pratiquer la magie à cause d’une autre queue ou d’un souffle, tirer à la place une idée fixe.

      ","descriptionmj":"","frequence":3,"hautrevant":true,"categorie":"false","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017067,"modifiedTime":1669478091420,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"6MUcjYfxfi45STvo","name":"Insomnie","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.6MUcjYfxfi45STvo"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Impossibilité totale de dormir, et donc de rêver, pendant un jour.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017067,"modifiedTime":1669478091420,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"DnhuuGUEbOF95JlN","name":"Désir de boire du sang chaud","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.DnhuuGUEbOF95JlN"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. Il s’agit de sang encore chaud de la chaleur naturelle de la victime.

      ","descriptionmj":"","frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017068,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"N9j8K6x89BdS7ZKN","name":"Conquête","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.N9j8K6x89BdS7ZKN"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Avant de pouvoir à nouveau faire usage du haut-rêve, y compris déclencher volontairement un sort mis en réserve, le haut-rêvant doit se rendre dans une certaine case des TMR déterminée aléatoirement et la maîtriser, difficulté -7. Ce peut être n’importe quelle case, sauf une case humide. En cas d’échec, la concentration est rompue ; il n’y a pas de souffle de Dragon en cas d’échec total.

      ","descriptionmj":"","frequence":3,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017068,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"PMz7SaB6sRxhwrWw","name":"Coup de barre","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.PMz7SaB6sRxhwrWw"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Prise immédiate de 3d6 points de fatigue.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017068,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"PmEjVox3Q6SPF730","name":"Inertie draconique","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.PmEjVox3Q6SPF730"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, la fatigue en TMR est doublée. Chaque case ou round coûte 2 points au lieu d’un.

      ","descriptionmj":"","frequence":3,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017068,"modifiedTime":1669478091420,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"RrPMV2HW2Rg8POK1","name":"Souvenir morbide de l'archétype","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.RrPMV2HW2Rg8POK1"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Les prochains points d’expérience dus au stress doivent être mis en Thanatos.

      ","descriptionmj":"","frequence":5,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017068,"modifiedTime":1669478091420,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"S7se7qPnL6WDg5U5","name":"Mauvaise rencontre en perspective","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.S7se7qPnL6WDg5U5"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Tirer la prochaine rencontre dans les TMR sur la @Compendium[foundryvtt-reve-de-dragon.tables-diverses.66ye0OOxBO9LEjdd]{Table spéciale de rencontres}

      ","descriptionmj":"","frequence":3,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017068,"modifiedTime":1669478091420,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"UmvGxA4cFSoRE82Z","name":"Dépouillement","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.UmvGxA4cFSoRE82Z"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Faire don de toute la monnaie actuellement possédée à la première personne inconnue rencontrée. En attendant, se garder d’aucune dépense.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"false","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017069,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"aZWuRmi8lplZQcdM","name":"Amnésie sélective","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.aZWuRmi8lplZQcdM"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, perte totale d’une compétence, à l’exclusion du Draconic. Déterminer aléatoirement la compétence visée qui, pratiquement, retourne au niveau de base. Si elle est déjà au niveau de base, en choisir une autre.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017069,"modifiedTime":1669478091418,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"cUkRSRz5DJYb3WM8","name":"Couardise irraisonnée","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.cUkRSRz5DJYb3WM8"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      la prochaine occasion de combat, obligation de fuir, de se cacher ou de se rendre. Impossibilité d’utiliser aucune magie, ni sur l’ennemi, ni sur soi-même.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"false","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017069,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"dFf8jaC0RvidC1ZC","name":"Haine fatale","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.dFf8jaC0RvidC1ZC"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      On devient immédiatement haineux et jaloux envers la première personne inconnue de même sexe et de même espèce rencontrée. Traiter comme le Coup de foudre fatal. La satisfaction s’obtient en blessant gravement ou en infligeant une cuisante humiliation publique.

      ","descriptionmj":"","frequence":10,"hautrevant":false,"categorie":"lancinant","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017069,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"e67rXcuO236ioYAr","name":"Infarctus","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.e67rXcuO236ioYAr"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Perte immédiate de 4 points de vie (et 8 points d’endurance). Ces points pourront commencer à être regagnés au bout d’un jour complet.

      ","descriptionmj":"","frequence":5,"hautrevant":false,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017069,"modifiedTime":1669478091420,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"fO1jjVlOb6faLv3T","name":"Désir de dormir dans un cercueil","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.fO1jjVlOb6faLv3T"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire.

      ","descriptionmj":"","frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017069,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"fUKNZ0uEG2y2PkOk","name":"Injurier le premier inconnu rencontré","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.fUKNZ0uEG2y2PkOk"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir d'injurier la première personne inconnue rencontrée

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"false","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017070,"modifiedTime":1669478091420,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"gT0PQAxlYrtITyut","name":"Désir de blesser une femme","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.gT0PQAxlYrtITyut"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. Causer au minimum une blessure légère.

      ","descriptionmj":"","frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017070,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"lz3ghhJzkPRWJ2jz","name":"Désir de parler à un crâne (humain)","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.lz3ghhJzkPRWJ2jz"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. La \"conversation\" doit durer un minimum de 15 minutes.

      ","descriptionmj":"","frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017070,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"spYuiInqbCoDsKvd","name":"Héroïsme forcené","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.spYuiInqbCoDsKvd"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      À la prochaine occasion de combat, obligation de foncer en tête en corps à corps ou avec une arme de mêlée. Impossibilité d’utiliser aucune magie, ni sur l’ennemi, ni sur soi-même.

      ","descriptionmj":"","frequence":9,"hautrevant":false,"categorie":"false","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017070,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"twUoR8ALYiabkfoE","name":"Désir d'entendre hurler de terreur","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.twUoR8ALYiabkfoE"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. Il doit s’agir d’un hurlement humain.

      ","descriptionmj":"","frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017070,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"uQ4PwcwplvZarfn1","name":"Montée laborieuse","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.uQ4PwcwplvZarfn1"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, monter en TMR coûte 2 points de rêve au lieu d’un, et 3 points en déplacement accéléré.

      ","descriptionmj":"","frequence":3,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017070,"modifiedTime":1669478091420,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"wqWkQQsAPVlFw4ft","name":"Désir d'assister à une pendaison","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.wqWkQQsAPVlFw4ft"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire.

      ","descriptionmj":"","frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017070,"modifiedTime":1669478091419,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"yEHdCabJYx0qvoL5","name":"Réinsertion aléatoire","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.yEHdCabJYx0qvoL5"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Comme après une sortie de la carte, le gardien des rêves réintroduit secrètement le demi-rêve du haut-rêvant dans les TMR.

      ","descriptionmj":"","frequence":3,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017070,"modifiedTime":1669478091420,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"zIXgRwfB83DMaNX8","name":"Pèlerinage","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.zIXgRwfB83DMaNX8"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Avant de pouvoir à nouveau faire usage du haut-rêve, y compris déclencher volontairement un sort mis en réserve, le haut-rêvant doit se rendre dans une certaine case des TMR déterminée aléatoirement. Un Passeur peut l’y téléporter, mais un Messager ne peut s’y rendre à sa place. Dès que la case est atteinte, le pèlerinage est accompli.

      ","descriptionmj":"","frequence":3,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"Q2G6GTdrotKzYGUC":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478017070,"modifiedTime":1669478091420,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"2KM1yiEOE0ZdT2oL","name":"Désir d'escalade difficile","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.2KM1yiEOE0ZdT2oL"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. Hauteur à grimper : 4d6 m, difficulté de l’escalade : 1d4-4.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017067,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"2KbzOC2aj98CiQbW","name":"Désir de blesser un enfant","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.2KbzOC2aj98CiQbW"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. Causer au minimum une blessure légère.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017067,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"3dnmi4Fyh5eUQcyP","name":"Urgence draconique","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.3dnmi4Fyh5eUQcyP"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Le haut-rêvant est pris du besoin irrésistible de déclencher immédiatement son plus proche sort en réserve. À équidistance, prendre dans le sens des aiguilles d’une montre en commençant par le haut. En cas de rencontre dans les TMR, se dérober équivaut à refouler la queue de Dragon. Si aucun sort n’est en réserve, ou si il y a impossibilité de pratiquer la magie à cause d’une autre queue ou d’un souffle, tirer à la place une idée fixe.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":true,"categorie":"false","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017067,"modifiedTime":1673118685215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"6MUcjYfxfi45STvo","name":"Insomnie","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.6MUcjYfxfi45STvo"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Impossibilité totale de dormir, et donc de rêver, pendant un jour.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"","refoulement":0,"duree":"jour","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017067,"modifiedTime":1673118685215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"DnhuuGUEbOF95JlN","name":"Désir de boire du sang chaud","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.DnhuuGUEbOF95JlN"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. Il s’agit de sang encore chaud de la chaleur naturelle de la victime.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017068,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"N9j8K6x89BdS7ZKN","name":"Conquête","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.N9j8K6x89BdS7ZKN"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Avant de pouvoir à nouveau faire usage du haut-rêve, y compris déclencher volontairement un sort mis en réserve, le haut-rêvant doit se rendre dans une certaine case des TMR déterminée aléatoirement et la maîtriser, difficulté -7. Ce peut être n’importe quelle case, sauf une case humide. En cas d’échec, la concentration est rompue ; il n’y a pas de souffle de Dragon en cas d’échec total.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017068,"modifiedTime":1673118685213,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"PMz7SaB6sRxhwrWw","name":"Coup de barre","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.PMz7SaB6sRxhwrWw"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Prise immédiate de 3d6 points de fatigue.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017068,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"PmEjVox3Q6SPF730","name":"Inertie draconique","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.PmEjVox3Q6SPF730"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, la fatigue en TMR est doublée. Chaque case ou round coûte 2 points au lieu d’un.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":true,"categorie":"","refoulement":0,"duree":"jour","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017068,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"RrPMV2HW2Rg8POK1","name":"Souvenir morbide de l'archétype","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.RrPMV2HW2Rg8POK1"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Les prochains points d’expérience dus au stress doivent être mis en Thanatos.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017068,"modifiedTime":1673118685215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"S7se7qPnL6WDg5U5","name":"Mauvaise rencontre en perspective","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.S7se7qPnL6WDg5U5"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Tirer la prochaine rencontre dans les TMR sur la @Compendium[foundryvtt-reve-de-dragon.tables-diverses.66ye0OOxBO9LEjdd]{Table spéciale de rencontres}

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017068,"modifiedTime":1673118685215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"UmvGxA4cFSoRE82Z","name":"Dépouillement","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.UmvGxA4cFSoRE82Z"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Faire don de toute la monnaie actuellement possédée à la première personne inconnue rencontrée. En attendant, se garder d’aucune dépense.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"false","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017069,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"aZWuRmi8lplZQcdM","name":"Amnésie sélective","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.aZWuRmi8lplZQcdM"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, perte totale d’une compétence, à l’exclusion du Draconic. Déterminer aléatoirement la compétence visée qui, pratiquement, retourne au niveau de base. Si elle est déjà au niveau de base, en choisir une autre.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"","refoulement":0,"duree":"jour","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017069,"modifiedTime":1673118685213,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"cUkRSRz5DJYb3WM8","name":"Couardise irraisonnée","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.cUkRSRz5DJYb3WM8"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      la prochaine occasion de combat, obligation de fuir, de se cacher ou de se rendre. Impossibilité d’utiliser aucune magie, ni sur l’ennemi, ni sur soi-même.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"false","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017069,"modifiedTime":1673118685213,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"dFf8jaC0RvidC1ZC","name":"Haine fatale","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.dFf8jaC0RvidC1ZC"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      On devient immédiatement haineux et jaloux envers la première personne inconnue de même sexe et de même espèce rencontrée. Traiter comme le Coup de foudre fatal. La satisfaction s’obtient en blessant gravement ou en infligeant une cuisante humiliation publique.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":10,"hautrevant":false,"categorie":"lancinant","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017069,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"e67rXcuO236ioYAr","name":"Infarctus","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.e67rXcuO236ioYAr"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Perte immédiate de 4 points de vie (et 8 points d’endurance). Ces points pourront commencer à être regagnés au bout d’un jour complet.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":false,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017069,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"fO1jjVlOb6faLv3T","name":"Désir de dormir dans un cercueil","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.fO1jjVlOb6faLv3T"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017069,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"fUKNZ0uEG2y2PkOk","name":"Injurier le premier inconnu rencontré","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.fUKNZ0uEG2y2PkOk"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir d'injurier la première personne inconnue rencontrée

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"false","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017070,"modifiedTime":1673118685215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"gT0PQAxlYrtITyut","name":"Désir de blesser une femme","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.gT0PQAxlYrtITyut"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. Causer au minimum une blessure légère.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017070,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"lz3ghhJzkPRWJ2jz","name":"Désir de parler à un crâne (humain)","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.lz3ghhJzkPRWJ2jz"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. La \"conversation\" doit durer un minimum de 15 minutes.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017070,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"spYuiInqbCoDsKvd","name":"Héroïsme forcené","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.spYuiInqbCoDsKvd"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      À la prochaine occasion de combat, obligation de foncer en tête en corps à corps ou avec une arme de mêlée. Impossibilité d’utiliser aucune magie, ni sur l’ennemi, ni sur soi-même.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":9,"hautrevant":false,"categorie":"false","refoulement":4,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017070,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"twUoR8ALYiabkfoE","name":"Désir d'entendre hurler de terreur","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.twUoR8ALYiabkfoE"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire. Il doit s’agir d’un hurlement humain.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017070,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"uQ4PwcwplvZarfn1","name":"Montée laborieuse","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.uQ4PwcwplvZarfn1"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, monter en TMR coûte 2 points de rêve au lieu d’un, et 3 points en déplacement accéléré.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":true,"categorie":"","refoulement":0,"duree":"jour","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017070,"modifiedTime":1673118685215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"wqWkQQsAPVlFw4ft","name":"Désir d'assister à une pendaison","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.wqWkQQsAPVlFw4ft"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Désir thanataire.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":4,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017070,"modifiedTime":1673118685214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"yEHdCabJYx0qvoL5","name":"Réinsertion aléatoire","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.yEHdCabJYx0qvoL5"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Comme après une sortie de la carte, le gardien des rêves réintroduit secrètement le demi-rêve du haut-rêvant dans les TMR.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017070,"modifiedTime":1673118685215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"zIXgRwfB83DMaNX8","name":"Pèlerinage","type":"ombre","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.ombres-de-thanatos.zIXgRwfB83DMaNX8"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Avant de pouvoir à nouveau faire usage du haut-rêve, y compris déclencher volontairement un sort mis en réserve, le haut-rêvant doit se rendre dans une certaine case des TMR déterminée aléatoirement. Un Passeur peut l’y téléporter, mais un Messager ne peut s’y rendre à sa place. Dès que la case est atteinte, le pèlerinage est accompli.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":true,"categorie":"false","refoulement":0,"duree":"","restant":0},"ownership":{"default":0,"Q2G6GTdrotKzYGUC":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478017070,"modifiedTime":1673118685215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} diff --git a/packs/queues-de-dragon.db b/packs/queues-de-dragon.db index 6fc24b08..db1fd9f4 100644 --- a/packs/queues-de-dragon.db +++ b/packs/queues-de-dragon.db @@ -1,56 +1,56 @@ -{"_id":"0jrEZ62Q2Jz4kBGf","name":"Mauvaise rencontre en perspective","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.0jrEZ62Q2Jz4kBGf"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      La prochaine rencontre dans les TMR sera tirée de la @Compendium[foundryvtt-reve-de-dragon.tables-diverses.66ye0OOxBO9LEjdd]{Table spéciale de rencontres}

      ","descriptionmj":"","frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025459,"modifiedTime":1669478080242,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"0uc2pMIGL03Hq2Hn","name":"Anorexie. Ne rien avaler, ni solide, ni liquide, pas même une potion","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.0uc2pMIGL03Hq2Hn"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025459,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"1gGVlZM0UyifL6RK","name":"Souvenir obsessionnel de l'archétype","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.1gGVlZM0UyifL6RK"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Les prochains points d’expérience dus au stress doivent être mis dans une compétence déterminée aléatoirement par la table de @Compendium[foundryvtt-reve-de-dragon.tables-diverses.E0WLgjn6LA9WsvKJ]{Détermination aléatoire de compétence}.

      ","descriptionmj":"","frequence":48,"hautrevant":false,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025459,"modifiedTime":1669478080242,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"1l59lWbtvYp74OTb","name":"Briser un objet de verre","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.1l59lWbtvYp74OTb"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025460,"modifiedTime":1669478080237,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"22EQLBJfHVYs96iC","name":"Cracher dans toute nourriture ou boisson aperçue","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.22EQLBJfHVYs96iC"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025460,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"2Rtm78bMKPy8eG4q","name":"Éteindre tout feu rencontré (feu de camp, torche, lanterne, etc.)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.2Rtm78bMKPy8eG4q"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025460,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"2i3PndTKG1n3hEUU","name":"Danser avec un(e) partenaire inconnu(e) (Beauté 13 minimum)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.2i3PndTKG1n3hEUU"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025460,"modifiedTime":1669478080238,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"2j1q9e07ZLlIQDYl","name":"Traîner son épée en laisse (ou sa meilleure arme)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.2j1q9e07ZLlIQDYl"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025460,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"32LbwxxokC9Tn370","name":"Coup de foudre fatal","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.32LbwxxokC9Tn370"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      On devient immédiatement amoureux fou de la première personne inconnue de sexe opposé et de même espèce rencontrée. Tant que satisfaction n’est pas obtenue, traiter comme un désir lancinant. 

      ","descriptionmj":"","frequence":20,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025460,"modifiedTime":1669478080236,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"3BcC8lSsP5WIyva7","name":"Gagner de l’argent (minimum 10 deniers)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.3BcC8lSsP5WIyva7"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025460,"modifiedTime":1669478080238,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"3ZjwYyQRatCMnBCi","name":"Mégalomanie. Être acclamé par un minimum de 10 personnes","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.3ZjwYyQRatCMnBCi"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025460,"modifiedTime":1669478080239,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"5knw1NcnBsLIjHpr","name":"Montée laborieuse","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.5knw1NcnBsLIjHpr"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, monter en TMR coûte 2 points de rêve au lieu d’un, et 3 points en déplacement accéléré.

      ","descriptionmj":"","frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025460,"modifiedTime":1669478080242,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"6G0lF06jSryTduAt","name":"Avoir le visage noirci à la cendre","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.6G0lF06jSryTduAt"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025460,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"7TKsit2Mv9mWGq3C","name":"Ne marcher qu’à quatre pattes","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.7TKsit2Mv9mWGq3C"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025461,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"8sLXQBqo8XwjAFG0","name":"Acquérir une chèvre","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.8sLXQBqo8XwjAFG0"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025461,"modifiedTime":1669478080237,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"E902EEYZHg3zFKq6","name":"Garder les yeux bandés","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.E902EEYZHg3zFKq6"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025461,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"EUrxQGd7FuW628NS","name":"Inertie draconique","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.EUrxQGd7FuW628NS"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, la fatigue en TMR est doublée. Chaque case ou round coûte 2 points au lieu d’un.

      ","descriptionmj":"","frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025461,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"F6qL4d4g3qjh045R","name":"Danser nu sous la pluie","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.F6qL4d4g3qjh045R"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025461,"modifiedTime":1669478080238,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"F8G3rdU1nfJzYwYR","name":"Garder sur soi 3d6 kilos de cailloux","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.F8G3rdU1nfJzYwYR"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025461,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"HSNOvBR890dsEDw2","name":"Se faire raser la tête","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.HSNOvBR890dsEDw2"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025461,"modifiedTime":1669478080239,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"I0CtQ05xFW6ghcdP","name":"Aller tout nu, sans porter le moindre paquet ni objet","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.I0CtQ05xFW6ghcdP"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025462,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"J3XtcVuQo846U1OT","name":"Idée fixe","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.J3XtcVuQo846U1OT"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Tirer [[/r 1d20]] sur la table des @Compendium[foundryvtt-reve-de-dragon.tables-diverses.nbH4v630P7ARaAHk]{Idées fixes}. Les idées fixes prennent effet immédiatement et durent jusqu’à l’extrême fin de l’heure du Château Dormant du lendemain. Si passé ce délai, l’occasion de les manifester ne s’est pas présentée, la queue prend fin néanmoins. Si elles entrent en contradiction avec une autre queue de Dragon, retirer.

      \n

       

      ","descriptionmj":"","frequence":0,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025462,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"JcTX8qMS0z8bmdVt","name":"Boulimie. Manger au moins un point de sust. par heure","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.JcTX8qMS0z8bmdVt"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025462,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"LlELEB0FhymLx6VM","name":"Passer une nuit sur une échelle","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.LlELEB0FhymLx6VM"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025463,"modifiedTime":1669478080239,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"Ltgqj86rYQr8D8LW","name":"Désir lancinant","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.Ltgqj86rYQr8D8LW"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Tirer [[/r 1d20]] sur la table des @Compendium[foundryvtt-reve-de-dragon.tables-diverses.sVWhyr4wPnieuPP8]{Désirs lancinants}. Les désirs lancinants durent jusqu’à ce qu’ils soient satisfaits ou refoulés. Tant que satisfaction n’est pas obtenue, aucun point d’expérience ne peut plus être gagné par l’exercice en cas de particulière et d’ajustement final négatif. Les points d’expérience dus au stress ne sont pas affectés.

      \n

       

      ","descriptionmj":"","frequence":0,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025463,"modifiedTime":1669478080237,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"NpTDqICR7ZuToQrg","name":"Refuser de monter dans les TMR","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.NpTDqICR7ZuToQrg"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025463,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"NzJJNK0YMAbobu0p","name":"Masochisme. Perdre 3 points d’endurance minimum en 1 round","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.NzJJNK0YMAbobu0p"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025463,"modifiedTime":1669478080239,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"OSV2b7bVWv2SCfUY","name":"Urgence draconique","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.OSV2b7bVWv2SCfUY"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Le haut-rêvant est pris du besoin irrésistible de déclencher immédiatement son plus proche sort en réserve. À équidistance, prendre dans le sens des aiguilles d’une montre en commençant par le haut. En cas de rencontre dans les TMR, se dérober équivaut à refouler la queue de Dragon. Si aucun sort n’est en réserve, ou si il y a impossibilité de pratiquer la magie à cause d’une autre queue ou d’un souffle, tirer à la place une idée fixe.

      ","descriptionmj":"","frequence":16,"hautrevant":true,"categorie":"","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025463,"modifiedTime":1669478080242,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"OjG8XRbeYtq2jcgB","name":"Casser 3d6 oeufs en les jetant à terre","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.OjG8XRbeYtq2jcgB"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025463,"modifiedTime":1669478080237,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"QHUOwjMR6AvepGPm","name":"Traire une vache","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.QHUOwjMR6AvepGPm"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025463,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"Qgj5eSMpQ0IDHwZX","name":"Coup de barre","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.Qgj5eSMpQ0IDHwZX"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Prise immédiate de 3d6 points de fatigue.

      ","descriptionmj":"","frequence":20,"hautrevant":false,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025463,"modifiedTime":1669478080236,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"RVslW735GbPbXCpP","name":"Pèlerinage","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.RVslW735GbPbXCpP"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Avant de pouvoir à nouveau faire usage du haut-rêve, y compris déclencher volontairement un sort mis en réserve, le haut-rêvant doit se rendre dans une certaine case des TMR déterminée aléatoirement. Un Passeur peut l’y téléporter, mais un Messager ne peut s’y rendre à sa place. Dès que la case est atteinte, le pèlerinage est accompli.

      ","descriptionmj":"","frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"Q2G6GTdrotKzYGUC":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025463,"modifiedTime":1669478080242,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"S8PVNgxb7TcFXq9g","name":"Pisser dans un violon (luth, mandoline, etc.)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.S8PVNgxb7TcFXq9g"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025463,"modifiedTime":1669478080239,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"SY0SsWtZdxSodMcl","name":"Manger du poisson","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.SY0SsWtZdxSodMcl"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025464,"modifiedTime":1669478080238,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"TmEeikWOQt6NZGVY","name":"Masque de Narcos","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.TmEeikWOQt6NZGVY"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant 1d7 jours à compter du lendemain, la caractéristique APPARENCE baisse de 1d6 points, de même que la Beauté.

      ","descriptionmj":"","frequence":20,"hautrevant":false,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025464,"modifiedTime":1669478080242,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"UUTbsktTcxsIe5L5","name":"Ne pas franchir de porte. (On peut franchir une fenêtre)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.UUTbsktTcxsIe5L5"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025464,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"VChJbtGFtWoiFNky","name":"Refuser de se délester du moindre objet, ni donner ni prêter","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.VChJbtGFtWoiFNky"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025464,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"YCHBbRLiMzTH7IBj","name":"Ne s’exprimer que par des cris d’animaux (meuh ! coin-coin ! etc.)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.YCHBbRLiMzTH7IBj"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025464,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"afGp9CewfyJKecEE","name":"Vider sur sa tête toute fiole ou flacon aperçu","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.afGp9CewfyJKecEE"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025464,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"df5oN8Ub3dWTVxNj","name":"Faire des bulles de savon","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.df5oN8Ub3dWTVxNj"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025464,"modifiedTime":1669478080238,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"diCCimukdNM6bPub","name":"Entendre braire un âne","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.diCCimukdNM6bPub"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025464,"modifiedTime":1669478080238,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"el4lofhhSucMv5xv","name":"Se rouler dans la boue","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.el4lofhhSucMv5xv"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025464,"modifiedTime":1669478080239,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"gMmqdJ9I7Mt8Tg3f","name":"Ne dire que «non» ou négation analogue","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.gMmqdJ9I7Mt8Tg3f"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025465,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"gadh6aI5iCM82qpP","name":"Manger des champignons","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.gadh6aI5iCM82qpP"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025465,"modifiedTime":1669478080238,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"hghw6Cldrad1CIiJ","name":"Refuser de se déplacer autrement que porté","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.hghw6Cldrad1CIiJ"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025465,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"iHuLw0I1Gc5mIucG","name":"Réinsertion aléatoire","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.iHuLw0I1Gc5mIucG"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Comme après une sortie de la carte, le gardien des rêves réintroduit secrètement le demi-rêve du haut-rêvant dans les TMR.

      ","descriptionmj":"","frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025465,"modifiedTime":1669478080242,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"iJw6j7kuP1eAHIck","name":"Amnésie sélective","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.iJw6j7kuP1eAHIck"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, perte totale d’une compétence, à l’exclusion du Draconic. Déterminer aléatoirement la compétence visée qui, pratiquement, retourne au niveau de base. Si elle est déjà au niveau de base, en choisir une autre.

      ","descriptionmj":"","frequence":20,"hautrevant":false,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025465,"modifiedTime":1669478080236,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"iPYPgxL2uUnphStc","name":"Garder une main sur la tête","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.iPYPgxL2uUnphStc"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025465,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"j2xIrFWYqhDM4TcN","name":"Appeler les hommes «madame» et les femmes «messire»","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.j2xIrFWYqhDM4TcN"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025465,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"jShpKV8mVcqWmYvp","name":"Se soûler (minimum pas frais)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.jShpKV8mVcqWmYvp"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025465,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"kHWwwxA0alcpDYpf","name":"Insomnie","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.kHWwwxA0alcpDYpf"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Impossibilité totale de dormir, et donc de rêver, pendant un jour.

      ","descriptionmj":"","frequence":20,"hautrevant":false,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025466,"modifiedTime":1669478080241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"lBkO8FvFqXoKNhvk","name":"Conquête","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.lBkO8FvFqXoKNhvk"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Avant de pouvoir à nouveau faire usage du haut-rêve, y compris déclencher volontairement un sort mis en réserve, le haut-rêvant doit se rendre dans une certaine case des TMR déterminée aléatoirement et la maîtriser, difficulté -7. Ce peut être n’importe quelle case, sauf une case humide. En cas d’échec, la concentration est rompue ; il n’y a pas de souffle de Dragon en cas d’échec total.

      ","descriptionmj":"","frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025466,"modifiedTime":1669478080236,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"mN0yghXkFfj2YctJ","name":"Construire une cabane","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.mN0yghXkFfj2YctJ"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025466,"modifiedTime":1669478080237,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"sjXBBr85OBk4Yg4t","name":"Embrasser un cochon sur le groin","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.sjXBBr85OBk4Yg4t"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025466,"modifiedTime":1669478080238,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"vft88ioHpGxMzdML","name":"Dépouillement","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.vft88ioHpGxMzdML"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Faire don de toute la monnaie actuellement possédée à la première personne inconnue rencontrée. En attendant, se garder d’aucune dépense.

      ","descriptionmj":"","frequence":20,"hautrevant":false,"categorie":"","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025466,"modifiedTime":1669478080237,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"xa4t9Lbt6uLEjap6","name":"Faire le mort","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.xa4t9Lbt6uLEjap6"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.8","coreVersion":"10.290","createdTime":1669478025466,"modifiedTime":1669478080240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"0jrEZ62Q2Jz4kBGf","name":"Mauvaise rencontre en perspective","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.0jrEZ62Q2Jz4kBGf"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      La prochaine rencontre dans les TMR sera tirée de la @Compendium[foundryvtt-reve-de-dragon.tables-diverses.66ye0OOxBO9LEjdd]{Table spéciale de rencontres}

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025459,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"0uc2pMIGL03Hq2Hn","name":"Anorexie. Ne rien avaler, ni solide, ni liquide, pas même une potion","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.0uc2pMIGL03Hq2Hn"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025459,"modifiedTime":1673118700210,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"1gGVlZM0UyifL6RK","name":"Souvenir obsessionnel de l'archétype","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.1gGVlZM0UyifL6RK"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Les prochains points d’expérience dus au stress doivent être mis dans une compétence déterminée aléatoirement par la table de @Compendium[foundryvtt-reve-de-dragon.tables-diverses.E0WLgjn6LA9WsvKJ]{Détermination aléatoire de compétence}.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":48,"hautrevant":false,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025459,"modifiedTime":1673118700215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"1l59lWbtvYp74OTb","name":"Briser un objet de verre","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.1l59lWbtvYp74OTb"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025460,"modifiedTime":1673118700210,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"22EQLBJfHVYs96iC","name":"Cracher dans toute nourriture ou boisson aperçue","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.22EQLBJfHVYs96iC"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025460,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"2Rtm78bMKPy8eG4q","name":"Éteindre tout feu rencontré (feu de camp, torche, lanterne, etc.)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.2Rtm78bMKPy8eG4q"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025460,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"2i3PndTKG1n3hEUU","name":"Danser avec un(e) partenaire inconnu(e) (Beauté 13 minimum)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.2i3PndTKG1n3hEUU"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025460,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"2j1q9e07ZLlIQDYl","name":"Traîner son épée en laisse (ou sa meilleure arme)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.2j1q9e07ZLlIQDYl"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025460,"modifiedTime":1673118700215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"32LbwxxokC9Tn370","name":"Coup de foudre fatal","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.32LbwxxokC9Tn370"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      On devient immédiatement amoureux fou de la première personne inconnue de sexe opposé et de même espèce rencontrée. Tant que satisfaction n’est pas obtenue, traiter comme un désir lancinant. 

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":20,"hautrevant":false,"categorie":"lancinant","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025460,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"3BcC8lSsP5WIyva7","name":"Gagner de l’argent (minimum 10 deniers)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.3BcC8lSsP5WIyva7"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025460,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"3ZjwYyQRatCMnBCi","name":"Mégalomanie. Être acclamé par un minimum de 10 personnes","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.3ZjwYyQRatCMnBCi"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025460,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"5knw1NcnBsLIjHpr","name":"Montée laborieuse","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.5knw1NcnBsLIjHpr"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, monter en TMR coûte 2 points de rêve au lieu d’un, et 3 points en déplacement accéléré.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025460,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"6G0lF06jSryTduAt","name":"Avoir le visage noirci à la cendre","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.6G0lF06jSryTduAt"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025460,"modifiedTime":1673118700210,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"7TKsit2Mv9mWGq3C","name":"Ne marcher qu’à quatre pattes","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.7TKsit2Mv9mWGq3C"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025461,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"8sLXQBqo8XwjAFG0","name":"Acquérir une chèvre","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.8sLXQBqo8XwjAFG0"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025461,"modifiedTime":1673118700209,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"E902EEYZHg3zFKq6","name":"Garder les yeux bandés","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.E902EEYZHg3zFKq6"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025461,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"EUrxQGd7FuW628NS","name":"Inertie draconique","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.EUrxQGd7FuW628NS"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, la fatigue en TMR est doublée. Chaque case ou round coûte 2 points au lieu d’un.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025461,"modifiedTime":1673118700213,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"F6qL4d4g3qjh045R","name":"Danser nu sous la pluie","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.F6qL4d4g3qjh045R"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025461,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"F8G3rdU1nfJzYwYR","name":"Garder sur soi 3d6 kilos de cailloux","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.F8G3rdU1nfJzYwYR"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025461,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"HSNOvBR890dsEDw2","name":"Se faire raser la tête","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.HSNOvBR890dsEDw2"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025461,"modifiedTime":1673118700215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"I0CtQ05xFW6ghcdP","name":"Aller tout nu, sans porter le moindre paquet ni objet","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.I0CtQ05xFW6ghcdP"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025462,"modifiedTime":1673118700209,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"J3XtcVuQo846U1OT","name":"Idée fixe","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.J3XtcVuQo846U1OT"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Tirer [[/r 1d20]] sur la table des @Compendium[foundryvtt-reve-de-dragon.tables-diverses.nbH4v630P7ARaAHk]{Idées fixes}. Les idées fixes prennent effet immédiatement et durent jusqu’à l’extrême fin de l’heure du Château Dormant du lendemain. Si passé ce délai, l’occasion de les manifester ne s’est pas présentée, la queue prend fin néanmoins. Si elles entrent en contradiction avec une autre queue de Dragon, retirer.

      \n

       

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":0,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025462,"modifiedTime":1673118700213,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"JcTX8qMS0z8bmdVt","name":"Boulimie. Manger au moins un point de sust. par heure","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.JcTX8qMS0z8bmdVt"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025462,"modifiedTime":1673118700210,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"LlELEB0FhymLx6VM","name":"Passer une nuit sur une échelle","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.LlELEB0FhymLx6VM"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025463,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"Ltgqj86rYQr8D8LW","name":"Désir lancinant","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.Ltgqj86rYQr8D8LW"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Tirer [[/r 1d20]] sur la table des @Compendium[foundryvtt-reve-de-dragon.tables-diverses.sVWhyr4wPnieuPP8]{Désirs lancinants}. Les désirs lancinants durent jusqu’à ce qu’ils soient satisfaits ou refoulés. Tant que satisfaction n’est pas obtenue, aucun point d’expérience ne peut plus être gagné par l’exercice en cas de particulière et d’ajustement final négatif. Les points d’expérience dus au stress ne sont pas affectés.

      \n

       

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":0,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025463,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"NpTDqICR7ZuToQrg","name":"Refuser de monter dans les TMR","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.NpTDqICR7ZuToQrg"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025463,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"NzJJNK0YMAbobu0p","name":"Masochisme. Perdre 3 points d’endurance minimum en 1 round","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.NzJJNK0YMAbobu0p"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025463,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"OSV2b7bVWv2SCfUY","name":"Urgence draconique","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.OSV2b7bVWv2SCfUY"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Le haut-rêvant est pris du besoin irrésistible de déclencher immédiatement son plus proche sort en réserve. À équidistance, prendre dans le sens des aiguilles d’une montre en commençant par le haut. En cas de rencontre dans les TMR, se dérober équivaut à refouler la queue de Dragon. Si aucun sort n’est en réserve, ou si il y a impossibilité de pratiquer la magie à cause d’une autre queue ou d’un souffle, tirer à la place une idée fixe.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":16,"hautrevant":true,"categorie":"","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025463,"modifiedTime":1673118700215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"OjG8XRbeYtq2jcgB","name":"Casser 3d6 oeufs en les jetant à terre","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.OjG8XRbeYtq2jcgB"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025463,"modifiedTime":1673118700210,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"QHUOwjMR6AvepGPm","name":"Traire une vache","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.QHUOwjMR6AvepGPm"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025463,"modifiedTime":1673118700215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"Qgj5eSMpQ0IDHwZX","name":"Coup de barre","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.Qgj5eSMpQ0IDHwZX"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Prise immédiate de 3d6 points de fatigue.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":20,"hautrevant":false,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025463,"modifiedTime":1673118700210,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"RVslW735GbPbXCpP","name":"Pèlerinage","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.RVslW735GbPbXCpP"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Avant de pouvoir à nouveau faire usage du haut-rêve, y compris déclencher volontairement un sort mis en réserve, le haut-rêvant doit se rendre dans une certaine case des TMR déterminée aléatoirement. Un Passeur peut l’y téléporter, mais un Messager ne peut s’y rendre à sa place. Dès que la case est atteinte, le pèlerinage est accompli.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"Q2G6GTdrotKzYGUC":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025463,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"S8PVNgxb7TcFXq9g","name":"Pisser dans un violon (luth, mandoline, etc.)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.S8PVNgxb7TcFXq9g"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025463,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"SY0SsWtZdxSodMcl","name":"Manger du poisson","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.SY0SsWtZdxSodMcl"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025464,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"TmEeikWOQt6NZGVY","name":"Masque de Narcos","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.TmEeikWOQt6NZGVY"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant 1d7 jours à compter du lendemain, la caractéristique APPARENCE baisse de 1d6 points, de même que la Beauté.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":20,"hautrevant":false,"categorie":"","refoulement":1,"duree":"1d7jours","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025464,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"UUTbsktTcxsIe5L5","name":"Ne pas franchir de porte. (On peut franchir une fenêtre)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.UUTbsktTcxsIe5L5"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025464,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"VChJbtGFtWoiFNky","name":"Refuser de se délester du moindre objet, ni donner ni prêter","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.VChJbtGFtWoiFNky"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025464,"modifiedTime":1673118700215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"YCHBbRLiMzTH7IBj","name":"Ne s’exprimer que par des cris d’animaux (meuh ! coin-coin ! etc.)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.YCHBbRLiMzTH7IBj"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025464,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"afGp9CewfyJKecEE","name":"Vider sur sa tête toute fiole ou flacon aperçu","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.afGp9CewfyJKecEE"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025464,"modifiedTime":1673118700215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"df5oN8Ub3dWTVxNj","name":"Faire des bulles de savon","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.df5oN8Ub3dWTVxNj"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025464,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"diCCimukdNM6bPub","name":"Entendre braire un âne","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.diCCimukdNM6bPub"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025464,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"el4lofhhSucMv5xv","name":"Se rouler dans la boue","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.el4lofhhSucMv5xv"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025464,"modifiedTime":1673118700215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"gMmqdJ9I7Mt8Tg3f","name":"Ne dire que «non» ou négation analogue","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.gMmqdJ9I7Mt8Tg3f"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025465,"modifiedTime":1673118700214,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"gadh6aI5iCM82qpP","name":"Manger des champignons","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.gadh6aI5iCM82qpP"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025465,"modifiedTime":1673118700213,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"hghw6Cldrad1CIiJ","name":"Refuser de se déplacer autrement que porté","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.hghw6Cldrad1CIiJ"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025465,"modifiedTime":1673118700215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"iHuLw0I1Gc5mIucG","name":"Réinsertion aléatoire","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.iHuLw0I1Gc5mIucG"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Comme après une sortie de la carte, le gardien des rêves réintroduit secrètement le demi-rêve du haut-rêvant dans les TMR.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025465,"modifiedTime":1673118700215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"iJw6j7kuP1eAHIck","name":"Amnésie sélective","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.iJw6j7kuP1eAHIck"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Pendant un jour, perte totale d’une compétence, à l’exclusion du Draconic. Déterminer aléatoirement la compétence visée qui, pratiquement, retourne au niveau de base. Si elle est déjà au niveau de base, en choisir une autre.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":20,"hautrevant":false,"categorie":"","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025465,"modifiedTime":1673118700209,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"iPYPgxL2uUnphStc","name":"Garder une main sur la tête","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.iPYPgxL2uUnphStc"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025465,"modifiedTime":1673118700212,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"j2xIrFWYqhDM4TcN","name":"Appeler les hommes «madame» et les femmes «messire»","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.j2xIrFWYqhDM4TcN"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025465,"modifiedTime":1673118700210,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"jShpKV8mVcqWmYvp","name":"Se soûler (minimum pas frais)","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.jShpKV8mVcqWmYvp"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025465,"modifiedTime":1673118700215,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"kHWwwxA0alcpDYpf","name":"Insomnie","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.kHWwwxA0alcpDYpf"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Impossibilité totale de dormir, et donc de rêver, pendant un jour.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":20,"hautrevant":false,"categorie":"","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025466,"modifiedTime":1673118700213,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"lBkO8FvFqXoKNhvk","name":"Conquête","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.lBkO8FvFqXoKNhvk"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Avant de pouvoir à nouveau faire usage du haut-rêve, y compris déclencher volontairement un sort mis en réserve, le haut-rêvant doit se rendre dans une certaine case des TMR déterminée aléatoirement et la maîtriser, difficulté -7. Ce peut être n’importe quelle case, sauf une case humide. En cas d’échec, la concentration est rompue ; il n’y a pas de souffle de Dragon en cas d’échec total.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":16,"hautrevant":true,"categorie":"","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025466,"modifiedTime":1673118700210,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"mN0yghXkFfj2YctJ","name":"Construire une cabane","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.mN0yghXkFfj2YctJ"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025466,"modifiedTime":1673118700210,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"sjXBBr85OBk4Yg4t","name":"Embrasser un cochon sur le groin","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/desir_lancinant.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.sjXBBr85OBk4Yg4t"}},"system":{"description":"

      Tant que satisfaction n'est pas obtenue, aucun point d'expérience ne peut plus être gagné par l'exercice en cas de particulière et d'ajustement final négatif.
      Les points d'expérience dus au stress ne sont pas affectés.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"lancinant","refoulement":1,"duree":"","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025466,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"vft88ioHpGxMzdML","name":"Dépouillement","type":"queue","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.vft88ioHpGxMzdML"}},"img":"systems/foundryvtt-reve-de-dragon/icons/queue_dragon.webp","effects":[],"system":{"description":"

      Faire don de toute la monnaie actuellement possédée à la première personne inconnue rencontrée. En attendant, se garder d’aucune dépense.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":20,"hautrevant":false,"categorie":"","refoulement":2,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025466,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"xa4t9Lbt6uLEjap6","name":"Faire le mort","type":"queue","img":"systems/foundryvtt-reve-de-dragon/icons/queues/idee_fixe.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.queues-de-dragon.xa4t9Lbt6uLEjap6"}},"system":{"description":"

      Prend effet immédiatement et dure jusqu'à la fin de l'heure du Château Dormant du lendemain.
      Si passé ce délai, l'occasion de la manifester ne s'est pas présentée, la queue prend fin.

      \n

      Si elle entre en contradiction avec une autre queue, retirer.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":3,"hautrevant":false,"categorie":"ideefixe","refoulement":1,"duree":"jour","restant":0},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1669478025466,"modifiedTime":1673118700211,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} diff --git a/packs/souffles-de-dragon.db b/packs/souffles-de-dragon.db index 8cc4d020..e2527574 100644 --- a/packs/souffles-de-dragon.db +++ b/packs/souffles-de-dragon.db @@ -1,19 +1,19 @@ -{"_id":"0wHV3netTtqjw280","name":"Mauvaises rencontres en perspective","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Tirer les ddr prochaines rencontres dans les TMR sur la @Compendium[foundryvtt-reve-de-dragon.tables-diverses.66ye0OOxBO9LEjdd]{Table spéciale de rencontres}

      ","descriptionmj":"","frequence":5,"hautrevant":false,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246291440,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"2FDRnIY6Os6JJ27j","name":"Je-m'en-foutisme","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Perte de 1 niveau dans une compétence déterminée aléatoirement, autre qu’une compétence de combat ou qu’une connaissance.

      ","descriptionmj":"","frequence":4,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246306342,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"6xvkOytCrp5yDAOs","name":"Non-combativité","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Perte de 1 niveau dans une compétence de combat, à déterminer aléatoirement.

      ","descriptionmj":"","frequence":4,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246213353,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"8B74cu17PCdqztke","name":"Impraticabilité des ponts","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, les ponts doivent être maîtrisés comme s’ils étaient des cases humides. Ils conservent néanmoins leur identité pour le lancer des sorts.

      ","descriptionmj":"","frequence":5,"hautrevant":true,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246317310,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"CVXptnnw75fLx4LK","name":"Queue de dragon perpétuelle","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Le personnage est atteint de 7 + ddr queues de Dragon, non pas simultanément, mais l’une après l’autre. Dès que la première prend fin, en tirer une autre; et ainsi de suite jusqu’à ce que toutes les queues aient été appliquées.

      ","descriptionmj":"","frequence":12,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246127241,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"GNZW6esJ2nCHjfyu","name":"Épuisement","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, chaque prise de fatigue est augmentée d’un point. Chaque heure de marche coûte ainsi 1 point supplémentaire ; chaque round/case en TMR coûte 2 points, etc.

      ","descriptionmj":"","frequence":5,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246352652,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"HYsVo3LM53vAm8Y4","name":"Péage","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, traverser un pont ou pénétrer dans une cité coûte un point de rêve.

      ","descriptionmj":"","frequence":5,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246188111,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"IYfK01ZdAkDZbUS9","name":"Paresse intellectuelle","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Perte de 1 niveau dans une connaissance, à déterminer aléatoirement, y compris les voies de Draconic.

      ","descriptionmj":"","frequence":5,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246201240,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"QcfOUgWT15BCLUvl","name":"Trou noir","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Une case spécifique à déterminer aléatoirement, autre qu’une case humide, disparaît définitivement de la carte des TMR du haut-rêvant. Le joueur est invité à la rayer à l’encre noire, et pratiquement, elle n’existe plus pour son personnage. Si son demi-rêve y entre, considérer le fait comme une sortie de la carte et réinsérer aléatoirement. Si un sort s’y trouvait en réserve, il est purement et simplement annulé.

      ","descriptionmj":"","frequence":5,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246110622,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"Su90PAG4Hea7qoej","name":"Désorientation","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, le haut-rêvant ne peut plus retrouver le chemin d’un certain genre de case sur la carte des TMR. Pratiquement, le genre de case en question n’existe plus pour lui. Si son demi-rêve entre dans l’une de ces cases, considérer le fait comme une sortie de la carte et réinsérer le demi-rêve aléatoirement. Les sorts en réserve sur ces cases ne sont pas annulés, ils redeviennent disponibles à réapparition des cases. S’il s’agit des sanctuaires ou des nécropoles, il faut d’abord attendre leur réapparition en cas de périple.

      ","descriptionmj":"","frequence":5,"hautrevant":true,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246374130,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"YTMaARVXwdy4ssDF","name":"Sommeil sans rêve","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      On ne rêve plus pendant ddr jours, pas même dans les Hautes Terres pour la récupération du rêve.

      ","descriptionmj":"","frequence":5,"hautrevant":false,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246114672,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"YiXBU7qBxR0OnkPS","name":"Débordement","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Une case des TMR à déterminer aléatoirement, autre qu’une case humide, devra dorénavant être maîtrisée à chaque fois comme si elle était précisément une case humide. Cette situation est définitive. La case conserve par ailleurs toute son identité pour le lancer des sorts.

      ","descriptionmj":"","frequence":5,"hautrevant":true,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246383573,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"aBiHdEMLWNZurX3v","name":"Fermeture des cités","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Les 22 cités ferment leurs portes au demi-rêve du haut-rêvant. Celui-ci ne peut plus les traverser ni y accomplir aucune magie tant qu’il ne les a pas reconquises. La conquête d’une cité s’obtient en réussissant points actuels de rêve/Draconic à -9, même règle que pour maîtriser les cases humides. Dès qu’une cité est conquise, elle redevient une case normale. On n’est pas obligé de reconquérir toutes les cités. Si un Tourbillon abandonne le demi-rêve du haut-rêvant dans une cité, celui-ci doit aussitôt tenter de la conquérir. Même chose avec un Passeur ou un Changeur. Un Messager peut par contre entrer librement. Utiliser un Messager est la seule façon de lancer un sort depuis une cité non reconquise.

      ","descriptionmj":"","frequence":5,"hautrevant":true,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246327767,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"cuopXCY54q3nTtBl","name":"Confusion draconique","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Perte de la connaissance d’un sort ou d’un rituel, à déterminer aléatoirement. Le haut-rêvant peut le ré-apprendre par un jet normal de Synthèse, en ne dépensant que la moitié des points de sorts prévus. Les bonus de case dus à l’usage sont perdus.

      ","descriptionmj":"","frequence":5,"hautrevant":true,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246393494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"dArTQtFwTssAyl90","name":"Vieillissement instantané","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Le vieillissement est de 1d7 ans. Jouer un jet de Constitution ajusté négativement au nombre d’années perdues. En cas d’échec, perte définitive d’un point en Constitution.

      ","descriptionmj":"","frequence":5,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246095709,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"nI4sA12n6AdLNv5I","name":"Double résistance du fleuve","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, toute case de fleuve, lac ou marais doit être consécutivement maîtrisée deux fois. Si la seconde fois échoue, la concentration est rompue et il faut recommencer au début.

      ","descriptionmj":"","frequence":5,"hautrevant":true,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246366379,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"yFZ6KkvVQVyCJLua","name":"Montée laborieuse","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, monter dans les TMR coûte 2 points de rêve au lieu d’un, et le déplacement accéléré en coûte 3.

      ","descriptionmj":"","frequence":5,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246219963,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"yczTFUNwqyg0WhsQ","name":"Périple","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Impossibilité d’accomplir aucune magie, sauf le déclenchement d’un sort en réserve, tant que le demi-rêve n’est pas allé se purifier dans chacun des 6 sanctuaires ou dans chacune des 8 nécropoles. Un Passeur ou un Changeur peut aider le haut-rêvant, mais un Messager ne peut y aller à sa place. À chaque fois, la purification s’obtient en réussissant points actuels de rêve/Draconic à -3 pour les sanctuaires ou points actuels de rêve/Draconic à -5 pour les nécropoles. En cas d’échec, même règle que pour maîtriser les cases humides. (Tirer 1d2 : 1 = Périple des sanctuaires ; 2 = Périple des nécropoles.)

      ","descriptionmj":"","frequence":5,"hautrevant":true,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246171126,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"_id":"ykxvi2vohrZPidLK","name":"Perte dans une caractéristique","type":"souffle","flags":{},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      La perte est de 1d7 points et dure ddr jours. Au bout de ce délai, jouer un jet de la caractéristique concernée (originelle) avec une difficulté égale au nombre de points perdus. Réussite = la caractéristique remonte à sa hauteur originelle ; échec = elle remonte à sa hauteur originelle moins 1 point, lequel est définitivement perdu. Déterminer la caractéristique concernée avec 1d12.

      \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
      1Apparence
      2Constitution
      3Force
      4Agilité
      5Dextérité
      6Vue
      7Ouïe
      8Odorat-Goût
      9Volonté
      10Intellect
      11Empathie
      12Rêve
      \n

       

      ","descriptionmj":"","frequence":5,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.2.9","coreVersion":"10.290","createdTime":null,"modifiedTime":1669246162970,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"0wHV3netTtqjw280","name":"Mauvaises rencontres en perspective","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.0wHV3netTtqjw280"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Tirer les ddr prochaines rencontres dans les TMR sur la @Compendium[foundryvtt-reve-de-dragon.tables-diverses.66ye0OOxBO9LEjdd]{Table spéciale de rencontres}

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":false,"duree":"","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639379,"modifiedTime":1673118693560,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"2FDRnIY6Os6JJ27j","name":"Je-m'en-foutisme","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.2FDRnIY6Os6JJ27j"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Perte de 1 niveau dans une compétence déterminée aléatoirement, autre qu’une compétence de combat ou qu’une connaissance.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":4,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639379,"modifiedTime":1673118693560,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"6xvkOytCrp5yDAOs","name":"Non-combativité","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.6xvkOytCrp5yDAOs"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Perte de 1 niveau dans une compétence de combat, à déterminer aléatoirement.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":4,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639379,"modifiedTime":1673118693560,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"8B74cu17PCdqztke","name":"Impraticabilité des ponts","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.8B74cu17PCdqztke"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, les ponts doivent être maîtrisés comme s’ils étaient des cases humides. Ils conservent néanmoins leur identité pour le lancer des sorts.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":true,"duree":"1ddr","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639379,"modifiedTime":1673118693560,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"CVXptnnw75fLx4LK","name":"Queue de dragon perpétuelle","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.CVXptnnw75fLx4LK"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Le personnage est atteint de 7 + ddr queues de Dragon, non pas simultanément, mais l’une après l’autre. Dès que la première prend fin, en tirer une autre; et ainsi de suite jusqu’à ce que toutes les queues aient été appliquées.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":12,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639379,"modifiedTime":1673118693560,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"GNZW6esJ2nCHjfyu","name":"Épuisement","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.GNZW6esJ2nCHjfyu"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, chaque prise de fatigue est augmentée d’un point. Chaque heure de marche coûte ainsi 1 point supplémentaire ; chaque round/case en TMR coûte 2 points, etc.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639379,"modifiedTime":1673118693559,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"HYsVo3LM53vAm8Y4","name":"Péage","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.HYsVo3LM53vAm8Y4"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, traverser un pont ou pénétrer dans une cité coûte un point de rêve.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":false,"duree":"1ddr","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639380,"modifiedTime":1673118693560,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"IYfK01ZdAkDZbUS9","name":"Paresse intellectuelle","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.IYfK01ZdAkDZbUS9"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Perte de 1 niveau dans une connaissance, à déterminer aléatoirement, y compris les voies de Draconic.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639380,"modifiedTime":1673118693560,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"QcfOUgWT15BCLUvl","name":"Trou noir","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.QcfOUgWT15BCLUvl"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Une case spécifique à déterminer aléatoirement, autre qu’une case humide, disparaît définitivement de la carte des TMR du haut-rêvant. Le joueur est invité à la rayer à l’encre noire, et pratiquement, elle n’existe plus pour son personnage. Si son demi-rêve y entre, considérer le fait comme une sortie de la carte et réinsérer aléatoirement. Si un sort s’y trouvait en réserve, il est purement et simplement annulé.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639380,"modifiedTime":1673118693561,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"Su90PAG4Hea7qoej","name":"Désorientation","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.Su90PAG4Hea7qoej"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, le haut-rêvant ne peut plus retrouver le chemin d’un certain genre de case sur la carte des TMR. Pratiquement, le genre de case en question n’existe plus pour lui. Si son demi-rêve entre dans l’une de ces cases, considérer le fait comme une sortie de la carte et réinsérer le demi-rêve aléatoirement. Les sorts en réserve sur ces cases ne sont pas annulés, ils redeviennent disponibles à réapparition des cases. S’il s’agit des sanctuaires ou des nécropoles, il faut d’abord attendre leur réapparition en cas de périple.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":true,"duree":"1ddr","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639380,"modifiedTime":1673118693559,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"YTMaARVXwdy4ssDF","name":"Sommeil sans rêve","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.YTMaARVXwdy4ssDF"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      On ne rêve plus pendant ddr jours, pas même dans les Hautes Terres pour la récupération du rêve.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":false,"duree":"1ddr","restant":0},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639380,"modifiedTime":1673118693561,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"YiXBU7qBxR0OnkPS","name":"Débordement","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.YiXBU7qBxR0OnkPS"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Une case des TMR à déterminer aléatoirement, autre qu’une case humide, devra dorénavant être maîtrisée à chaque fois comme si elle était précisément une case humide. Cette situation est définitive. La case conserve par ailleurs toute son identité pour le lancer des sorts.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":true,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639380,"modifiedTime":1673118693559,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"aBiHdEMLWNZurX3v","name":"Fermeture des cités","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.aBiHdEMLWNZurX3v"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Les 22 cités ferment leurs portes au demi-rêve du haut-rêvant. Celui-ci ne peut plus les traverser ni y accomplir aucune magie tant qu’il ne les a pas reconquises. La conquête d’une cité s’obtient en réussissant points actuels de rêve/Draconic à -9, même règle que pour maîtriser les cases humides. Dès qu’une cité est conquise, elle redevient une case normale. On n’est pas obligé de reconquérir toutes les cités. Si un Tourbillon abandonne le demi-rêve du haut-rêvant dans une cité, celui-ci doit aussitôt tenter de la conquérir. Même chose avec un Passeur ou un Changeur. Un Messager peut par contre entrer librement. Utiliser un Messager est la seule façon de lancer un sort depuis une cité non reconquise.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":true,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639380,"modifiedTime":1673118693559,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"cuopXCY54q3nTtBl","name":"Confusion draconique","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.cuopXCY54q3nTtBl"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Perte de la connaissance d’un sort ou d’un rituel, à déterminer aléatoirement. Le haut-rêvant peut le ré-apprendre par un jet normal de Synthèse, en ne dépensant que la moitié des points de sorts prévus. Les bonus de case dus à l’usage sont perdus.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":true,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639380,"modifiedTime":1673118693559,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"dArTQtFwTssAyl90","name":"Vieillissement instantané","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.dArTQtFwTssAyl90"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Le vieillissement est de 1d7 ans. Jouer un jet de Constitution ajusté négativement au nombre d’années perdues. En cas d’échec, perte définitive d’un point en Constitution.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":false,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639381,"modifiedTime":1673118693561,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"nI4sA12n6AdLNv5I","name":"Double résistance du fleuve","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.nI4sA12n6AdLNv5I"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, toute case de fleuve, lac ou marais doit être consécutivement maîtrisée deux fois. Si la seconde fois échoue, la concentration est rompue et il faut recommencer au début.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":true,"duree":"1ddr","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639381,"modifiedTime":1673118693559,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"yFZ6KkvVQVyCJLua","name":"Montée laborieuse","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.yFZ6KkvVQVyCJLua"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Pendant ddr jours, monter dans les TMR coûte 2 points de rêve au lieu d’un, et le déplacement accéléré en coûte 3.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":false,"duree":"1ddr","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639381,"modifiedTime":1673118693560,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"yczTFUNwqyg0WhsQ","name":"Périple","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.yczTFUNwqyg0WhsQ"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      Impossibilité d’accomplir aucune magie, sauf le déclenchement d’un sort en réserve, tant que le demi-rêve n’est pas allé se purifier dans chacun des 6 sanctuaires ou dans chacune des 8 nécropoles. Un Passeur ou un Changeur peut aider le haut-rêvant, mais un Messager ne peut y aller à sa place. À chaque fois, la purification s’obtient en réussissant points actuels de rêve/Draconic à -3 pour les sanctuaires ou points actuels de rêve/Draconic à -5 pour les nécropoles. En cas d’échec, même règle que pour maîtriser les cases humides. (Tirer 1d2 : 1 = Périple des sanctuaires ; 2 = Périple des nécropoles.)

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":true,"duree":"","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639381,"modifiedTime":1673118693560,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"_id":"ykxvi2vohrZPidLK","name":"Perte dans une caractéristique","type":"souffle","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.souffles-de-dragon.ykxvi2vohrZPidLK"}},"img":"systems/foundryvtt-reve-de-dragon/icons/souffle_dragon.webp","system":{"description":"

      La perte est de 1d7 points et dure ddr jours. Au bout de ce délai, jouer un jet de la caractéristique concernée (originelle) avec une difficulté égale au nombre de points perdus. Réussite = la caractéristique remonte à sa hauteur originelle ; échec = elle remonte à sa hauteur originelle moins 1 point, lequel est définitivement perdu. Déterminer la caractéristique concernée avec 1d12.

      \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
      1Apparence
      2Constitution
      3Force
      4Agilité
      5Dextérité
      6Vue
      7Ouïe
      8Odorat-Goût
      9Volonté
      10Intellect
      11Empathie
      12Rêve
      \n

       

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"frequence":5,"hautrevant":false,"duree":"1ddr","restant":0,"refoulement":null},"ownership":{"default":0,"jOzRscDxoXZWpGS6":3},"effects":[],"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1673049639381,"modifiedTime":1673118693560,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} diff --git a/template.json b/template.json index 94f48e62..0ce477f8 100644 --- a/template.json +++ b/template.json @@ -568,11 +568,11 @@ "temporel": { "temporel": { "debut": { - "indexDate": 0, + "indexDate": -1, "indexMinute": 0 }, "fin": { - "indexDate": 0, + "indexDate": -1, "indexMinute": 0 } } diff --git a/templates/common/periodicite.hbs b/templates/common/periodicite.hbs new file mode 100644 index 00000000..ff23675a --- /dev/null +++ b/templates/common/periodicite.hbs @@ -0,0 +1,9 @@ + +
      + + +
      diff --git a/templates/common/timestamp.hbs b/templates/common/timestamp.hbs index 75cbd402..2aa19b6a 100644 --- a/templates/common/timestamp.hbs +++ b/templates/common/timestamp.hbs @@ -14,6 +14,7 @@
      +
      +
      + {{>"systems/foundryvtt-reve-de-dragon/templates/common/periodicite.hbs" system.periode path='system.periode' label='Périodicité'}} +
      diff --git a/templates/item-poison-sheet.html b/templates/item-poison-sheet.html index 01073ced..e3fb5618 100644 --- a/templates/item-poison-sheet.html +++ b/templates/item-poison-sheet.html @@ -29,6 +29,9 @@
      +
      + {{>"systems/foundryvtt-reve-de-dragon/templates/common/periodicite.hbs" system.periode path='system.periode' label='Périodicité'}} +
      From 3782ed9055339b32524b9bfe98cdec2ea47cdffc Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sat, 7 Jan 2023 23:58:33 +0100 Subject: [PATCH 10/14] Gestion d'update de timestamp --- module/item-sheet.js | 8 +++++++- module/rdd-timestamp.js | 27 +++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/module/item-sheet.js b/module/item-sheet.js index ca15056a..c5f96b64 100644 --- a/module/item-sheet.js +++ b/module/item-sheet.js @@ -186,7 +186,7 @@ export class RdDItemSheet extends ItemSheet { const jour = Number(this.html.find('input.date-enchantement[name="enchantement.jour"]').val()); const mois = RdDTimestamp.definition(this.html.find('select.date-enchantement[name="enchantement.mois"]').val()); const indexDate = game.system.rdd.calendrier.getIndexFromDate(jour, mois.heure); - this.item.update({'system.prdate': indexDate}); + this.item.update({ 'system.prdate': indexDate }); console.warn(`Date d'enchantement modifiée ${jour}/${mois.heure}: ${indexDate}`) }); @@ -212,6 +212,11 @@ export class RdDItemSheet extends ItemSheet { this.html.find('.item-vendre').click(async event => RdDSheetUtility.getItem(event, this.actor)?.proposerVente()); this.html.find('.item-montrer').click(async event => RdDSheetUtility.getItem(event, this.actor)?.postItemToChat()); this.html.find('.item-action').click(async event => RdDSheetUtility.getItem(event, this.actor)?.actionPrincipale(this.actor, async () => this.render(true))); + + const updateItemTimestamp = (path, timestamp) => this.item.update({ [path]: duplicate(timestamp) }) + + RdDTimestamp.handleTimestampEditor(this.html, 'system.temporel.debut', updateItemTimestamp); + RdDTimestamp.handleTimestampEditor(this.html, 'system.temporel.fin', updateItemTimestamp); } _getEventActor(event) { @@ -220,6 +225,7 @@ export class RdDItemSheet extends ItemSheet { return actor; } + /* -------------------------------------------- */ async _onSelectCategorie(event) { event.preventDefault(); diff --git a/module/rdd-timestamp.js b/module/rdd-timestamp.js index a9941b73..456f0141 100644 --- a/module/rdd-timestamp.js +++ b/module/rdd-timestamp.js @@ -86,6 +86,7 @@ export class RdDTimestamp { static formulesDuree() { return FORMULES_DUREE } + static formulesPeriode() { return FORMULES_PERIODE } @@ -98,6 +99,32 @@ export class RdDTimestamp { return `${signe.label}` } + static handleTimestampEditor(html, path, consumeTimestamp = async (path, timestamp) => {}) { + const fields = { + annee: html.find(`input[name="${path}.annee"]`), + mois: html.find(`select[name="${path}.mois"]`), + jourDuMois: html.find(`input[name="${path}.jourDuMois"]`), + heure: html.find(`select[name="${path}.heure"]`), + minute: html.find(`input[name="${path}.minute"]`) + }; + + async function onChangeTimestamp(fields, path) { + const annee = Number(fields.annee.val()); + const mois = fields.mois.val(); + const jour = Number(fields.jourDuMois.val()); + const heure = fields.heure.val(); + const minute = Number(fields.minute.val()); + await consumeTimestamp(path, RdDTimestamp.timestamp(annee, mois, jour, heure, minute)); + } + + fields.annee.change(async (event) => await onChangeTimestamp(fields, path)); + fields.mois.change(async (event) => await onChangeTimestamp(fields, path)); + fields.jourDuMois.change(async (event) => await onChangeTimestamp(fields, path)); + fields.heure.change(async (event) => await onChangeTimestamp(fields, path)); + fields.minute.change(async (event) => await onChangeTimestamp(fields, path)); + } + + static findHeure(heure) { heure = Grammar.toLowerCaseNoAccentNoSpace(heure); let parHeureOuLabel = DEFINITION_HEURES.filter(it => (it.heure) == parseInt(heure) % RDD_HEURES_PAR_JOUR || Grammar.toLowerCaseNoAccentNoSpace(it.label) == heure); From cf340f73f18ea010ff02ab33cb9aa1b93bcbaf8a Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sun, 8 Jan 2023 00:57:05 +0100 Subject: [PATCH 11/14] Migration maladies et poisons MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Séparation de l'incubation / la périodicité --- module/migrations.js | 47 ++++++++++++++++++++++++++ module/rdd-timestamp.js | 8 ++--- packs/maladies-et-poisons.db | 56 +++++++++++++++---------------- template.json | 2 ++ templates/item-maladie-sheet.html | 4 +-- templates/item-poison-sheet.html | 4 +-- 6 files changed, 85 insertions(+), 36 deletions(-) diff --git a/module/migrations.js b/module/migrations.js index 9a553f80..b8c0bbd5 100644 --- a/module/migrations.js +++ b/module/migrations.js @@ -4,6 +4,7 @@ import { Environnement } from "./environnement.js"; import { Grammar } from "./grammar.js"; import { Monnaie } from "./item-monnaie.js"; import { RdDItem } from "./item.js"; +import { RdDTimestamp } from "./rdd-timestamp.js"; class Migration { get code() { return "sample"; } @@ -368,6 +369,51 @@ class _10_4_6_ServicesEnCommerces extends Migration { return itemToCreate; } } +class _10_5_0_UpdatePeriodicite extends Migration { + get code() { return "migration-periodicite-poisons-maladies"; } + get version() { return "10.5.0"; } + + async migrate() { + await this.applyItemsUpdates(items => this._updatePeriodicite(items)); + } + + _updatePeriodicite(items) { + return items.filter(it => ['poison', 'maladie'].includes(it.type)) + .filter(it => it.system.periodicite != "") + .map(it => { + let [incubation, periodicite] = this.getPeriodicite(it); + const periode = periodicite.split(' '); + let unite = periode.length == 2 + ? RdDTimestamp.formulesPeriode().find(it => Grammar.includesLowerCaseNoAccent(periode[1], it.code))?.code + : undefined + if (unite && Number(periode[0])) { + return { + _id: it.id, + 'system.periodicite': undefined, + 'system.incubation': incubation, + 'system.periode.nombre': Number.parseInt(periode[0]), + 'system.periode.unite': unite + }; + } + else { + return { + _id: it.id, + 'system.periodicite': undefined, + 'system.incubation': it.system.periodicite + }; + } + }).filter(it => it != undefined); + } + + getPeriodicite(it) { + let p = it.system.periodicite.split(/[\/\\]/); + switch (p.length) { + case 2: return [p[0].trim(), p[1].trim()]; + case 1: return ["", it.system.periodicite.trim()]; + default: return [it.system.periodicite.trim(), ""]; + } + } +} export class Migrations { static getMigrations() { @@ -383,6 +429,7 @@ export class Migrations { new _10_3_0_FrequenceEnvironnement(), new _10_3_17_Monnaies(), new _10_4_6_ServicesEnCommerces(), + new _10_5_0_UpdatePeriodicite(), ]; } diff --git a/module/rdd-timestamp.js b/module/rdd-timestamp.js index 456f0141..37ec8504 100644 --- a/module/rdd-timestamp.js +++ b/module/rdd-timestamp.js @@ -40,10 +40,10 @@ const FORMULES_DUREE = [ // { code: "special", label: "Spéciale", calcul: async (t, actor) => t.addJours(100 * RDD_JOURS_PAR_AN) }, ] const FORMULES_PERIODE = [ - { code: 'rounds', label: "Rounds", calcul: async (t, nombre) => t.addMinutes(nombre / 10) }, - { code: 'minutes', label: "Minutes", calcul: async (t, nombre) => t.addMinutes(nombre) }, - { code: 'heures', label: "Heures", calcul: async (t, nombre) => t.addHeures(nombre) }, - { code: 'jours', label: "Jours", calcul: async (t, nombre) => t.addJours(nombre) }, + { code: 'round', label: "Rounds", calcul: async (t, nombre) => t.addMinutes(nombre / 10) }, + { code: 'minute', label: "Minutes", calcul: async (t, nombre) => t.addMinutes(nombre) }, + { code: 'heure', label: "Heures", calcul: async (t, nombre) => t.addHeures(nombre) }, + { code: 'jour', label: "Jours", calcul: async (t, nombre) => t.addJours(nombre) }, ] export class RdDTimestamp { diff --git a/packs/maladies-et-poisons.db b/packs/maladies-et-poisons.db index 3e7edc66..d372243e 100644 --- a/packs/maladies-et-poisons.db +++ b/packs/maladies-et-poisons.db @@ -1,28 +1,28 @@ -{"name":"Mal glauque","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.0S9GCJskJQaYEuXz"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"0S9GCJskJQaYEuXz","system":{"description":"

      Le mal glauque est une maladie due à la famine.

      \n

      Il peut être contracté en conséquence d’un jeûne prolongé ou d’une malnutrition chronique. Ses symptômes sont de violents maux de tête accompagnés d’hallucinations auditives où le malade croit entendre le bruit de la mer. À mesure que le mal progresse, la peau du malade prend une couleur plombée, puis carrément verdâtre, cependant que dans sa tête, le bruit de la mer atteint des mugissements de tempête.

      \n

      La perte de chaque point de vie s’accompagne de celle d’un point d’EMPATHIE. Une fois la maladie éliminée, ces points sont regagnés de la même manière que les points de VUE de la fièvre brune (sauf qu’il n’y a pas d’équivalent de la solimonce). Il faut enfin noter qu’aucun remède ne peut être efficace tant que l’alimentation n’est pas redevenue normale.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":8,"periodicite":"12 heures","periode":{"unite":"heures","nombre":12},"remedesconnus":false,"remedes":"-6 \\ Topazoïne +16, Élixir des Gnomes +14","dommages":"1 pt de Vie et 1 pt d'Empathie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299815,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Nanar","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.4zOQxOMwgAxxd2MV"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"4zOQxOMwgAxxd2MV","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":2,"periodicite":"2 minutes","periode":{"unite":"minutes","nombre":2},"remedesconnus":false,"remedes":"-3/ Teinture d’Érozonne +16, Lait de lune +12.","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299815,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Fièvre blanche","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.AWarJ2i12lEOdyiM"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"AWarJ2i12lEOdyiM","system":{"description":"

      La fièvre blanche est une fièvre infectieuse, mortelle, qui accompagne souvent les blessures graves.

      \n

      Elle se caractérise par un rapide affaiblissement général accompagné de délire. Tout autour de la blessure, la chair devient blanche et purulente.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"8 heures","periode":{"unite":"heures","nombre":8},"remedesconnus":false,"remedes":"-5 \\ Sable-Poudre +15, Tournegraisse +10","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299816,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Ossiphage","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.HB057aVUY1GylYxw"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"HB057aVUY1GylYxw","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"3 rounds","periode":{"unite":"rounds","nombre":3},"remedesconnus":false,"remedes":"-5/ Perle de Bjwal +10, Huile de Sélikanthe +6","dommages":"4 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299816,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Venin paralysant de goule","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.IF19EUvrY1HL87lr"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"IF19EUvrY1HL87lr","system":{"description":"

      Venin inoculé par une morsure de goule.

      \n

      La paralysie intervient quand toutes les lignes de fatigue sont pleines et dure 6 heures.

      \n

      Le floume-dhu est obtenu en mélangeant en quantités égales gelée de floumette et lait humain (pour une dose : une demi-mesure de chaque).

      \n

      Puis chauffer le mélange jusqu’à couleur bleu-sangue (-2).

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"1 round","periode":{"unite":"rounds","nombre":1},"remedesconnus":false,"remedes":"-4 \\ Floume-dhu +16","dommages":"1 ligne de fatigue"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718053,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Blèmissure","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.JYMeJz8mxyI2oYIj"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"JYMeJz8mxyI2oYIj","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-4/ Élixir des Gnomes +14, Huile de Sélikanthe +10.","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Fesse de groin","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.LkDe57PbpOIshhMI"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"LkDe57PbpOIshhMI","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-3/ Bitume de Camphre +16, Élixir des Gnomes +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Nécrophase","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.MImC24IVo96y7r7p"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"MImC24IVo96y7r7p","system":{"description":"

      La Nécrophase est une horrible maladie contractée suite à une morsure de Rananècre. 

      \n

      Tout autour de la blessure, la chair s’enfle, vire au noir et se putréfie, puis l’ensemble du corps est gagné peu à peu.

      \n

      Si la mort survient, elle donne naissance à une entité de cauchemar non incarnée ayant le même nombre de points de rêve que la caractéristique RÊVE de la victime.

      \n

      Tirer 1d2 : 1 = haine ; 2 = désespoir.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":7,"periodicite":"1 heure","periode":{"unite":"heures","nombre":1},"remedesconnus":false,"remedes":"-4 \\ Tournegraisse +16 Huile de Sélikanthe +6","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Arrache-rêve","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Rl5jadqNYTxzn6Ns"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Rl5jadqNYTxzn6Ns","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"4 rounds","periode":{"unite":"rounds","nombre":4},"remedesconnus":false,"remedes":"-3/ Tournegraisse +14, Perle de Bjwal +12","dommages":"4 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Salsimir à points verts","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Rx2nQjwaCa5s38Tm"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Rx2nQjwaCa5s38Tm","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":1,"periodicite":"5 minutes","periode":{"unite":"minutes","nombre":5},"remedesconnus":false,"remedes":"-5/ Lait de lune +14, Gelée royale +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Énervure","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.SlfTPRdCC9t3o9ai"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"SlfTPRdCC9t3o9ai","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-3/ Tournegraisse +14, Mirobolant +10","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Crétamère","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.WBmXlsa3Wt2AN952"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"WBmXlsa3Wt2AN952","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"3 minutes","periode":{"unite":"minutes","nombre":3},"remedesconnus":false,"remedes":"-3/ Lait de lune +12, Gelée royale +8","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299819,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Ortilise","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.X8vVqbK5pjuxQwBF"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"X8vVqbK5pjuxQwBF","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-3/ Topazoïne +12, Lait de lune +8","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299819,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Croupigne","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Zsodttv3S6OPTJL4"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Zsodttv3S6OPTJL4","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":2,"periodicite":"5 minutes","periode":{"unite":"minutes","nombre":5},"remedesconnus":false,"remedes":"-3/ Élixir des Gnomes +16, Gelée royale +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Acrève","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.aTzSlu5leo4JJypZ"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"aTzSlu5leo4JJypZ","system":{"description":"

      L’acrève est une mortelle infection pulmonaire, due à un brusque refroidissement.

      \n

      Ses symptômes sont l’apparition de sueurs et de tremblements, bientôt suivis d’une toux de plus en plus douloureuse. Puis le malade se met à cracher du sang.

      \n

      La première période indiquée est celle de l’incubation, la seconde est la périodicité normale.

      \n

      Tant que le malade n’a subi aucun dommage, utiliser la période d’incubation (2 heures) ; puis dès qu’il a perdu ses deux premiers points de vie, utiliser la périodicité normale (5 heures).

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"2 heures / 5 heures","periode":{"unite":"heures","nombre":5},"remedesconnus":false,"remedes":"-4 \\ Gelée royale +14, Huile de Sélikanthe +10","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718048,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Ortironce","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.bEDPtCAlJwmoZx5p"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"bEDPtCAlJwmoZx5p","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"1 minute","periode":{"unite":"","nombre":0},"remedesconnus":false,"remedes":"-3/ Bitume de Camphre +12, Teinture d’Érozonne +8","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Venin de chrasme","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.cFMUtU6LZG0mKeDl"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"cFMUtU6LZG0mKeDl","system":{"description":"

      Venin du chrasme. 

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-2 \\ Liqueur de Bagdol +16 Teinture d’Érozonne +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718052,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Téthanatos","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.fMukHi1h4lU84XQR"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"fMukHi1h4lU84XQR","system":{"description":"

      Le téthanatos est un mal mortel, usuellement transmis par les blessures causées par les objets souillés, comme par exemple les armes des Groins. 

      \n

      Ses symptomes sont une forte fièvre  et l'apparition progressive de plaques noires,  accompagnées d'une odeur nauséabonde.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":7,"periodicite":"6 heures","periode":{"unite":"heures","nombre":6},"remedesconnus":false,"remedes":"-3\\ Bitume de Camphre +12, Mirobolant +8","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718052,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Venin de scologriffe","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.iwlN0bNJ5XNNfjgj"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"iwlN0bNJ5XNNfjgj","system":{"description":"

      Venin du scologriffe. Il provoque une sensation aiguë de déséquilibre.

      \n

      Jouer VOLONTÉ à -3. En cas d’échec, on chute sans parvenir à se relever.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-3 \\ Liqueur de Bagdol +16 Topazoïne +8","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718052,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Genèfle","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.jl0MvAcVRo63LWg3"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"jl0MvAcVRo63LWg3","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":1,"periodicite":"10 minutes","periode":{"unite":"minutes","nombre":10},"remedesconnus":false,"remedes":"-3/ Teinture d’Érozonne +16, Topazoïne +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Venin de vipère jaune","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.lUeNPc0ECKqHglbG"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"lUeNPc0ECKqHglbG","system":{"description":"

      Venin de la vipère jaune. Il provoque des spasmes musculaires.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":2,"periodicite":"6 rounds","periode":{"unite":"rounds","nombre":6},"remedesconnus":false,"remedes":"-3\\ Liqueur de Bagdol +14, Topazoïne +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718052,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Fièvre brune","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.nyruCPiWDd8Scv44"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"nyruCPiWDd8Scv44","system":{"description":"

      La fièvre brune est une fièvre mortelle véhiculée par les moustiques de certains marais. Outre un affaiblissement général, elle provoque la cécité.

      \n

      Ses symptômes progressifs consistent en hallucinations de taches brunes, puis en saignement des yeux, jusqu’à la cécité complète qui précède la mort.

      \n

      La première période indiquée est celle de l’incubation, la seconde est la périodicité normale. Tant que le malade n’a subi aucun dommage, utiliser la période d’incubation (1 heure) ; puis dès qu’il a perdu un premier point de vie, utiliser la périodicité normale (6 heures).

      \n

      Les points de VUE perdus ne peuvent être regagnés que quand la maladie est entièrement guérie. À chaque point de vie regagné, jouer un jet de CONSTITUTION ajusté négativement par les points de vie toujours manquants. Puis selon le résultat:

      \n
        \n
      • Particulière                              Regain de 2 points de VUE
      • \n
      • Normale et significative      Regain de 1 point de VUE
      • \n
      • Échec et Échec particulier  Aucun regain
      • \n
      • Échec total                                Aggravation, re-perte d’un point de VUE
      • \n
      \n

      Si tous les points de vie ont été regagnés et qu’il manque toujours un ou plusieurs points de VUE, jouer un jet de CONSTITUTION à zéro toutes les 12 heures, et appliquer les mêmes résultats que ci-dessus.

      \n

      Une potion d’herbes de soin enchantée peut faire regagner tous les points de vie une fois la maladie guérie, mais ne fait pas regagner les points de VUE perdus. Si le malade est devenu entièrement aveugle au cours de sa maladie, c’est-à-dire si sa VUE est tombée à zéro, il perd définitivement un point de VUE. Quand il regagnera ses points de VUE, il les regagnera tous moins un.

      \n

      Bains de solimonce

      \n

      Une décoction de feuilles de solimonce (voir Herbes, p336) utilisée en bains d’yeux donne un bonus de +4 au jet de CONSTITUTION pour le regain des points de VUE.

      \n

      La décoction se prépare comme une décoction d’herbes de soin. Pour baigner les deux yeux, il en faut 10 brins. Le bain doit durer 60 minutes (pour les deux yeux), puis les yeux doivent être tenus à l’abri de la lumière pendant un minimum de 3 heures. Le mieux est de les fermer et de dormir. Un bain d’yeux n’est valable que pour un seul jet de CONSTITUTION.

      \n

      Dans tous les cas, la fréquence des jets est toutes les 12 heures. La décoction de solimonce n’étant jamais bue, un enchantement ne lui confère rien de plus. La solimonce ne guérit pas la fièvre brune et ne peut avoir d’effet que quand la maladie est entièrement guérie.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"1 heure \\ 6 heures","periode":{"unite":"heures","nombre":6},"remedesconnus":false,"remedes":"-4 \\ Élixir des Gnomes +14, Bitume de Camphre +10","dommages":"1 pt de Vie et 1 pt de Vue"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Bousille","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.qE4IEazgBeRs4uE0"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"qE4IEazgBeRs4uE0","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":5,"periodicite":"6 rounds","periode":{"unite":"rounds","nombre":6},"remedesconnus":false,"remedes":"-4/ Teinture d’Érozonne +10, Topazoïne +6","dommages":"3 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Hécatombe","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.sSgu1FYK1s1vZinT"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"sSgu1FYK1s1vZinT","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"1 minute","periode":{"unite":"minutes","nombre":1},"remedesconnus":false,"remedes":"-5/ Bitume de Camphre +12, Mirobolant +6","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Amanite thanataire","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.sriGtgt3FQkc642z"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"sriGtgt3FQkc642z","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":7,"periodicite":"3 rounds","periode":{"unite":"rounds","nombre":3},"remedesconnus":false,"remedes":"-3/ Tournegraisse +12, Perle de Bjwal +10","dommages":"4 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673124718048,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Cheleuse","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.tpzD5959gxuIcTir"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"tpzD5959gxuIcTir","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":1,"periodicite":"5 minutes","periode":{"unite":"minutes","nombre":5},"remedesconnus":false,"remedes":"-3/ Liqueur de Bagdol +16, Mirobolant +14","dommages":"1 pt de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673124718049,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Venin d'araflate","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.v7yZidE9mObKO566"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"v7yZidE9mObKO566","system":{"description":"

      Venin de l'araflate. Sa morsure inflige un venin anesthésiant, inoculé sur toute blessure sauf contusion\\ éraflure.

      \n

      Chaque perte d’endurance s’accompagne de la fatigue équivalente. À zéro d’endurance, la victime est paralysée et ne peut plus faire un geste.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"1 round","periode":{"unite":"rounds","nombre":1},"remedesconnus":false,"remedes":"-3 \\ Liqueur de Bagdol +12 Lait de lune +6","dommages":"1d6 pts d'endurance"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673124718052,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} -{"name":"Fumebol","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.xzCBr3FiSk1WewcT"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"xzCBr3FiSk1WewcT","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":5,"periodicite":"8 rounds","periode":{"unite":"rounds","nombre":8},"remedesconnus":false,"remedes":"-5/ Sable-Poudre +12, Huile de Sélikanthe +8.","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673124718050,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Mal glauque","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.0S9GCJskJQaYEuXz"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"0S9GCJskJQaYEuXz","system":{"description":"

      Le mal glauque est une maladie due à la famine.

      \n

      Il peut être contracté en conséquence d’un jeûne prolongé ou d’une malnutrition chronique. Ses symptômes sont de violents maux de tête accompagnés d’hallucinations auditives où le malade croit entendre le bruit de la mer. À mesure que le mal progresse, la peau du malade prend une couleur plombée, puis carrément verdâtre, cependant que dans sa tête, le bruit de la mer atteint des mugissements de tempête.

      \n

      La perte de chaque point de vie s’accompagne de celle d’un point d’EMPATHIE. Une fois la maladie éliminée, ces points sont regagnés de la même manière que les points de VUE de la fièvre brune (sauf qu’il n’y a pas d’équivalent de la solimonce). Il faut enfin noter qu’aucun remède ne peut être efficace tant que l’alimentation n’est pas redevenue normale.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":8,"periodicite":"12 heures","incubation":"","periode":{"unite":"heure","nombre":12},"remedesconnus":false,"remedes":"-6 \\ Topazoïne +16, Élixir des Gnomes +14","dommages":"1 pt de Vie et 1 pt d'Empathie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299815,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Nanar","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.4zOQxOMwgAxxd2MV"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"4zOQxOMwgAxxd2MV","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":2,"periodicite":"2 minutes","incubation":"","periode":{"unite":"minute","nombre":2},"remedesconnus":false,"remedes":"-3/ Teinture d’Érozonne +16, Lait de lune +12.","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299815,"modifiedTime":1673135772494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Fièvre blanche","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.AWarJ2i12lEOdyiM"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"AWarJ2i12lEOdyiM","system":{"description":"

      La fièvre blanche est une fièvre infectieuse, mortelle, qui accompagne souvent les blessures graves.

      \n

      Elle se caractérise par un rapide affaiblissement général accompagné de délire. Tout autour de la blessure, la chair devient blanche et purulente.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"8 heures","incubation":"","periode":{"unite":"heure","nombre":8},"remedesconnus":false,"remedes":"-5 \\ Sable-Poudre +15, Tournegraisse +10","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299816,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Ossiphage","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.HB057aVUY1GylYxw"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"HB057aVUY1GylYxw","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"3 rounds","incubation":"","periode":{"unite":"round","nombre":3},"remedesconnus":false,"remedes":"-5/ Perle de Bjwal +10, Huile de Sélikanthe +6","dommages":"4 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299816,"modifiedTime":1673135772494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Venin paralysant de goule","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.IF19EUvrY1HL87lr"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"IF19EUvrY1HL87lr","system":{"description":"

      Venin inoculé par une morsure de goule.

      \n

      La paralysie intervient quand toutes les lignes de fatigue sont pleines et dure 6 heures.

      \n

      Le floume-dhu est obtenu en mélangeant en quantités égales gelée de floumette et lait humain (pour une dose : une demi-mesure de chaque).

      \n

      Puis chauffer le mélange jusqu’à couleur bleu-sangue (-2).

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"1 round","incubation":"","periode":{"unite":"round","nombre":1},"remedesconnus":false,"remedes":"-4 \\ Floume-dhu +16","dommages":"1 ligne de fatigue"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673135772495,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Blèmissure","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.JYMeJz8mxyI2oYIj"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"JYMeJz8mxyI2oYIj","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"1 minute","incubation":"","periode":{"unite":"minute","nombre":1},"remedesconnus":false,"remedes":"-4/ Élixir des Gnomes +14, Huile de Sélikanthe +10.","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673135772492,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Fesse de groin","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.LkDe57PbpOIshhMI"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"LkDe57PbpOIshhMI","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","incubation":"","periode":{"unite":"minute","nombre":1},"remedesconnus":false,"remedes":"-3/ Bitume de Camphre +16, Élixir des Gnomes +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Nécrophase","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.MImC24IVo96y7r7p"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"MImC24IVo96y7r7p","system":{"description":"

      La Nécrophase est une horrible maladie contractée suite à une morsure de Rananècre. 

      \n

      Tout autour de la blessure, la chair s’enfle, vire au noir et se putréfie, puis l’ensemble du corps est gagné peu à peu.

      \n

      Si la mort survient, elle donne naissance à une entité de cauchemar non incarnée ayant le même nombre de points de rêve que la caractéristique RÊVE de la victime.

      \n

      Tirer 1d2 : 1 = haine ; 2 = désespoir.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":7,"periodicite":"1 heure","incubation":"","periode":{"unite":"heure","nombre":1},"remedesconnus":false,"remedes":"-4 \\ Tournegraisse +16 Huile de Sélikanthe +6","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673135772494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Arrache-rêve","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Rl5jadqNYTxzn6Ns"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Rl5jadqNYTxzn6Ns","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"4 rounds","incubation":"","periode":{"unite":"round","nombre":4},"remedesconnus":false,"remedes":"-3/ Tournegraisse +14, Perle de Bjwal +12","dommages":"4 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673135772492,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Salsimir à points verts","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Rx2nQjwaCa5s38Tm"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Rx2nQjwaCa5s38Tm","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":1,"periodicite":"5 minutes","incubation":"","periode":{"unite":"minute","nombre":5},"remedesconnus":false,"remedes":"-5/ Lait de lune +14, Gelée royale +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673135772494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Énervure","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.SlfTPRdCC9t3o9ai"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"SlfTPRdCC9t3o9ai","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","incubation":"","periode":{"unite":"minute","nombre":1},"remedesconnus":false,"remedes":"-3/ Tournegraisse +14, Mirobolant +10","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299818,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Crétamère","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.WBmXlsa3Wt2AN952"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"WBmXlsa3Wt2AN952","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"3 minutes","incubation":"","periode":{"unite":"minute","nombre":3},"remedesconnus":false,"remedes":"-3/ Lait de lune +12, Gelée royale +8","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299819,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Ortilise","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.X8vVqbK5pjuxQwBF"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"X8vVqbK5pjuxQwBF","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","incubation":"","periode":{"unite":"minute","nombre":1},"remedesconnus":false,"remedes":"-3/ Topazoïne +12, Lait de lune +8","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299819,"modifiedTime":1673135772494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Croupigne","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.Zsodttv3S6OPTJL4"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"Zsodttv3S6OPTJL4","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":2,"periodicite":"5 minutes","incubation":"","periode":{"unite":"minute","nombre":5},"remedesconnus":false,"remedes":"-3/ Élixir des Gnomes +16, Gelée royale +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Acrève","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.aTzSlu5leo4JJypZ"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"aTzSlu5leo4JJypZ","system":{"description":"

      L’acrève est une mortelle infection pulmonaire, due à un brusque refroidissement.

      \n

      Ses symptômes sont l’apparition de sueurs et de tremblements, bientôt suivis d’une toux de plus en plus douloureuse. Puis le malade se met à cracher du sang.

      \n

      La première période indiquée est celle de l’incubation, la seconde est la périodicité normale.

      \n

      Tant que le malade n’a subi aucun dommage, utiliser la période d’incubation (2 heures) ; puis dès qu’il a perdu ses deux premiers points de vie, utiliser la périodicité normale (5 heures).

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"2 heures / 5 heures","incubation":"2 heures","periode":{"unite":"heure","nombre":5},"remedesconnus":false,"remedes":"-4 \\ Gelée royale +14, Huile de Sélikanthe +10","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673135772492,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Ortironce","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.bEDPtCAlJwmoZx5p"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"bEDPtCAlJwmoZx5p","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"1 minute","incubation":"","periode":{"unite":"minute","nombre":1},"remedesconnus":false,"remedes":"-3/ Bitume de Camphre +12, Teinture d’Érozonne +8","dommages":"2 pts de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673135772494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Venin de chrasme","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.cFMUtU6LZG0mKeDl"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"cFMUtU6LZG0mKeDl","system":{"description":"

      Venin du chrasme. 

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","incubation":"","periode":{"unite":"minute","nombre":1},"remedesconnus":false,"remedes":"-2 \\ Liqueur de Bagdol +16 Teinture d’Érozonne +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673135772494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Téthanatos","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.fMukHi1h4lU84XQR"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"fMukHi1h4lU84XQR","system":{"description":"

      Le téthanatos est un mal mortel, usuellement transmis par les blessures causées par les objets souillés, comme par exemple les armes des Groins. 

      \n

      Ses symptomes sont une forte fièvre  et l'apparition progressive de plaques noires,  accompagnées d'une odeur nauséabonde.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":7,"periodicite":"6 heures","incubation":"","periode":{"unite":"heure","nombre":6},"remedesconnus":false,"remedes":"-3\\ Bitume de Camphre +12, Mirobolant +8","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673135772494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Venin de scologriffe","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.iwlN0bNJ5XNNfjgj"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"iwlN0bNJ5XNNfjgj","system":{"description":"

      Venin du scologriffe. Il provoque une sensation aiguë de déséquilibre.

      \n

      Jouer VOLONTÉ à -3. En cas d’échec, on chute sans parvenir à se relever.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":3,"periodicite":"1 minute","incubation":"","periode":{"unite":"minute","nombre":1},"remedesconnus":false,"remedes":"-3 \\ Liqueur de Bagdol +16 Topazoïne +8","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673135772494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Genèfle","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.jl0MvAcVRo63LWg3"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"jl0MvAcVRo63LWg3","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":1,"periodicite":"10 minutes","incubation":"","periode":{"unite":"minute","nombre":10},"remedesconnus":false,"remedes":"-3/ Teinture d’Érozonne +16, Topazoïne +12","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Venin de vipère jaune","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.lUeNPc0ECKqHglbG"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"lUeNPc0ECKqHglbG","system":{"description":"

      Venin de la vipère jaune. Il provoque des spasmes musculaires.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":2,"periodicite":"6 rounds","incubation":"","periode":{"unite":"round","nombre":6},"remedesconnus":false,"remedes":"-3\\ Liqueur de Bagdol +14, Topazoïne +10","dommages":"1 pt de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673135772494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Fièvre brune","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.nyruCPiWDd8Scv44"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/maladie.webp","effects":[],"_id":"nyruCPiWDd8Scv44","system":{"description":"

      La fièvre brune est une fièvre mortelle véhiculée par les moustiques de certains marais. Outre un affaiblissement général, elle provoque la cécité.

      \n

      Ses symptômes progressifs consistent en hallucinations de taches brunes, puis en saignement des yeux, jusqu’à la cécité complète qui précède la mort.

      \n

      La première période indiquée est celle de l’incubation, la seconde est la périodicité normale. Tant que le malade n’a subi aucun dommage, utiliser la période d’incubation (1 heure) ; puis dès qu’il a perdu un premier point de vie, utiliser la périodicité normale (6 heures).

      \n

      Les points de VUE perdus ne peuvent être regagnés que quand la maladie est entièrement guérie. À chaque point de vie regagné, jouer un jet de CONSTITUTION ajusté négativement par les points de vie toujours manquants. Puis selon le résultat:

      \n
        \n
      • Particulière                              Regain de 2 points de VUE
      • \n
      • Normale et significative      Regain de 1 point de VUE
      • \n
      • Échec et Échec particulier  Aucun regain
      • \n
      • Échec total                                Aggravation, re-perte d’un point de VUE
      • \n
      \n

      Si tous les points de vie ont été regagnés et qu’il manque toujours un ou plusieurs points de VUE, jouer un jet de CONSTITUTION à zéro toutes les 12 heures, et appliquer les mêmes résultats que ci-dessus.

      \n

      Une potion d’herbes de soin enchantée peut faire regagner tous les points de vie une fois la maladie guérie, mais ne fait pas regagner les points de VUE perdus. Si le malade est devenu entièrement aveugle au cours de sa maladie, c’est-à-dire si sa VUE est tombée à zéro, il perd définitivement un point de VUE. Quand il regagnera ses points de VUE, il les regagnera tous moins un.

      \n

      Bains de solimonce

      \n

      Une décoction de feuilles de solimonce (voir Herbes, p336) utilisée en bains d’yeux donne un bonus de +4 au jet de CONSTITUTION pour le regain des points de VUE.

      \n

      La décoction se prépare comme une décoction d’herbes de soin. Pour baigner les deux yeux, il en faut 10 brins. Le bain doit durer 60 minutes (pour les deux yeux), puis les yeux doivent être tenus à l’abri de la lumière pendant un minimum de 3 heures. Le mieux est de les fermer et de dormir. Un bain d’yeux n’est valable que pour un seul jet de CONSTITUTION.

      \n

      Dans tous les cas, la fréquence des jets est toutes les 12 heures. La décoction de solimonce n’étant jamais bue, un enchantement ne lui confère rien de plus. La solimonce ne guérit pas la fièvre brune et ne peut avoir d’effet que quand la maladie est entièrement guérie.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"1 heure \\ 6 heures","incubation":"1 heure","periode":{"unite":"heure","nombre":6},"remedesconnus":false,"remedes":"-4 \\ Élixir des Gnomes +14, Bitume de Camphre +10","dommages":"1 pt de Vie et 1 pt de Vue"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Bousille","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.qE4IEazgBeRs4uE0"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"qE4IEazgBeRs4uE0","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":5,"periodicite":"6 rounds","incubation":"","periode":{"unite":"round","nombre":6},"remedesconnus":false,"remedes":"-4/ Teinture d’Érozonne +10, Topazoïne +6","dommages":"3 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299820,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Hécatombe","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.sSgu1FYK1s1vZinT"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"sSgu1FYK1s1vZinT","system":{"description":"

      Intoxication suite à l'ingestion d'un fruit vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":4,"periodicite":"1 minute","incubation":"","periode":{"unite":"minute","nombre":1},"remedesconnus":false,"remedes":"-5/ Bitume de Camphre +12, Mirobolant +6","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Amanite thanataire","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.sriGtgt3FQkc642z"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"sriGtgt3FQkc642z","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":7,"periodicite":"3 rounds","incubation":"","periode":{"unite":"round","nombre":3},"remedesconnus":false,"remedes":"-3/ Tournegraisse +12, Perle de Bjwal +10","dommages":"4 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673135772492,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Cheleuse","type":"poison","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.tpzD5959gxuIcTir"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/urticants.webp","effects":[],"_id":"tpzD5959gxuIcTir","system":{"description":"

      Des enflures apparaissent autour des plaies occasionnées par les piquants de la plante urticante. Les symptômes sont des sensations d’étouffement accompagnées de vertiges et de sueurs froides.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":1,"periodicite":"5 minutes","incubation":"","periode":{"unite":"minute","nombre":5},"remedesconnus":false,"remedes":"-3/ Liqueur de Bagdol +16, Mirobolant +14","dommages":"1 pt de Vie","active":false},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Venin d'araflate","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.v7yZidE9mObKO566"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/venin.webp","effects":[],"_id":"v7yZidE9mObKO566","system":{"description":"

      Venin de l'araflate. Sa morsure inflige un venin anesthésiant, inoculé sur toute blessure sauf contusion\\ éraflure.

      \n

      Chaque perte d’endurance s’accompagne de la fatigue équivalente. À zéro d’endurance, la victime est paralysée et ne peut plus faire un geste.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":6,"periodicite":"1 round","incubation":"","periode":{"unite":"round","nombre":1},"remedesconnus":false,"remedes":"-3 \\ Liqueur de Bagdol +12 Lait de lune +6","dommages":"1d6 pts d'endurance"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673135772494,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} +{"name":"Fumebol","type":"maladie","flags":{"core":{"sourceId":"Compendium.foundryvtt-reve-de-dragon.maladies-et-poisons.xzCBr3FiSk1WewcT"}},"img":"systems/foundryvtt-reve-de-dragon/icons/maladies_venins/champifruit.webp","effects":[],"_id":"xzCBr3FiSk1WewcT","system":{"description":"

      Intoxication suite à l'ingestion d'un champignon vénéneux.

      ","descriptionmj":"","temporel":{"debut":{"indexDate":0,"indexMinute":0},"fin":{"indexDate":0,"indexMinute":0}},"identifie":false,"malignite":5,"periodicite":"8 rounds","incubation":"","periode":{"unite":"round","nombre":8},"remedesconnus":false,"remedes":"-5/ Sable-Poudre +12, Huile de Sélikanthe +8.","dommages":"2 pts de Vie"},"ownership":{"default":0,"rYShh2P1DNavdoBD":3},"folder":null,"sort":0,"_stats":{"systemId":"foundryvtt-reve-de-dragon","systemVersion":"10.4.9","coreVersion":"10.291","createdTime":1671050299821,"modifiedTime":1673135772493,"lastModifiedBy":"Hp9ImM4o9YRTSdfu"}} diff --git a/template.json b/template.json index 0ce477f8..ab3f48cc 100644 --- a/template.json +++ b/template.json @@ -633,6 +633,7 @@ "identifie": false, "malignite": 0, "periodicite": "", + "incubation": "", "periode": { "unite": "", "nombre": 0 @@ -646,6 +647,7 @@ "identifie": false, "malignite": 0, "periodicite": "", + "incubation": "", "periode": { "unite": "", "nombre": 0 diff --git a/templates/item-maladie-sheet.html b/templates/item-maladie-sheet.html index 2e8aab70..d68819d5 100644 --- a/templates/item-maladie-sheet.html +++ b/templates/item-maladie-sheet.html @@ -22,8 +22,8 @@
      - - + +
      {{>"systems/foundryvtt-reve-de-dragon/templates/common/periodicite.hbs" system.periode path='system.periode' label='Périodicité'}} diff --git a/templates/item-poison-sheet.html b/templates/item-poison-sheet.html index e3fb5618..32709d7d 100644 --- a/templates/item-poison-sheet.html +++ b/templates/item-poison-sheet.html @@ -26,8 +26,8 @@
      - - + +
      {{>"systems/foundryvtt-reve-de-dragon/templates/common/periodicite.hbs" system.periode path='system.periode' label='Périodicité'}} From 652ae4cf5118597ece61608826192baf0d861124 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sun, 8 Jan 2023 00:57:50 +0100 Subject: [PATCH 12/14] Fix: enlever le bloc noir en pause --- styles/simple.css | 1 + 1 file changed, 1 insertion(+) diff --git a/styles/simple.css b/styles/simple.css index 30f2d1d0..f22bda8a 100644 --- a/styles/simple.css +++ b/styles/simple.css @@ -1897,6 +1897,7 @@ display: inline-flex; { font-family: CaslonAntique; font-size: 2rem; + background: none; } #pause > h3 { From 19118911b9b8aac1f77b7753172ead18b2c100db Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sun, 8 Jan 2023 00:58:44 +0100 Subject: [PATCH 13/14] Version 10.5.0 --- system.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/system.json b/system.json index 1422c70e..abc5afb5 100644 --- a/system.json +++ b/system.json @@ -1,8 +1,8 @@ { "id": "foundryvtt-reve-de-dragon", "title": "Rêve de Dragon", - "version": "10.4.9", - "download": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/archive/foundryvtt-reve-de-dragon-10.4.9.zip", + "version": "10.5.0", + "download": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/archive/foundryvtt-reve-de-dragon-10.5.0.zip", "manifest": "https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/raw/v10/system.json", "compatibility": { "minimum": "10", From 31960ce940bd1fad01b2f3cb26840f3d3c450997 Mon Sep 17 00:00:00 2001 From: Vincent Vandemeulebrouck Date: Sun, 8 Jan 2023 01:03:03 +0100 Subject: [PATCH 14/14] =?UTF-8?q?La=20p=C3=A9riodicit=C3=A9=20est=20migr?= =?UTF-8?q?=C3=A9e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- template.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/template.json b/template.json index ab3f48cc..4390c2c5 100644 --- a/template.json +++ b/template.json @@ -632,7 +632,6 @@ "templates": ["description", "temporel"], "identifie": false, "malignite": 0, - "periodicite": "", "incubation": "", "periode": { "unite": "", @@ -646,7 +645,6 @@ "templates": ["description", "temporel"], "identifie": false, "malignite": 0, - "periodicite": "", "incubation": "", "periode": { "unite": "",