From ac16b00271eab301a62f358ee3a68c1a549eaf44 Mon Sep 17 00:00:00 2001 From: WBHarry Date: Sun, 10 Aug 2025 16:25:42 +0200 Subject: [PATCH] Fixed so Class/Subclass features are properly deleted on delevel --- module/documents/actor.mjs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index bccb12fd..80961c1e 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -151,11 +151,18 @@ export default class DhpActor extends Actor { } if (multiclass) { - const multiclassSubclass = this.items.find(x => x.type === 'subclass' && x.system.isMulticlass); const multiclassItem = this.items.find(x => x.uuid === multiclass.itemUuid); + const multiclassFeatures = this.items.filter( + x => x.system.originItemType === 'class' && x.system.identifier === 'multiclass' + ); + const subclassFeatures = this.items.filter( + x => x.system.originItemType === 'subclass' && x.system.identifier === 'multiclass' + ); - multiclassSubclass.delete(); - multiclassItem.delete(); + this.deleteEmbeddedDocuments( + 'Item', + [multiclassItem, ...multiclassFeatures, ...subclassFeatures].map(x => x.id) + ); this.update({ 'system.multiclass': {