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
-