[bot] Implement ServerQuit(...)

This commit is contained in:
RD42 2024-06-02 22:55:46 +08:00
parent 5e09558960
commit aca41ed816
3 changed files with 21 additions and 8 deletions

View File

@ -83,9 +83,22 @@ void Unk89(RPCParameters *rpcParams)
// TODO: Unk89
}
void Unk8A(RPCParameters *rpcParams)
void ServerQuit(RPCParameters *rpcParams)
{
// TODO: Unk8A
PCHAR Data = reinterpret_cast<PCHAR>(rpcParams->input);
int iBitLength = rpcParams->numberOfBitsOfData;
PlayerID sender = rpcParams->sender;
RakNet::BitStream bsData(Data,(iBitLength/8)+1,false);
CPlayerPool *pPlayerPool = pNetGame->GetPlayerPool();
PLAYERID playerId;
BYTE byteReason;
bsData.Read(playerId);
bsData.Read(byteReason);
// Delete this client from the player pool.
pPlayerPool->Delete(playerId,byteReason);
}
void Unk8B(RPCParameters *rpcParams)
@ -173,7 +186,7 @@ void RegisterRPCs(RakClientInterface * pRakClient)
REGISTER_STATIC_RPC(pRakClient,Unk1D);
REGISTER_STATIC_RPC(pRakClient,Unk1E);
REGISTER_STATIC_RPC(pRakClient,Unk89);
REGISTER_STATIC_RPC(pRakClient,Unk8A);
REGISTER_STATIC_RPC(pRakClient,ServerQuit);
REGISTER_STATIC_RPC(pRakClient,Unk8B);
REGISTER_STATIC_RPC(pRakClient,Chat);
REGISTER_STATIC_RPC(pRakClient,RequestClass);
@ -214,7 +227,7 @@ void UnRegisterRPCs(RakClientInterface * pRakClient)
UNREGISTER_STATIC_RPC(pRakClient,UnkA4);
UNREGISTER_STATIC_RPC(pRakClient,UnkA5);
UNREGISTER_STATIC_RPC(pRakClient,Unk89);
UNREGISTER_STATIC_RPC(pRakClient,Unk8A);
UNREGISTER_STATIC_RPC(pRakClient,ServerQuit);
UNREGISTER_STATIC_RPC(pRakClient,Unk8B);
UNREGISTER_STATIC_RPC(pRakClient,Chat);
UNREGISTER_STATIC_RPC(pRakClient,RequestClass);

View File

@ -46,8 +46,8 @@
#define RPC_EnterVehicle "\x1A"
#define RPC_ExitVehicle "\x9A"
#define RPC_Unk89 "\x89"
#define RPC_Unk8A "\x8A"
#define RPC_Unk8B "\x8B"
#define RPC_ServerQuit "\x8A"
#define RPC_Chat "\x65"
#define RPC_RequestClass "\x80"
#define RPC_RequestSpawn "\x81"

View File

@ -35,8 +35,8 @@ void Unk18(RPCParameters *rpcParams) {}
void EnterVehicle(RPCParameters *rpcParams) {}
void ExitVehicle(RPCParameters *rpcParams) {}
void Unk89(RPCParameters *rpcParams) {}
void Unk8A(RPCParameters *rpcParams) {}
void Unk8B(RPCParameters *rpcParams) {}
void ServerQuit(RPCParameters *rpcParams) {}
void Chat(RPCParameters *rpcParams) {}
void RequestClass(RPCParameters *rpcParams) {}
void RequestSpawn(RPCParameters *rpcParams) {}
@ -86,8 +86,8 @@ void RegisterRPCs(RakClientInterface * pRakClient)
REGISTER_STATIC_RPC(pRakClient,EnterVehicle);
REGISTER_STATIC_RPC(pRakClient,ExitVehicle);
REGISTER_STATIC_RPC(pRakClient,Unk89);
REGISTER_STATIC_RPC(pRakClient,Unk8A);
REGISTER_STATIC_RPC(pRakClient,Unk8B);
REGISTER_STATIC_RPC(pRakClient,ServerQuit);
REGISTER_STATIC_RPC(pRakClient,Chat);
REGISTER_STATIC_RPC(pRakClient,RequestClass);
REGISTER_STATIC_RPC(pRakClient,RequestSpawn);
@ -123,8 +123,8 @@ void UnRegisterRPCs(RakClientInterface * pRakClient)
UNREGISTER_STATIC_RPC(pRakClient,Unk3B);
UNREGISTER_STATIC_RPC(pRakClient,Unk3D);
UNREGISTER_STATIC_RPC(pRakClient,Unk89);
UNREGISTER_STATIC_RPC(pRakClient,Unk8A);
UNREGISTER_STATIC_RPC(pRakClient,Unk8B);
UNREGISTER_STATIC_RPC(pRakClient,ServerQuit);
UNREGISTER_STATIC_RPC(pRakClient,Chat);
UNREGISTER_STATIC_RPC(pRakClient,Unk6B);
UNREGISTER_STATIC_RPC(pRakClient,Unk25);