# HG changeset patch # User unc0rr # Date 1361395598 -14400 # Node ID 81630d47dc0f6bfe2e2e97c6b7ce09b04778b89e # Parent f13ae07d82d782672ce49508eda405ada0a54683 Found another possible source of desync, trying similar workaround on this diff -r f13ae07d82d7 -r 81630d47dc0f gameServer/HWProtoInRoomState.hs --- a/gameServer/HWProtoInRoomState.hs Thu Feb 21 00:15:11 2013 +0400 +++ b/gameServer/HWProtoInRoomState.hs Thu Feb 21 01:26:38 2013 +0400 @@ -77,9 +77,11 @@ SendUpdateOnThisRoom, ModifyClient (\c -> c{teamsInGame = teamsInGame c + 1, clientClan = Just teamColor}), AnswerClients clChan ["TEAM_ACCEPTED", tName], - AnswerClients clChan ["HH_NUM", tName, showB $ hhnum newTeam], AnswerClients othChans $ teamToNet $ newTeam, - AnswerClients roomChans ["TEAM_COLOR", tName, teamColor] + AnswerClients roomChans ["TEAM_COLOR", tName, teamColor], + ModifyClient $ \c -> c{actionsPending = actionsPending cl + ++ AnswerClients clChan ["HH_NUM", tName, showB $ hhnum newTeam]}, + AnswerClients [sendChan cl] ["PING"] ] where canAddNumber rt = (48::Int) - (sum $ map hhnum rt)