mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-01-18 07:59:03 +01:00
deduplicate and simplify
This commit is contained in:
parent
598bf733f8
commit
b269e58585
4 changed files with 37 additions and 44 deletions
|
|
@ -72,6 +72,30 @@ export async function removeAttachmentEffectsFromActor({ parentItem, attachedUui
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove an attachment from an item and clean up its effects
|
||||
* @param {Object} options - Configuration options
|
||||
* @param {Item} options.parentItem - The item (armor/weapon) that the item is attached to
|
||||
* @param {string} options.attachedUuid - UUID of the attached item being removed
|
||||
* @param {string} options.parentType - Type of parent item ("armor" or "weapon")
|
||||
* @returns {Promise<void>}
|
||||
*/
|
||||
export async function removeAttachmentFromItem({ parentItem, attachedUuid, parentType }) {
|
||||
const currentAttached = parentItem.system.attached;
|
||||
|
||||
// Remove the attachment from the parent item's attached array
|
||||
await parentItem.update({
|
||||
'system.attached': currentAttached.filter(uuid => uuid !== attachedUuid)
|
||||
});
|
||||
|
||||
// Remove any effects that came from this attachment
|
||||
await removeAttachmentEffectsFromActor({
|
||||
parentItem,
|
||||
attachedUuid,
|
||||
parentType
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle adding/removing attachment effects when a parent item is equipped/unequipped
|
||||
* @param {Object} options - Configuration options
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue