/* -------------------------------------------- */ import { BoLUtility } from "./bol-utility.js"; import { BoLRoll } from "../controllers/bol-rolls.js"; /* -------------------------------------------- */ export class BoLCharacterSummary extends Application { /* -------------------------------------------- */ static displayPCSummary(){ let pcList = new BoLCharacterSummary() pcList.render(true) } /* -------------------------------------------- */ static createSummaryPos() { return { top: 200, left: 200 }; } /* -------------------------------------------- */ constructor() { if ( !game.user.isGM ) { // Uniquement si GM return; } super(); } /* -------------------------------------------- */ static get defaultOptions() { return mergeObject(super.defaultOptions, { template: "systems/bol/templates/apps/character-summary-template.html", popOut: true, resizable: true, classes: ["bol", "dialog"], width: 820, height: 'fit-content' }) } /* -------------------------------------------- */ getData() { let formData = super.getData(); formData.pcs = game.actors.filter( ac => ac.type == "character" && ac.hasPlayerOwner ) formData.config = game.bol.config return formData } /* -------------------------------------------- */ /** @override */ async activateListeners(html) { super.activateListeners(html); html.find('.summary-roll').click((event) => { const li = $(event.currentTarget).parents(".item") const actor = game.actors.get(li.data("actor-id")) let type = $(event.currentTarget).data("type") let key = $(event.currentTarget).data("key") if ( type == "attribute") { BoLRoll.attributeCheck(actor, key, event) } else if (type == "aptitude") { BoLRoll.aptitudeCheck(actor, key, event) } }) } }