From b51aa29bd8caefd19925a80049577f8bac3ecea8 Mon Sep 17 00:00:00 2001 From: Dennis Postma Date: Wed, 1 Jan 2025 20:59:38 +0100 Subject: [PATCH] Updated types --- src/application/types.ts | 72 +++++++++++++++++++++------------------- 1 file changed, 37 insertions(+), 35 deletions(-) diff --git a/src/application/types.ts b/src/application/types.ts index d01873c..6ff70dc 100644 --- a/src/application/types.ts +++ b/src/application/types.ts @@ -1,3 +1,5 @@ +export type UUID = `${string}-${string}-${string}-${string}-${string}` + export type Notification = { id?: string title?: string @@ -25,7 +27,7 @@ export type AssetDataT = { } export type Tile = { - id: string + id: UUID name: string tags: any | null createdAt: Date @@ -33,7 +35,7 @@ export type Tile = { } export type Object = { - id: string + id: UUID name: string tags: any | null originX: number @@ -48,13 +50,13 @@ export type Object = { } export type Item = { - id: string + id: UUID name: string description: string | null itemType: ItemType stackable: boolean rarity: ItemRarity - spriteId: string | null + spriteId: UUID | null sprite?: Sprite createdAt: Date updatedAt: Date @@ -64,7 +66,7 @@ export type ItemType = 'WEAPON' | 'HELMET' | 'CHEST' | 'LEGS' | 'BOOTS' | 'GLOVE export type ItemRarity = 'COMMON' | 'UNCOMMON' | 'RARE' | 'EPIC' | 'LEGENDARY' export type Zone = { - id: number + id: UUID name: string width: number height: number @@ -80,18 +82,18 @@ export type Zone = { } export type ZoneEffect = { - id: string - zoneId: number + id: UUID + zoneId: UUID zone: Zone effect: string strength: number } export type ZoneObject = { - id: string - zoneId: number + id: UUID + zoneId: UUID zone: Zone - objectId: string + objectId: UUID object: Object depth: number isRotated: boolean @@ -107,8 +109,8 @@ export enum ZoneEventTileType { } export type ZoneEventTile = { - id: string - zoneId: number + id: UUID + zoneId: UUID zone: Zone type: ZoneEventTileType positionX: number @@ -117,10 +119,10 @@ export type ZoneEventTile = { } export type ZoneEventTileTeleport = { - id: string - zoneEventTileId: string + id: UUID + zoneEventTileId: UUID zoneEventTile: ZoneEventTile - toZoneId: number + toZoneId: UUID toZone: Zone toPositionX: number toPositionY: number @@ -128,7 +130,7 @@ export type ZoneEventTileTeleport = { } export type User = { - id: number + id: UUID username: string password: string characters: Character[] @@ -148,7 +150,7 @@ export enum CharacterRace { } export type CharacterType = { - id: number + id: UUID name: string gender: CharacterGender race: CharacterRace @@ -161,7 +163,7 @@ export type CharacterType = { } export type CharacterHair = { - id: number + id: UUID name: string sprite: Sprite gender: CharacterGender @@ -169,8 +171,8 @@ export type CharacterHair = { } export type Character = { - id: number - userId: number + id: UUID + userId: UUID user: User name: string hitpoints: number @@ -182,11 +184,11 @@ export type Character = { positionX: number positionY: number rotation: number - characterTypeId: number | null + characterTypeId: UUID | null characterType: CharacterType | null | string - characterHairId: number | null + characterHairId: UUID | null characterHair: CharacterHair | null - zoneId: number + zoneId: UUID zone: Zone chats: Chat[] items: CharacterItem[] @@ -199,18 +201,18 @@ export type ZoneCharacter = { } export type CharacterItem = { - id: number - characterId: number + id: UUID + characterId: UUID character: Character - itemId: string + itemId: UUID item: Item quantity: number } export type CharacterEquipment = { - id: number + id: UUID slot: CharacterEquipmentSlotType - characterItemId: number + characterItemId: UUID characterItem: CharacterItem } @@ -224,7 +226,7 @@ export enum CharacterEquipmentSlotType { } export type Sprite = { - id: string + id: UUID name: string createdAt: Date updatedAt: Date @@ -233,8 +235,8 @@ export type Sprite = { } export type SpriteAction = { - id: string - spriteId: string + id: UUID + spriteId: UUID sprite: Sprite action: string sprites: string[] @@ -248,10 +250,10 @@ export type SpriteAction = { } export type Chat = { - id: number - characterId: number + id: UUID + characterId: UUID character: Character - zoneId: number + zoneId: UUID zone: Zone message: string createdAt: Date @@ -272,6 +274,6 @@ export type WeatherState = { } export type zoneLoadData = { - zone: ZoneT + zone: Zone characters: ZoneCharacter[] }