Automatisations de combats, WIP

This commit is contained in:
2023-12-22 09:30:26 +01:00
parent e1816b3dd7
commit 91ad26730a
81 changed files with 475 additions and 240 deletions

View File

@@ -52,6 +52,7 @@ export class MournbladeActor extends Actor {
arme = duplicate(arme)
let combat = this.getCombatValues()
if (arme.system.typearme == "contact" || arme.system.typearme == "contactjet") {
arme.system.isMelee = true
arme.system.competence = duplicate(this.items.find(item => item.type == "competence" && item.name.toLowerCase() == "mêlée"))
arme.system.attrKey = "pui"
arme.system.totalDegats = arme.system.degats + "+" + combat.bonusDegatsTotal
@@ -61,6 +62,7 @@ export class MournbladeActor extends Actor {
}
}
if (arme.system.typearme == "jet" || arme.system.typearme == "tir") {
arme.system.isDistance = true
arme.system.competence = duplicate(this.items.find(item => item.type == "competence" && item.name.toLowerCase() == "armes à distance"))
arme.system.attrKey = "adr"
arme.system.totalOffensif = this.system.attributs.adr.value + arme.system.competence.system.niveau + arme.system.bonusmaniementoff
@@ -414,6 +416,7 @@ export class MournbladeActor extends Actor {
rollData.canEclatDoubleD20 = this.canEclatDoubleD20()
rollData.doubleD20 = false
rollData.attributs = MournbladeUtility.getAttributs()
rollData.selectDifficulte = true
if (attrKey) {
rollData.attrKey = attrKey
@@ -476,6 +479,15 @@ export class MournbladeActor extends Actor {
}
let rollData = this.getCommonRollData(arme.system.attrKey, arme.system.competence._id)
rollData.arme = arme
rollData.typeAttaque = "assaut"
rollData.typeCouvert = "aucun"
rollData.visee = false
rollData.ciblecourt = false
rollData.cibleconsciente = false
// Do not display difficulte if defense weapon or distance
if (rollData.armeDefense || rollData.arme.system.isDistance) {
rollData.selectDifficulte = false
}
console.log("ARME!", rollData)
let rollDialog = await MournbladeRollDialog.create(this, rollData)
rollDialog.render(true)
@@ -490,6 +502,7 @@ export class MournbladeActor extends Actor {
if (arme.type == "bouclier") {
arme = this.prepareBouclier(arme)
}
rollData.degatsFormula = arme.system.totalDegats
let roll = new Roll(arme.system.totalDegats).roll({ async: false })
await MournbladeUtility.showDiceSoNice(roll, game.settings.get("core", "rollMode"));
let rollData = {