1
0
forked from noxious/server

Replaced all event names with numbers for less bandwidth usage

This commit is contained in:
2025-02-11 23:12:41 +01:00
parent 8b51f6e16a
commit 9e55ac7990
57 changed files with 193 additions and 98 deletions

View File

@ -1,3 +1,4 @@
import { SocketEvent } from '#application/enums';
import type { UUID } from '#application/types'
import { BaseEvent } from '#application/base/baseEvent'
@ -16,7 +17,7 @@ export default class CharacterConnectEvent extends BaseEvent {
private readonly characterRepository = new CharacterRepository()
public listen(): void {
this.socket.on('character:connect', this.handleEvent.bind(this))
this.socket.on(SocketEvent.CHARACTER_CONNECT, this.handleEvent.bind(this))
}
private async handleEvent(data: CharacterConnectPayload, callback: (response: any) => void): Promise<void> {

View File

@ -1,3 +1,4 @@
import { SocketEvent } from '#application/enums';
import { ZodError, z } from 'zod'
import { BaseEvent } from '#application/base/baseEvent'
@ -17,7 +18,7 @@ export default class CharacterCreateEvent extends BaseEvent {
private readonly mapRepository: MapRepository = new MapRepository()
public listen(): void {
this.socket.on('character:create', this.handleEvent.bind(this))
this.socket.on(SocketEvent.CHARACTER_CREATE, this.handleEvent.bind(this))
}
private async handleEvent(data: z.infer<typeof ZCharacterCreate>, callback: (success: boolean) => void): Promise<void> {
@ -61,7 +62,7 @@ export default class CharacterCreateEvent extends BaseEvent {
await newCharacter.setName(data.name).setUser(user).setMap(map).setCharacterType(characterType).save()
characters = await this.characterRepository.getByUserId(user.getId())
this.socket.emit('character:list', characters)
this.socket.emit(SocketEvent.CHARACTER_LIST, characters)
this.logger.info('character:create success')
}
@ -76,7 +77,7 @@ export default class CharacterCreateEvent extends BaseEvent {
errorMessage = error.message
}
this.socket.emit('notification', {
this.socket.emit(SocketEvent.NOTIFICATION, {
title: 'Error',
message: errorMessage
})

View File

@ -1,3 +1,4 @@
import { SocketEvent } from '#application/enums';
import type { UUID } from '#application/types'
import { BaseEvent } from '#application/base/baseEvent'
@ -14,7 +15,7 @@ type TypeResponse = {
export default class CharacterDeleteEvent extends BaseEvent {
public listen(): void {
this.socket.on('character:delete', this.handleEvent.bind(this))
this.socket.on(SocketEvent.CHARACTER_DELETE, this.handleEvent.bind(this))
}
private async handleEvent(data: TypePayload, callback: (response: TypeResponse) => void): Promise<any> {
@ -23,9 +24,9 @@ export default class CharacterDeleteEvent extends BaseEvent {
await (await characterRepository.getByUserAndId(this.socket.userId!, data.characterId))?.delete()
const characters: Character[] = await characterRepository.getByUserId(this.socket.userId!)
this.socket.emit('character:list', characters)
this.socket.emit(SocketEvent.CHARACTER_LIST, characters)
} catch (error: any) {
return this.socket.emit('notification', { message: 'Character delete failed. Please try again.' })
return this.socket.emit(SocketEvent.NOTIFICATION, { message: 'Character delete failed. Please try again.' })
}
}
}

View File

@ -1,10 +1,11 @@
import { SocketEvent } from '#application/enums';
import { BaseEvent } from '#application/base/baseEvent'
import { Character } from '#entities/character'
import CharacterRepository from '#repositories/characterRepository'
export default class CharacterListEvent extends BaseEvent {
public listen(): void {
this.socket.on('character:list', this.handleEvent.bind(this))
this.socket.on(SocketEvent.CHARACTER_LIST, this.handleEvent.bind(this))
}
private async handleEvent(data: any): Promise<void> {
@ -12,7 +13,7 @@ export default class CharacterListEvent extends BaseEvent {
const characterRepository = new CharacterRepository()
let characters: Character[] = await characterRepository.getByUserId(this.socket.userId!)
this.socket.emit('character:list', characters)
this.socket.emit(SocketEvent.CHARACTER_LIST, characters)
} catch (error: any) {
this.logger.error('character:list error', error.message)
}