1
0
forked from noxious/server

Fix for creating new characters, added teleport function to zone character model

This commit is contained in:
2025-01-01 03:00:03 +01:00
parent 9d6a8730a9
commit 30b2028bd8
4 changed files with 71 additions and 4 deletions

View File

@ -56,7 +56,24 @@ export default class CharacterConnectEvent extends BaseEvent {
// Emit character connect event
callback({ character })
// @TODO: Teleport character into zone
// wait 300 ms, @TODO: Find a better way to do this
await new Promise(resolve => setTimeout(resolve, 100))
const zone = ZoneManager.getZoneById(character.zone!.id)
if (!zone) {
this.logger.error('zone:character:join error: Zone not found')
return
}
zone.addCharacter(character)
const zoneCharacter = ZoneManager.getCharacterById(character.id)
if (!zoneCharacter) {
this.logger.error('zone:character:join error: Zone character not found')
return
}
await zoneCharacter.teleport(character.zone!.id, character.positionX, character.positionY)
} catch (error) {
this.handleError('Failed to connect character', error)
}