# HG changeset patch # User unc0rr # Date 1295983388 -10800 # Node ID adf64662b6a876a3610964b246d08c68b2441574 # Parent 6e747aef012f6b7f9f90b6ad79005106197269bf Send room config to client diff -r 6e747aef012f -r adf64662b6a8 gameServer/Actions.hs --- a/gameServer/Actions.hs Tue Jan 25 22:13:34 2011 +0300 +++ b/gameServer/Actions.hs Tue Jan 25 22:23:08 2011 +0300 @@ -188,6 +188,7 @@ processAction $ AnswerClients chans ["JOINED", clNick] + processAction (MoveToLobby msg) = do (Just ci) <- gets clientIndex ri <- clientRoomA diff -r 6e747aef012f -r adf64662b6a8 gameServer/HWProtoLobbyState.hs --- a/gameServer/HWProtoLobbyState.hs Tue Jan 25 22:13:34 2011 +0300 +++ b/gameServer/HWProtoLobbyState.hs Tue Jan 25 22:23:08 2011 +0300 @@ -90,10 +90,17 @@ AnswerClients [sendChan cl] $ "JOINED" : map nick jRoomClients ] ++ (map (readynessMessage cl) jRoomClients) + ++ (answerFullConfig cl $ params jRoom) - where + where readynessMessage cl c = AnswerClients [sendChan cl] [if isReady c then "READY" else "NOT_READY", nick c] + toAnswer cl (paramName, paramStrs) = AnswerClients [sendChan cl] $ "CFG" : paramName : paramStrs + + answerFullConfig cl params = map (toAnswer cl) (leftConfigPart ++ rightConfigPart) + where + (leftConfigPart, rightConfigPart) = partition (\(p, _) -> p /= "MAP") $ Map.toList params + {-