Nouveau mode de repos (nouveau-mode-repos) :
- Insomnie (Queue de Dragon) : bannière d'avertissement dans le dialogue,
rafraîchissement du drapeau à l'ouverture, vérification en direct dans la
boucle de sommeil (coupe la récupération fatigue/rêve si elle surgit en
cours de nuit), drapeau bidirectionnel (setInfoSommeilInsomnie) et mention
dans le dialogue Château Dormant.
- Château Dormant : déclenchement automatique quand l'heure absolue de fin
de nuit (11) est atteinte, au lieu de seulement après 12 h de sommeil.
- Rêve de Dragon : reprise de nuit possible — system.sommeil.heures
initialisé à la durée, heures restantes conservées au réveil, dialogue
pré-rempli avec bannière 'Reprise de nuit' et remise à zéro après une
nuit complète.
- Don 'double rêve' : second jet de récupération de rêve par heure.
- Garde anti-boucle infinie si l'insomnie apparaît pendant le sommeil.
- Info-bulle sur le réveil forcé.
Perte de rêve des enchantements au Château Dormant :
- Suppression du message en double (whisper dédié) : texte intégré au
résumé du CD ; la gemme renvoie désormais nouveaupr.
Elles sont souvent touchées ensemble
Préparation aux changements pour utiliser les Combatants
(pour gérer les empoignades/possessions en cours)
Renommages:
- RdDCombat -> PasseArmes
- RdDCombatManager -> RdDCombat
- remplace core.rollMode → core.messageMode (setting V14)
- migre toutes les cles (gmroll→gm, selfroll→self, blindroll→blind)
- corrige le hook renderTokenHUD pour recuperer le tokenId via app.document
- ajoute un bouton combat personnalise si absent du HUD V14
- corrige le toggle combat : isCombat manquant et guard si hors combat
- chat-utility : data-document-id→data-message-id pour les messages V14
- rdd-utility : idem pour findChatMessage/getChatMessageId
- roll-part-possession : getBestDraconic peut retourner undefined
- distance.mjs : Token→foundry.canvas.placeables.Token
- Remplace le tri 'Manuel' par un tri 'Quantité' dans l'inventaire
- Supprime _onDrop / _onSortItem (obsolètes sans tri manuel)
- Nouveau dialogue 'Gérer ses deniers' (ApplicationV2)
- Nouveau dialogue 'Gérer ses potions' (ApplicationV2)
- Boutons herbes/ingrédients/potions/deniers déplacés dans l'onglet Équipement
- Dialogues herbes/ingrédients harmonisés (alterne-list, contrôles +/-)
- Ajout titre 'Livres lus' et en-têtes alignés
- Ajout estCopieLue au schéma livre (template.json)
- creerCopieLue() extrait dans base-actor.js
- Filtre estCopieLue dans prepareInventaire/buildContenuConteneur
- Ne pas proposer les voies de Draconic à -11 pour lire un signe
draconic ou lancer un sort
- Trier les voies par ordre décroissant pour le sorts à voies multiples
- Les rencontres et les maîtrises dans les TMR peuvent être vaincues
sans draconic si les voies sont négatives
ChatMessage.create est async, il faut donc de préférence
l'appeler avec un await.
Des effets secondaires avaient lieu (ordre de messages, updates
ultérieurs parfois pas pris en compte)
L'appréciation utilise:
- un niveau de qualité (qui réutilise la qualité sur les items en ayant)
- un bon moment (coeur/musique/...)
- un niveau de jet de moral
- une caractéristique (perception)
- une compétence
Les bon moments passés sont remis à zéro lors du passage de
château dormant.
Ajout des jets de moral très heureux.
Ajout de jet d'appréciation sur les résultats des oeuvres et des jeux.
La dépense de rêve de sort se faisait en parallèle de la fermeture
de fenêtre des TMRs, qui modifiait la fatigue. Du coup, l'update de
la dépense de rêve ne se faisait pas