diff --git a/changelog.md b/changelog.md index f1933af2..79140c42 100644 --- a/changelog.md +++ b/changelog.md @@ -3,6 +3,7 @@ - Ajout de la liste des armures dans l'onglet caractéristiques - Correction des ajouts de blessures (prise en compte de l'endurance et des contusions) - Correction du choix d'une cible parmi toutes les cibles pour les combats +- Le Gardien peut créer des sorts en réserve parmi les sorts d'un personnage ## 12.0.26 - Astrobazzarh le Haut-rêvant - bouton pour le don de haut-rêve en un clic diff --git a/module/actor-sheet.js b/module/actor-sheet.js index 19254bb0..3b6a5103 100644 --- a/module/actor-sheet.js +++ b/module/actor-sheet.js @@ -215,7 +215,7 @@ export class RdDActorSheet extends RdDBaseActorSangSheet { // Boutons spéciaux MJs this.html.find('.forcer-tmr-aleatoire').click(async event => this.actor.reinsertionAleatoire("Action MJ")) this.html.find('.don-de-haut-reve').click(async event => this.actor.addDonDeHautReve()) - + this.html.find('.nouveau-sort-reserve').click(async event => this.actor.addSortReserve()) this.html.find('.afficher-tmr').click(async event => this.actor.changeTMRVisible()) } diff --git a/module/actor.js b/module/actor.js index a128e4b8..bfd82ec0 100644 --- a/module/actor.js +++ b/module/actor.js @@ -40,6 +40,7 @@ import { RdDItemArme } from "./item-arme.js"; import { RdDCombatManager } from "./rdd-combat.js"; import { RdDItemTete } from "./item/tete.js"; import { SystemCompendiums } from "./settings/system-compendiums.js"; +import { DialogSelect } from "./dialog-select.js"; export const MAINS_DIRECTRICES = ['Droitier', 'Gaucher', 'Ambidextre'] @@ -990,6 +991,22 @@ export class RdDActor extends RdDBaseActorSang { } } + async addSortReserve() { + const selectSortReserve = { + title: "Créer un sort en réserve", + label: "Choisir un sort", + list: this.itemTypes[ITEM_TYPES.sort].filter(it => !it.system.isrituel) + } + DialogSelect.select(selectSortReserve, sort => + this.createEmbeddedDocuments("Item", + [{ + type: ITEM_TYPES.sortreserve, + name: sort.name, + img: sort.img, + system: { sortid: sort.id, draconic: sort.system.draconic, ptreve: Number(sort.system.ptreve.match(/\d+/)), coord: 'A1', heurecible: 'Vaisseau' } + }], + { renderSheet: true })) + } /* -------------------------------------------- */ async reinsertionAleatoire(raison, accessible = tmr => true) { const innaccessible = this.buildTMRInnaccessible(); diff --git a/templates/actor/hr-sorts-reserve.html b/templates/actor/hr-sorts-reserve.html index 6425085b..eaa7a13c 100644 --- a/templates/actor/hr-sorts-reserve.html +++ b/templates/actor/hr-sorts-reserve.html @@ -1,5 +1,7 @@ {{#if sortsReserve.length}} -