Le MJ peut créer des sorts en réserve

This commit is contained in:
Vincent Vandemeulebrouck 2024-12-07 23:54:08 +01:00
parent 2e689f642a
commit 250a1abd65
4 changed files with 22 additions and 2 deletions

View File

@ -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

View File

@ -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())
}

View File

@ -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();

View File

@ -1,5 +1,7 @@
{{#if sortsReserve.length}}
<h3>Sorts en Réserve</h3>
<h3>Sorts en Réserve{{#if options.isGM}} <a class="nouveau-sort-reserve"><i class="fa-solid fa-sparkles"></i>
</a>{{/if}}
</h3>
<ul class="item-list alterne-list">
{{#each (trier sortsReserve) as |sort key|}}
<li class="item list-item flexrow" data-item-id="{{sort._id}}" data-attribute="{{key}}"