Files
dusk/types/item/backpack.d.ts
T
2026-06-07 19:51:54 -05:00

64 lines
1.8 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* Copyright (c) 2026 Dominic Masters
*
* This software is released under the MIT License.
* https://opensource.org/licenses/MIT
*/
/** The player's item backpack (a fixed 20-slot inventory). */
interface BackpackNamespace {
/** `true` when all 20 storage slots are occupied by distinct items. */
readonly isFull: boolean;
/**
* Returns the quantity of `itemId` in the backpack (0 if absent).
* @param itemId - An `ITEM_ID_*` constant.
*/
getCount(itemId: ItemId): number;
/**
* Returns `true` if `itemId` is present with quantity greater than 0.
* @param itemId - An `ITEM_ID_*` constant.
*/
has(itemId: ItemId): boolean;
/**
* Returns `true` if the stack for `itemId` is at maximum quantity (255).
* @param itemId - An `ITEM_ID_*` constant.
*/
isItemFull(itemId: ItemId): boolean;
/**
* Sets the quantity of `itemId`; passing 0 removes the stack entirely.
* @param itemId - An `ITEM_ID_*` constant.
* @param quantity - New quantity, 0255.
*/
set(itemId: ItemId, quantity: number): void;
/**
* Adds `quantity` units of `itemId` to the backpack.
* @param itemId - An `ITEM_ID_*` constant.
* @param quantity - Amount to add, 1255.
*/
add(itemId: ItemId, quantity: number): void;
/**
* Removes `itemId` entirely from the backpack.
* @param itemId - An `ITEM_ID_*` constant.
*/
remove(itemId: ItemId): void;
/**
* Sorts the backpack contents.
* @param sortBy - `INVENTORY_SORT_BY_ID` or `INVENTORY_SORT_BY_TYPE`.
* @param reverse - Optional; pass `true` to reverse the sort order.
*/
sort(sortBy: number, reverse?: boolean): void;
}
declare var Backpack: BackpackNamespace;
// Inventory sort constants — injected as globals by the engine at startup.
declare var INVENTORY_SORT_BY_ID: number;
declare var INVENTORY_SORT_BY_TYPE: number;