Added migration

This commit is contained in:
WBHarry 2026-07-12 01:15:22 +02:00
parent 7384402023
commit 8e4ca52ab7
2 changed files with 20 additions and 4 deletions

View file

@ -34,8 +34,7 @@ class ChatMessageRollDamage extends foundry.abstract.DataModel {
return {
types: new fields.TypedObjectField(new fields.SchemaField({
roll: new fields.JSONField({validate: ChatMessageRollDamage.#validateRoll}),
damageTypes: new fields.ArrayField(new fields.StringField({ choices: CONFIG.DH.GENERAL.damageTypes })),
type: new fields.StringField()
damageTypes: new fields.ArrayField(new fields.StringField({ choices: CONFIG.DH.GENERAL.damageTypes }))
}))
};
}
@ -243,6 +242,24 @@ export default class DHActorRoll extends foundry.abstract.TypeDataModel {
this.isGM = game.user.isGM; //temp
}
static migrateData(source) {
if (source.hasDamage && !source.damage.types) {
source.damage = {
types: Object.keys(source.damage).reduce((acc, key) => {
const damageData = source.damage[key];
acc[key] = {
roll: damageData.parts[0]?.roll ?? null,
damageTypes: damageData.parts[0]?.damageTypes ?? []
};
return acc;
}, {})
};
}
return source;
}
getTargetList() {
const targets =
this.targetMode && this.parent.isAuthor

View file

@ -21,8 +21,7 @@ export default class DamageRoll extends DHRoll {
await roll.roll.evaluate();
config.damage.types[roll.applyTo] = {
roll: roll.roll,
damageTypes: roll.damageTypes ?? [],
type: config.type
damageTypes: roll.damageTypes ?? []
};
}
}