diff --git a/src/events/character/connect.ts b/src/events/character/connect.ts index 3c54e4e..7013217 100644 --- a/src/events/character/connect.ts +++ b/src/events/character/connect.ts @@ -2,6 +2,7 @@ import { BaseEvent } from '#application/base/baseEvent' import ZoneManager from '#managers/zoneManager' import CharacterHairRepository from '#repositories/characterHairRepository' import CharacterRepository from '#repositories/characterRepository' +import Database from '#application/database' interface CharacterConnectPayload { characterId: number @@ -43,6 +44,8 @@ export default class CharacterConnectEvent extends BaseEvent { return } + await Database.getEntityManager().populate(character, ['zone']) + // Set character id this.socket.characterId = character.id @@ -55,7 +58,8 @@ export default class CharacterConnectEvent extends BaseEvent { // Emit character connect event callback({ character, - zone: character.zone + zone: character.zone, + characters: ZoneManager.getZoneById(character.zone!.id)?.getCharactersInZone() }) } catch (error) { this.handleError('Failed to connect character', error) // @TODO : Make global error handler