Don't wait endlessly for player or avatar requests to complete if the other side does not have the required data. Send notifications and react accordingly.
This commit is contained in:
@@ -396,6 +396,12 @@ AbstractClientStateReceiving::Process(ClientThread &client)
|
||||
tmpPacket->ToNetPacketPlayerInfo()->GetData(infoData);
|
||||
client.SetPlayerInfo(infoData.playerId, infoData.playerInfo);
|
||||
}
|
||||
else if (tmpPacket->ToNetPacketUnknownPlayerId())
|
||||
{
|
||||
NetPacketUnknownPlayerId::Data unknownIdData;
|
||||
tmpPacket->ToNetPacketUnknownPlayerId()->GetData(unknownIdData);
|
||||
client.SetUnknownPlayer(unknownIdData.playerId);
|
||||
}
|
||||
else if (tmpPacket->ToNetPacketRemovedFromGame())
|
||||
{
|
||||
NetPacketRemovedFromGame::Data removedData;
|
||||
@@ -500,6 +506,12 @@ AbstractClientStateReceiving::Process(ClientThread &client)
|
||||
tmpPacket->ToNetPacketAvatarEnd()->GetData(endData);
|
||||
client.CompleteTempAvatarData(endData.requestId);
|
||||
}
|
||||
else if (tmpPacket->ToNetPacketUnknownAvatar())
|
||||
{
|
||||
NetPacketUnknownAvatar::Data unknownAvatarData;
|
||||
tmpPacket->ToNetPacketUnknownAvatar()->GetData(unknownAvatarData);
|
||||
client.SetUnknownAvatar(unknownAvatarData.requestId);
|
||||
}
|
||||
else if (tmpPacket->ToNetPacketError())
|
||||
{
|
||||
// Server reported an error.
|
||||
|
||||
Reference in New Issue
Block a user