foundryvtt-reve-de-dragon/module/rdd-tmr-dialog.js
2020-07-05 22:35:18 +02:00

60 lines
1.6 KiB
JavaScript

/**
* Extend the base Dialog entity by defining a custom window to perform spell.
* @extends {Dialog}
*/
export class RdDTMRDialog extends Dialog {
/* -------------------------------------------- */
constructor(sort, html, actor) {
// Common conf
let dialogConf = {
content: html,
buttons:
{
rollButton:
{
label: "Lancer",
callback: html => this.performRoll(html)
}
},
default: "rollButton"
}
let dialogOptions = { classes: [ "tmrdialog"] }
dialogConf.title = "Terres Médianes de Rêve",
dialogOptions.width = 740;
dialogOptions.height = 960;
super(dialogConf, dialogOptions);
this.sort = sort;
this.actor = actor;
}
/* -------------------------------------------- */
performRoll (html) {
this.actor.performRoll( this.rollData );
}
/* -------------------------------------------- */
loadImage(url) {
return new Promise(r => { let i = new Image(); i.onload = (() => r(i)); i.src = url; });
}
/* -------------------------------------------- */
async init_canvas() {
var ctx = document.getElementById('canvas_tmr');
ctx = ctx.getContext('2d');
let img = await this.loadImage("systems/foundryvtt-reve-de-dragon/styles/ui/tmp_main_r1.webp");
await ctx.drawImage(img, 0, 0, 720, 860);
}
/* -------------------------------------------- */
activateListeners(html) {
super.activateListeners(html);
this.init_canvas();
}
}