Fixed so that companions can get bonus levelupchoices from their partner

This commit is contained in:
WBHarry 2026-01-19 21:47:00 +01:00
parent 77bac647a8
commit 6f6ee41f0f
7 changed files with 402 additions and 14 deletions

View file

@ -108,7 +108,11 @@ export default class DhCompanion extends BaseDataActor {
get proficiency() {
return this.partner?.system?.proficiency ?? 1;
}
get canLevelUp() {
return this.levelupChoicesLeft > 0;
}
isItemValid() {
return false;
}
@ -147,6 +151,17 @@ export default class DhCompanion extends BaseDataActor {
}
}
prepareDerivedData() {
/* Partner Related Setup */
if (this.partner) {
this.levelData.level.changed = this.partner.system.levelData.level.current;
this.levelupChoicesLeft = Object.values(this.levelData.levelups).reduce((acc, curr) => {
acc = Math.max(acc - curr.selections.length, 0);
return acc;
}, this.partner.system.companionData.levelupChoices);
}
}
async _preUpdate(changes, options, userId) {
const allowed = await super._preUpdate(changes, options, userId);
if (allowed === false) return;