let test = await this.actor.setupCharacteristic("t", { appendTitle: ` - ${this.effect.name}`, fields: { difficulty: "challenging" } }) await test.roll(); if (test.failed) { let ageAdded = Math.ceil(CONFIG.Dice.randomUniform() * 10) + Math.ceil(CONFIG.Dice.randomUniform() * 10) let ws = Math.ceil(CONFIG.Dice.randomUniform() * 10) let bs = Math.ceil(CONFIG.Dice.randomUniform() * 10) let s = Math.ceil(CONFIG.Dice.randomUniform() * 10) let t = Math.ceil(CONFIG.Dice.randomUniform() * 10) let ag = Math.ceil(CONFIG.Dice.randomUniform() * 10) let dex = Math.ceil(CONFIG.Dice.randomUniform() * 10) let currentAge = parseInt(this.actor.system.details.age.value) let inline = `@ROLL` let msg = `

${this.actor.prototypeToken.name} ages by ${inline.replace("@ROLL", ageAdded).replace("@TT", "2d10")} and loses

${inline.replace("@ROLL", ws).replace("@TT", "1d10")} Weapon Skill

${inline.replace("@ROLL", bs).replace("@TT", "1d10")} Ballistic Skill

${inline.replace("@ROLL", s).replace("@TT", "1d10")} Strength

${inline.replace("@ROLL", t).replace("@TT", "1d10")} Toughness

${inline.replace("@ROLL", ag).replace("@TT", "1d10")} Agility

${inline.replace("@ROLL", dex).replace("@TT", "1d10")} Dexterity

` this.script.scriptMessage(msg); let characteristics = duplicate(this.actor.system.characteristics) characteristics.ws.initial -= ws characteristics.bs.initial -= bs characteristics.s.initial -= s characteristics.t.initial -= t characteristics.ag.initial -= ag characteristics.dex.initial -= dex this.actor.update({ "system.characteristics": characteristics, "data.details.age.value": ageAdded + currentAge }) }