Athena.systems.inventory.factory ​
Functions ​
fromBaseToStored ​
Usage
Athena.systems.inventory.factory.fromBaseToStored<CustomData>(baseItem, quantity): any
Converts a base item into a stored item for reference.
Type parameters ​
| Name | Type |
|---|---|
CustomData | {} |
Parameters ​
| Name | Type |
|---|---|
baseItem | BaseItem<DefaultItemBehavior, CustomData> |
quantity | number |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:391
fromBaseToStoredAsync ​
Usage
Athena.systems.inventory.factory.fromBaseToStoredAsync<CustomData>(baseItem, quantity): Promise<player<CustomData>>
Converts a base item to a stored item asynchronously.
Type parameters ​
| Name | Type |
|---|---|
CustomData | {} |
Parameters ​
| Name | Type |
|---|---|
baseItem | BaseItem<DefaultItemBehavior, CustomData> |
quantity | number |
Returns ​
Promise<player<CustomData>>
Defined in ​
server/systems/inventory/factory.ts:243
fromStoredItem ​
Usage
Athena.systems.inventory.factory.fromStoredItem<CustomData, CustomBehavior>(item): player<CustomBehavior & player, CustomData> | undefined
Converts an item from a player inventory, or toolbar to a full item set.
Also performs weight calculations.
Use when usage is not at server-start.
Type parameters ​
| Name | Type |
|---|---|
CustomData | {} |
CustomBehavior | DefaultItemBehavior |
Parameters ​
| Name | Type |
|---|---|
item | StoredItem<CustomData> |
Returns ​
player<CustomBehavior & player, CustomData> | undefined
Defined in ​
server/systems/inventory/factory.ts:327
fromStoredItemAsync ​
Usage
Athena.systems.inventory.factory.fromStoredItemAsync<CustomData, CustomBehavior>(item): Promise<player<CustomBehavior & player, CustomData> | undefined>
Converts an item from a player inventory, equipment, or toolbar to a full item set.
Also performs weight calculations.
Type parameters ​
| Name | Type |
|---|---|
CustomData | {} |
CustomBehavior | {} |
Parameters ​
| Name | Type |
|---|---|
item | StoredItem<CustomData> |
Returns ​
Promise<player<CustomBehavior & player, CustomData> | undefined>
Defined in ​
server/systems/inventory/factory.ts:175
getBaseItem ​
Usage
Athena.systems.inventory.factory.getBaseItem<CustomData, CustomBehavior>(dbName, version?): player<player & CustomBehavior, CustomData>
Get a base item based on dbName, and version if supplied.
Does not wait for database of items to load first.
Use when usage is not at server-start.
Type parameters ​
| Name | Type |
|---|---|
CustomData | {} |
CustomBehavior | {} |
Parameters ​
| Name | Type | Default value |
|---|---|---|
dbName | string | undefined |
version? | number | undefined |
Returns ​
player<player & CustomBehavior, CustomData>
Defined in ​
server/systems/inventory/factory.ts:284
getBaseItemAsync ​
Usage
Athena.systems.inventory.factory.getBaseItemAsync<CustomData, CustomBehavior>(dbName, version?): Promise<player<player & CustomBehavior, CustomData>>
Get a base item based on dbName, and version if supplied.
Type parameters ​
| Name | Type |
|---|---|
CustomData | {} |
CustomBehavior | {} |
Parameters ​
| Name | Type | Default value |
|---|---|---|
dbName | string | undefined |
version? | number | undefined |
Returns ​
Promise<player<player & CustomBehavior, CustomData>>
Defined in ​
server/systems/inventory/factory.ts:51
getBaseItemByFuzzySearch ​
Usage
Athena.systems.inventory.factory.getBaseItemByFuzzySearch<CustomData>(partialName): player<player, CustomData> | undefined
Searches for a base item based on a fuzzy search. Specify either 'myitem', 'My_Item', or 'My Item'.
Will try to find a match in the following order:
- Exact dbname
- Exact name
- Partial name
- Partial dbname
Export
Type parameters ​
| Name | Type |
|---|---|
CustomData | {} |
Parameters ​
| Name | Type |
|---|---|
partialName | string |
Returns ​
player<player, CustomData> | undefined
Defined in ​
server/systems/inventory/factory.ts:463
getBaseItems ​
Usage
Athena.systems.inventory.factory.getBaseItems(): player[]
Does not wait for items to load, returns what base items are in the array.
Use this only during runtime; and not during startup.
Export
Returns ​
player[]
Defined in ​
server/systems/inventory/factory.ts:440
getBaseItemsAsync ​
Usage
Athena.systems.inventory.factory.getBaseItemsAsync(): Promise<player[]>
Waits for the database items to finish loading before returning data.
Export
Returns ​
Promise<player[]>
Defined in ​
server/systems/inventory/factory.ts:423
isDoneLoadingAsync ​
Usage
Athena.systems.inventory.factory.isDoneLoadingAsync(): Promise<void>
Wait until the isDoneLoading variable is set to true before continuing.
Returns ​
Promise<void>
Defined in ​
server/systems/inventory/factory.ts:29
override ​
Usage
Athena.systems.inventory.factory.override(functionName, callback): any
Used to override inventory item factory functionality
Parameters ​
| Name | Type |
|---|---|
functionName | "getBaseItemAsync" |
callback | <CustomData, CustomBehavior>(dbName: string, version?: number) => Promise<player<player & CustomBehavior, CustomData>> |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:515
Usage
Athena.systems.inventory.factory.override(functionName, callback): any
Used to override inventory item factory functionality
Parameters ​
| Name | Type |
|---|---|
functionName | "upsertAsync" |
callback | (baseItem: BaseItem) => any |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:516
Usage
Athena.systems.inventory.factory.override(functionName, callback): any
Used to override inventory item factory functionality
Parameters ​
| Name | Type |
|---|---|
functionName | "fromStoredItemAsync" |
callback | <CustomData, CustomBehavior>(item: StoredItem<CustomData>) => Promise<player<CustomBehavior & player, CustomData> | undefined> |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:517
Usage
Athena.systems.inventory.factory.override(functionName, callback): any
Used to override inventory item factory functionality
Parameters ​
| Name | Type |
|---|---|
functionName | "fromBaseToStoredAsync" |
callback | <CustomData>(baseItem: BaseItem<DefaultItemBehavior, CustomData>, quantity: number) => Promise<player<CustomData>> |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:518
Usage
Athena.systems.inventory.factory.override(functionName, callback): any
Used to override inventory item factory functionality
Parameters ​
| Name | Type |
|---|---|
functionName | "getBaseItem" |
callback | <CustomData, CustomBehavior>(dbName: string, version?: number) => player<player & CustomBehavior, CustomData> |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:519
Usage
Athena.systems.inventory.factory.override(functionName, callback): any
Used to override inventory item factory functionality
Parameters ​
| Name | Type |
|---|---|
functionName | "fromStoredItem" |
callback | <CustomData, CustomBehavior>(item: StoredItem<CustomData>) => player<CustomBehavior & player, CustomData> | undefined |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:520
Usage
Athena.systems.inventory.factory.override(functionName, callback): any
Used to override inventory item factory functionality
Parameters ​
| Name | Type |
|---|---|
functionName | "toStoredItem" |
callback | <CustomData>(item: Item<DefaultItemBehavior, CustomData>) => player<CustomData> |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:521
Usage
Athena.systems.inventory.factory.override(functionName, callback): any
Used to override inventory item factory functionality
Parameters ​
| Name | Type |
|---|---|
functionName | "fromBaseToStored" |
callback | <CustomData>(baseItem: BaseItem<DefaultItemBehavior, CustomData>, quantity: number) => any |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:522
Usage
Athena.systems.inventory.factory.override(functionName, callback): any
Used to override inventory item factory functionality
Parameters ​
| Name | Type |
|---|---|
functionName | "getBaseItems" |
callback | () => player[] |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:523
Usage
Athena.systems.inventory.factory.override(functionName, callback): any
Used to override inventory item factory functionality
Parameters ​
| Name | Type |
|---|---|
functionName | "getBaseItemsAsync" |
callback | () => Promise<player[]> |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:524
Usage
Athena.systems.inventory.factory.override(functionName, callback): any
Used to override inventory item factory functionality
Parameters ​
| Name | Type |
|---|---|
functionName | "getBaseItemByFuzzySearch" |
callback | <CustomData>(partialName: string) => player<player, CustomData> | undefined |
Returns ​
any
Defined in ​
server/systems/inventory/factory.ts:525
toStoredItem ​
Usage
Athena.systems.inventory.factory.toStoredItem<CustomData>(item): player<CustomData>
Converts a full item, into a storeable version of the item.
Only certain parts of the item will be stored.
Use when usage is not at server-start.
Type parameters ​
| Name | Type |
|---|---|
CustomData | {} |
Parameters ​
| Name | Type |
|---|---|
item | Item<DefaultItemBehavior, CustomData> |
Returns ​
player<CustomData>
Defined in ​
server/systems/inventory/factory.ts:359
toStoredItemAsync ​
Usage
Athena.systems.inventory.factory.toStoredItemAsync<CustomData>(item): Promise<player<CustomData>>
Converts a full item, into a storeable version of the item.
Only certain parts of the item will be stored.
Type parameters ​
| Name | Type |
|---|---|
CustomData | {} |
Parameters ​
| Name | Type |
|---|---|
item | Item<DefaultItemBehavior, CustomData> |
Returns ​
Promise<player<CustomData>>
Defined in ​
server/systems/inventory/factory.ts:207
upsertAsync ​
Usage
Athena.systems.inventory.factory.upsertAsync(baseItem): any
Updates or inserts a new database item into the database.
If a verison is specified and it does not find a matching version it will add a new item.
If a version is not specified; it will find a non-versioned item to replace.
Example ​
Athena.systems.inventory.factory.upsertAsync({
dbName: 'burger',
data: { health: 5 },
icon: 'burger',
name: 'Burger',
maxStack: 8,
weight: 25,
behavior: {
canDrop: true,
canStack: true,
canTrade: true,
destroyOnDrop: false,
isToolbar: true
},
consumableEventToCall: 'edible',
customEventsToCall: [
{
name: 'Desconstruct',
eventToCall: 'deconstruct-item-ingredients'
}
]
});Parameters ​
| Name | Type |
|---|---|
baseItem | BaseItem |
Returns ​
any
V5 Docs