Big WIP...

This commit is contained in:
2022-06-12 08:17:59 +02:00
parent a3fb328b7d
commit 451ee677d2
56 changed files with 990 additions and 921 deletions

View File

@ -16,7 +16,7 @@ import { Conquete } from "./conquete.js";
import { Pelerinage } from "./pelerinage.js";
import { Periple } from "./periple.js";
import { UrgenceDraconique } from "./urgence-draconique.js";
import { Misc } from "../misc.js";
import { Grammar } from "../grammar.js";
export class EffetsDraconiques {
@ -111,36 +111,42 @@ export class EffetsDraconiques {
);
}
static filterItems(actor, filter, name) {
return actor.data.items.filter(filter)
.filter(it => Grammar.includesLowerCaseNoAccent(it.name, name));
}
static isDonDoubleReve(actor) {
return actor.data.items.find(it => Draconique.isTeteDragon(it) && it.name == 'Don de double-rêve');
return EffetsDraconiques.filterItems(actor, Draconique.isTeteDragon, 'Don de double-rêve').length>0;
}
static isConnaissanceFleuve(actor) {
return actor.data.items.find(it => Draconique.isTeteDragon(it) && it.name.toLowerCase().includes('connaissance du fleuve'));
return EffetsDraconiques.filterItems(actor, Draconique.isTeteDragon, 'connaissance du fleuve').length>0;
}
static isReserveEnSecurite(actor) {
return actor.data.items.find(it => Draconique.isTeteDragon(it) && it.name.toLowerCase().includes(' en sécurité'));
return EffetsDraconiques.filterItems(actor, Draconique.isTeteDragon, 'réserve en sécurité').length>0;
}
static isDeplacementAccelere(actor) {
return actor.data.items.find(it => Draconique.isTeteDragon(it) && it.name.toLowerCase().includes(' déplacement accéléré'));
return EffetsDraconiques.filterItems(actor, Draconique.isTeteDragon, ' déplacement accéléré').length>0;
}
static isDoubleResistanceFleuve(actor) {
return actor.data.items.find(it => Draconique.isSouffleDragon(it) && it.name.toLowerCase().includes('résistance du fleuve'));
return EffetsDraconiques.filterItems(actor, Draconique.isSouffleDragon, 'résistance du fleuve').length>0;
}
static countInertieDraconique(actor) {
return actor.data.items.filter(it => Draconique.isQueueDragon(it) && it.name.toLowerCase().includes('inertie draconique')).length;
return EffetsDraconiques.filterItems(actor, Draconique.isQueueDragon, 'inertie draconique').length;
}
static countMonteeLaborieuse(actor) {
return actor.data.items.filter(it => Draconique.isQueueSouffle(it) && it.name.toLowerCase().includes('montée laborieuse')).length;
return EffetsDraconiques.filterItems(actor, Draconique.isQueueSouffle, 'montée laborieuse').length;
}
static mauvaiseRencontre(actor) {
return actor.data.items.find(it => Draconique.isQueueSouffle(it) && it.name.toLowerCase().includes('mauvaise rencontre'));
const mauvaisesRencontres = EffetsDraconiques.filterItems(actor, Draconique.isQueueSouffle, 'mauvaise rencontre');
return mauvaisesRencontres.length>0 ? mauvaisesRencontres[0] : undefined;
}
static isPontImpraticable(actor) {
@ -152,7 +158,7 @@ export class EffetsDraconiques {
}
static isPeage(actor) {
return actor.data.items.find(it => Draconique.isSouffleDragon(it) && it.name.toLowerCase().includes('péage'));
return EffetsDraconiques.filterItems(actor, Draconique.isSouffleDragon, 'péage').length > 0;
}

View File

@ -25,7 +25,7 @@ export class PixiTMR {
for (const [name, img] of Object.entries(PixiTMR.textures)) {
loader = loader.add(name, img);
}
loader.onLoad.add((error, resaon) => { console.log("ERROR", error, resaon) });
loader.onLoad.add((error, reason) => { console.log("ERROR", error, reason) });
loader.load( (loader, resources) => {
onLoad(loader, resources);
for (let onAnimate of this.callbacksOnAnimate) {