diff --git a/module/data/item/beastform.mjs b/module/data/item/beastform.mjs index e15d75f3..d30d6046 100644 --- a/module/data/item/beastform.mjs +++ b/module/data/item/beastform.mjs @@ -97,6 +97,11 @@ export default class DHBeastform extends BaseDataItem { /* -------------------------------------------- */ + get beastformAttackData() { + const effect = this.parent.effects.find(x => x.type === 'beastform'); + return DHBeastform.getBeastformAttackData(effect); + } + static getBeastformAttackData(effect) { if (!effect) return null; diff --git a/module/documents/tooltipManager.mjs b/module/documents/tooltipManager.mjs index f92770bd..e10dc5fa 100644 --- a/module/documents/tooltipManager.mjs +++ b/module/documents/tooltipManager.mjs @@ -41,13 +41,18 @@ export default class DhTooltipManager extends foundry.helpers.interaction.Toolti if (effectData.type === 'beastform') { const beastformData = { - features: effectItem.parent.items.filter(x => effectItem.system.featureIds.includes(x.id)), + features: [], advantageOn: effectData.system.advantageOn, beastformAttackData: game.system.api.data.items.DHBeastform.getBeastformAttackData(effectItem) }; - for (const feature of beastformData.features) { - feature.enrichedDescription = await feature.system.getEnrichedDescription(); + + const features = effectItem.parent.items.filter(x => effectItem.system.featureIds.includes(x.id)); + for (const feature of features) { + const featureData = feature.toObject(); + featureData.enrichedDescription = await feature.system.getEnrichedDescription(); + beastformData.features.push(featureData); } + effect.description = await foundry.applications.handlebars.renderTemplate( 'systems/daggerheart/templates/ui/tooltip/parts/beastformData.hbs', {