diff --git a/lang/en.json b/lang/en.json index 828b2303..68ab0a12 100755 --- a/lang/en.json +++ b/lang/en.json @@ -326,6 +326,7 @@ "equip": "Equip", "sendToChat": "Send To Chat", "toLoadout": "Send to Loadout", + "recall": "Recall", "toVault": "Send to Vault", "unequip": "Unequip", "useItem": "Use Item" diff --git a/module/applications/sheets/actors/character.mjs b/module/applications/sheets/actors/character.mjs index 66ed6315..cbda1d06 100644 --- a/module/applications/sheets/actors/character.mjs +++ b/module/applications/sheets/actors/character.mjs @@ -318,6 +318,23 @@ export default class CharacterSheet extends DHBaseActorSheet { ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.loadoutMaxReached')); } }, + { + name: 'recall', + icon: 'fa-solid fa-bolt-lightning', + condition: target => { + const doc = getDocFromElementSync(target); + return doc && doc.system.inVault; + }, + callback: async target => { + const doc = await getDocFromElement(target); + const actorLoadout = doc.actor.system.loadoutSlot; + if (!actorLoadout.available) { + ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.loadoutMaxReached')); + return; + } + return doc.update({ 'system.inVault': false }); + } + }, { name: 'toVault', icon: 'fa-solid fa-arrow-down',