RequestServerList.ts
1 import { SessionKeyHelper, SessionKeyProperties } from '../../service/SessionKey' 2 import { ServerList } from '../send/ServerList' 3 import { LoginFail, LoginFailReason } from '../send/LoginFail' 4 import { L2LoginClient } from '../../service/L2LoginClient' 5 import { ReadableClientPacket } from '../ReadableClientPacket' 6 7 export function RequestServerList( client: L2LoginClient, data: Buffer ) { 8 let packet = new ReadableClientPacket( data, 1 ) 9 let loginOk1 = packet.readD() 10 let loginOk2 = packet.readD() 11 12 if ( SessionKeyHelper.compareKeys( client.getSessionKey(), { loginOk1, loginOk2 } as SessionKeyProperties ) ) { 13 client.enableServerListUpdates = true 14 return ServerList( client ) 15 } 16 17 return LoginFail( LoginFailReason.accessFailed ) 18 }