diff --git a/module/applications/sheets/companion.mjs b/module/applications/sheets/companion.mjs index 1a0eb9f7..05aab7b0 100644 --- a/module/applications/sheets/companion.mjs +++ b/module/applications/sheets/companion.mjs @@ -51,8 +51,8 @@ export default class DhCompanionSheet extends DaggerheartSheet(ActorSheetV2) { } async onPartnerChange(event) { + const partner = game.actors.find(a => a.uuid === event.target.value); if (event.target.value) { - const partner = game.actors.find(a => a.uuid === event.target.value); await partner.update({ 'system.companion': this.document.uuid }); } else { const update = { 'system.companion': null }; @@ -74,6 +74,7 @@ export default class DhCompanionSheet extends DaggerheartSheet(ActorSheetV2) { } await this.document.update({ 'system.partner': event.target.value }); + await this.document.updateLevel(partner ? partner.system.levelData.level.current : 1); } static async attackRoll(event) { diff --git a/module/data/actor/companion.mjs b/module/data/actor/companion.mjs index 3d7ab182..55b740c8 100644 --- a/module/data/actor/companion.mjs +++ b/module/data/actor/companion.mjs @@ -76,6 +76,10 @@ export default class DhCompanion extends BaseDataActor { }; } + get attackBonus() { + return this.attack.roll.bonus ?? 0; + } + prepareBaseData() { const partnerSpellcastingModifier = this.partner?.system?.spellcastingModifiers?.main; const spellcastingModifier = this.partner?.system?.traits?.[partnerSpellcastingModifier]?.total;