diff --git a/changelog.md b/changelog.md index 11734c09..2b0c7aed 100644 --- a/changelog.md +++ b/changelog.md @@ -4,6 +4,7 @@ - Ajout d'une option pour choisir une carte des TMR alternatives - Le Gardien peut créer des sorts en réserve parmi les sorts d'un personnage - Bouton pour ajouter des compétences aux créatures/entités +- Bouton pour ajouter un personnage accordé aux entités de cauchemar - Correction du choix d'une cible parmi toutes les cibles pour les combats - Correction des ajouts de blessures (prise en compte de l'endurance et des contusions) - Correction des rituels de Détection et Lecture d'Aura des personnages prétirés diff --git a/module/actor/entite-sheet.js b/module/actor/entite-sheet.js index d0c485f4..6d1a7bc7 100644 --- a/module/actor/entite-sheet.js +++ b/module/actor/entite-sheet.js @@ -1,6 +1,7 @@ import { RdDBaseActorReveSheet } from "./base-actor-reve-sheet.js"; import { RdDSheetUtility } from "../rdd-sheet-utility.js"; import { RdDUtility } from "../rdd-utility.js"; +import { DialogSelect } from "../dialog-select.js"; export class RdDActorEntiteSheet extends RdDBaseActorReveSheet { @@ -35,23 +36,31 @@ export class RdDActorEntiteSheet extends RdDBaseActorReveSheet { 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)); - }); + }) + + this.html.find('.resonance-add').click(async event => + DialogSelect.select({ + label: "Choisir un acteur à accorder", + list: game.actors.filter(it => it.isPersonnage() && it.prototypeToken.actorLink) + }, + it => this.resonanceAdd(it.id)) + ) + this.html.find('.resonance-delete').click(async event => { const li = RdDSheetUtility.getEventElement(event); const actorId = li.data("actor-id"); if (actorId) { const actorResonance = game.actors.get(actorId); RdDUtility.confirmSubActeurDelete(this, actorResonance, li, () => { - console.log('Delete : ', actorId); - this.deleteSubActeur(actorId); + this.resonanceDelete(actorId); RdDUtility.slideOnDelete(this, li); - }); + }) } - }); + }) } async _onDropActor(event, dragData) { @@ -60,7 +69,13 @@ export class RdDActorEntiteSheet extends RdDBaseActorReveSheet { super._onDropActor(event, dragData) } - async deleteSubActeur(actorId) { + async resonanceAdd(actorId) { + let newResonances = [...this.actor.system.sante.resonnance.actors, actorId] + await this.actor.update({ 'system.sante.resonnance.actors': newResonances }); + } + + async resonanceDelete(actorId) { + console.log('Delete : ', actorId); let newResonances = this.actor.system.sante.resonnance.actors.filter(id => id != actorId); await this.actor.update({ 'system.sante.resonnance.actors': newResonances }, { renderSheet: false }); } diff --git a/templates/actor/resonances.hbs b/templates/actor/resonances.hbs index 6fcc2239..a0dbdea6 100644 --- a/templates/actor/resonances.hbs +++ b/templates/actor/resonances.hbs @@ -1,12 +1,14 @@ -

Personnages accordés

- +