Fight helper !

This commit is contained in:
2025-10-01 11:24:41 +02:00
parent bc9f397755
commit 4af277d8a2
26 changed files with 218 additions and 105 deletions

View File

@@ -146,6 +146,15 @@ export default class CthulhuEternalRoll extends Roll {
ammoUsed = Number(ammoUsed)
let combatants = []
if (game?.combat?.combatants) {
for (let c of game.combat.combatants) {
if (c.actor.id !== actor.id) {
combatants.push({ id: c.actor.id, name: c.name })
}
}
}
if (weapon.system.lethality > 0) {
let lethalityRoll = new Roll("1d100")
await lethalityRoll.evaluate()
@@ -159,20 +168,22 @@ export default class CthulhuEternalRoll extends Roll {
}
let wounds = Math.floor(lethalityRoll.total / 10) + (lethalityRoll.total % 10)
let msgData = {
actorId: actor.id,
weapon,
wounds,
lethalScore,
isLethal,
ammoUsed,
rollResult: lethalityRoll.total,
combatants: combatants
}
let flavor = await foundry.applications.handlebars.renderTemplate("systems/fvtt-cthulhu-eternal/templates/chat-lethal-damage.hbs", msgData)
ChatMessage.create({
let msg = await ChatMessage.create({
user: game.user.id,
content: flavor,
speaker: ChatMessage.getSpeaker({ actor: actor }),
}, { rollMode: options.rollMode, create: true })
await msg.setFlag("fvtt-cthulhu-eternal", "woundData", msgData)
return
}
@@ -190,21 +201,24 @@ export default class CthulhuEternalRoll extends Roll {
"system.ammo.value": Math.max(0, weapon.system.ammo.value - ammoUsed)
}])
}
console.log("Weapon damage formula", formula, weapon, ammoUsed)
let damageRoll = new Roll(formula)
await damageRoll.evaluate()
let msgData = {
weapon,
formula,
ammoUsed,
rollResult: damageRoll.total,
}
let flavor = await foundry.applications.handlebars.renderTemplate("systems/fvtt-cthulhu-eternal/templates/chat-regular-damage.hbs", msgData)
ChatMessage.create({
user: game.user.id,
content: flavor,
speaker: ChatMessage.getSpeaker({ actor: actor }),
}, { rollMode: options.rollMode, create: true })
actorId: actor.id,
weapon,
formula,
ammoUsed,
rollResult: damageRoll.total,
combatants: combatants
}
let flavor = await foundry.applications.handlebars.renderTemplate("systems/fvtt-cthulhu-eternal/templates/chat-regular-damage.hbs", msgData)
let msg = await ChatMessage.create({
user: game.user.id,
content: flavor,
speaker: ChatMessage.getSpeaker({ actor: actor }),
}, { rollMode: options.rollMode, create: true })
await msg.setFlag("fvtt-cthulhu-eternal", "woundData", msgData)
}