57 lines
1.2 KiB
TypeScript
57 lines
1.2 KiB
TypeScript
import { Socket } from 'socket.io'
|
|
import { Character } from '#entities/character'
|
|
import { ZoneEventTile } from '#entities/zoneEventTile'
|
|
import { ZoneEventTileTeleport } from '#entities/zoneEventTileTeleport'
|
|
|
|
export type UUID = `${string}-${string}-${string}-${string}-${string}`
|
|
|
|
export type TSocket = Socket & {
|
|
userId?: number
|
|
characterId?: number
|
|
handshake?: {
|
|
query?: {
|
|
token?: any
|
|
}
|
|
}
|
|
request?: {
|
|
headers?: {
|
|
cookie?: any
|
|
}
|
|
}
|
|
}
|
|
|
|
export type ExtendedCharacter = Character & {
|
|
isMoving?: boolean
|
|
resetMovement?: boolean
|
|
}
|
|
|
|
export type ZoneEventTileWithTeleport = ZoneEventTile & {
|
|
teleport: ZoneEventTileTeleport
|
|
}
|
|
|
|
export type AssetData = {
|
|
key: string
|
|
data: string
|
|
group: 'tiles' | 'objects' | 'sprites' | 'sprite_animations' | 'sound' | 'music' | 'ui' | 'font' | 'other'
|
|
updatedAt: Date
|
|
originX?: number
|
|
originY?: number
|
|
isAnimated?: boolean
|
|
frameRate?: number
|
|
frameWidth?: number
|
|
frameHeight?: number
|
|
frameRate?: number
|
|
}
|
|
|
|
export type WorldSettings = {
|
|
date: Date
|
|
isRainEnabled: boolean
|
|
isFogEnabled: boolean
|
|
fogDensity: number
|
|
}
|
|
|
|
// export type TCharacter = Socket & {
|
|
// user?: User
|
|
// character?: Character
|
|
// }
|