simplifications sur EffetsDraconiques

ajout de methode tmrLabel pour les tooltips

ajout de l'item en paramètre aux ajouts/suppressions
ajout d'un 'sourceId' pour les casetmr liées à un souffle/queue/tête
This commit is contained in:
Vincent Vandemeulebrouck
2021-02-12 01:16:02 +01:00
parent 1cb4a7dbf5
commit 42bd63c999
11 changed files with 28 additions and 18 deletions

View File

@ -1,3 +1,4 @@
import { TMRUtility } from "../tmr-utility.js";
import { PixiTMR } from "./pixi-tmr.js";
const registeredEffects = [
@ -14,6 +15,8 @@ export class Draconique
static isTeteDragon(element) { return element.type == 'tete'; }
static isQueueSouffle(it) { return Draconique.isQueueDragon(it) || Draconique.isSouffleDragon(it); }
tmrLabel(linkData) { return TMRUtility.getTMRLabel(linkData.data.coord); }
static register(draconique) {
registeredEffects[draconique.code()] = draconique;
if (draconique.img()) {
@ -48,10 +51,10 @@ export class Draconique
* Méthode responsable de gérer une draconique (par exemple, ajouter des casetmr pour la fermeture des cités).
* @param actor auquel la draconique est ajoutée
*/
async onActorCreateOwned(actor) {
async onActorCreateOwned(actor, item) {
return false;
}
async onActorDeleteOwned(actor) {
async onActorDeleteOwned(actor, item) {
return false;
}
/**
@ -108,10 +111,15 @@ export class Draconique
return Draconique.isCaseTMR(it) && it.data.specific == this.code() && (coord ? it.data.coord == coord : true);
}
async createCaseTmr(actor, label, tmr) {
find(list, coord = undefined) {
return list.find(c => this.isCase(c, coord));
}
async createCaseTmr(actor, label, tmr, sourceId=undefined) {
await actor.createOwnedItem({
name: label, type: 'casetmr', img: this.img(), _id: randomID(16),
data: { coord: tmr.coord, specific: this.code() }
data: { coord: tmr.coord, specific: this.code(), sourceid:sourceId }
});
}