
diff --git a/src/stores/assetManagerStore.ts b/src/stores/assetManagerStore.ts
index 4a5de59..ed5a8f3 100644
--- a/src/stores/assetManagerStore.ts
+++ b/src/stores/assetManagerStore.ts
@@ -1,6 +1,6 @@
import { ref } from 'vue'
import { defineStore } from 'pinia'
-import type { Tile, Object, Sprite, CharacterType, CharacterHair } from '@/types'
+import type { Tile, Object, Sprite, CharacterType, CharacterHair, Item } from '@/types'
export const useAssetManagerStore = defineStore('assetManager', () => {
const tileList = ref
([])
@@ -18,6 +18,9 @@ export const useAssetManagerStore = defineStore('assetManager', () => {
const characterHairList = ref([])
const selectedCharacterHair = ref(null)
+ const itemList = ref- ([])
+ const selectedItem = ref
- (null)
+
function setTileList(tiles: Tile[]) {
tileList.value = tiles
}
@@ -58,6 +61,14 @@ export const useAssetManagerStore = defineStore('assetManager', () => {
selectedCharacterHair.value = characterHair
}
+ function setItemList(items: Item[]) {
+ itemList.value = items
+ }
+
+ function setSelectedItem(item: Item | null) {
+ selectedItem.value = item
+ }
+
return {
tileList,
selectedTile,
@@ -69,6 +80,8 @@ export const useAssetManagerStore = defineStore('assetManager', () => {
selectedCharacterType,
characterHairList,
selectedCharacterHair,
+ itemList,
+ selectedItem,
setTileList,
setSelectedTile,
setObjectList,
@@ -78,6 +91,8 @@ export const useAssetManagerStore = defineStore('assetManager', () => {
setSelectedSprite,
setSelectedCharacterType,
setCharacterHairList,
- setSelectedCharacterHair
+ setSelectedCharacterHair,
+ setItemList,
+ setSelectedItem
}
})
diff --git a/src/types.ts b/src/types.ts
index bd02700..4e88cfc 100644
--- a/src/types.ts
+++ b/src/types.ts
@@ -45,12 +45,18 @@ export type Item = {
id: string
name: string
description: string | null
+ itemType: ItemType
stackable: boolean
+ rarity: ItemRarity
+ spriteId: string | null
+ sprite?: Sprite
createdAt: Date
updatedAt: Date
- characters: CharacterItem[]
}
+export type ItemType = 'WEAPON' | 'HELMET' | 'CHEST' | 'LEGS' | 'BOOTS' | 'GLOVES' | 'RING' | 'NECKLACE'
+export type ItemRarity = 'COMMON' | 'UNCOMMON' | 'RARE' | 'EPIC' | 'LEGENDARY'
+
export type Zone = {
id: number
name: string
@@ -155,7 +161,6 @@ export type CharacterHair = {
sprite: Sprite
gender: CharacterGender
isSelectable: boolean
- // @TODO: Do we need addedAt and updatedAt?
}
export type Character = {