import { DS4Item } from "../item/item"; import { DS4ItemData } from "../item/item-data"; import { createItemMacro } from "../macros/item-macro"; import notifications from "../ui/notifications"; export default function registerHotbarHook(): void { Hooks.on("hotbarDrop", async (hotbar: Hotbar, data: { type: string } & Record, slot: string) => { switch (data.type) { case "Item": { if (!("data" in data)) { return notifications.warn(game.i18n.localize("DS4.WarningMacrosCanOnlyBeCreatedForOwnedItems")); } const itemData = data.data as DS4ItemData; if (!DS4Item.rollableItemTypes.includes(itemData.type)) { return notifications.warn( game.i18n.format("DS4.WarningItemIsNotRollable", { name: itemData.name, id: itemData._id, type: itemData.type, }), ); } await createItemMacro(itemData, slot); } } }); }