feat: separate skill value/max (transcendence pool vs level)
Release Creation / build (release) Successful in 58s

- skill.value = spendable transcendence pool (editable select)
- skill.max = max level (locked by default, unlock btn)
- computeRollFormula/computeResults/confront use skill.max
- clamp transcendence spend to skill.value
- resetTranscendence button in Bio&Notes
- v14 compat: duplicate→deepClone, mergeObject→spread, socket fixes
- Dialog v1 removed, DragDrop dedup, await fixes
This commit is contained in:
2026-07-24 09:00:26 +02:00
parent 8c79e6f0ba
commit 31e2561797
63 changed files with 385 additions and 340 deletions
@@ -47,7 +47,7 @@ export class EcrymeConfrontStartDialog extends HandlebarsApplicationMixin(foundr
async _prepareContext() {
return {
...this.rollData,
config: game.system.ecryme.config,
config: game.ecryme.config,
}
}
@@ -57,11 +57,11 @@ export class EcrymeConfrontStartDialog extends HandlebarsApplicationMixin(foundr
await EcrymeUtility.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
const rollData = this.rollData
rollData.roll = foundry.utils.duplicate(myRoll)
rollData.roll = foundry.utils.deepClone(myRoll)
rollData.availableDices = []
for (const result of myRoll.terms[0].results) {
if (!result.discarded) {
const dup = foundry.utils.duplicate(result)
const dup = foundry.utils.deepClone(result)
dup.location = "mainpool"
rollData.availableDices.push(dup)
}