Derniers fix de sécurité et assimilé

This commit is contained in:
2026-04-04 09:40:30 +02:00
parent 1fb80f6abe
commit 56b58565d1
5 changed files with 37 additions and 27 deletions

View File

@@ -326,7 +326,7 @@ export class MournbladeCYD2Actor extends Actor {
}
/* -------------------------------------------- */
editItemField(itemId, itemType, itemField, dataType, value) {
async editItemField(itemId, itemType, itemField, dataType, value) {
let item = this.items.find(item => item.id == itemId)
if (item) {
console.log("Item ", item, itemField, dataType, value)
@@ -336,7 +336,7 @@ export class MournbladeCYD2Actor extends Actor {
value = String(value)
}
let update = { _id: item.id, [`system.${itemField}`]: value };
this.updateEmbeddedDocuments("Item", [update])
await this.updateEmbeddedDocuments("Item", [update])
}
}
@@ -465,7 +465,15 @@ export class MournbladeCYD2Actor extends Actor {
/* -------------------------------------------- */
getAttribute(attrKey) {
return this.system.attributes[attrKey]
return this.system.attributs[attrKey]
}
/* -------------------------------------------- */
hasTalent(nameOrPattern) {
if (nameOrPattern instanceof RegExp) {
return !!this.items.find(i => i.type === "talent" && nameOrPattern.test(i.name.toLowerCase()))
}
return !!this.items.find(i => i.type === "talent" && i.name.toLowerCase() === nameOrPattern.toLowerCase())
}
/* -------------------------------------------- */
@@ -521,7 +529,7 @@ export class MournbladeCYD2Actor extends Actor {
const passedTresAffaibli = curr >= tresAffaibli && prev < tresAffaibli
if (passedAffaibli) {
if (this.items.find(item => item.type == "talent" && item.name.toLowerCase() == "encaissement")) {
if (this.hasTalent("encaissement")) {
ChatMessage.create({ content: `<strong>${this.name} ne subit pas les 2 adversités rouge (Affaibli) grâce à Encaissement. Pensez à les ajouter à la fin de la scène !</strong>` })
} else {
ChatMessage.create({ content: `<strong>${this.name} est Affaibli et subit 2 adversités rouge !</strong>` })
@@ -529,7 +537,7 @@ export class MournbladeCYD2Actor extends Actor {
}
}
if (passedTresAffaibli) {
if (this.items.find(item => item.type == "talent" && item.name.toLowerCase().includes("vaillant"))) {
if (this.hasTalent(/vaillant/)) {
ChatMessage.create({ content: `<strong>${this.name} ne subit pas les 2 adversités rouge (Très Affaibli) grâce à Vaillant. Pensez à les ajouter à la fin de la scène !</strong>` })
} else {
ChatMessage.create({ content: `<strong>${this.name} est Très Affaibli et subit 2 adversités rouge supplémentaires !</strong>` })