--- a/gameServer/HWProtoLobbyState.hs Fri Dec 13 00:00:49 2013 +0400
+++ b/gameServer/HWProtoLobbyState.hs Fri Dec 13 00:16:02 2013 +0400
@@ -79,18 +79,17 @@
(
MoveToRoom jRI
: ModifyClient (\c -> c{isJoinedMidGame = isJust $ gameInfo jRoom})
- : (AnswerClients [sendChan cl] $ "JOINED" : nicks)
: AnswerClients chans ["CLIENT_FLAGS", "-r", nick cl]
- : [AnswerClients [sendChan cl] $ ["CLIENT_FLAGS", "+h", nick $ fromJust owner] | isJust owner]
+ : [(AnswerClients [sendChan cl] $ "JOINED" : nicks) | not $ null nicks]
)
- ++ (if clientProto cl < 38 then map (readynessMessage cl) jRoomClients else [sendStateFlags cl jRoomClients])
+ ++ [AnswerClients [sendChan cl] ["CLIENT_FLAGS", "+h", nick $ fromJust owner] | isJust owner]
+ ++ [sendStateFlags cl jRoomClients | not $ null jRoomClients]
++ answerFullConfig cl jRoom
++ answerTeams cl jRoom
++ watchRound cl jRoom chans
- ++ []
+ ++ [AnswerClients [sendChan cl] ["CHAT", "[greeting]", greeting jRoom] | greeting jRoom /= ""]
where
- readynessMessage cl c = AnswerClients [sendChan cl] [if isReady c then "READY" else "NOT_READY", nick c]
sendStateFlags cl clients = AnswerClients [sendChan cl] . concat . intersperse [""] . filter (not . null) . concat $
[f "+r" ready, f "-r" unready, f "+g" ingame, f "-g" inroomlobby]
where