diff -r 27fb500dd6b1 -r d65d438acd23 gameServer/HWProtoLobbyState.hs --- a/gameServer/HWProtoLobbyState.hs Tue Feb 08 02:43:07 2011 +0100 +++ b/gameServer/HWProtoLobbyState.hs Tue Feb 08 22:24:30 2011 +0300 @@ -42,7 +42,10 @@ nick $ irnc `client` masterID r, head (Map.findWithDefault ["+gen+"] "MAP" (params r)), head (Map.findWithDefault ["Default"] "SCHEME" (params r)), - head (Map.findWithDefault ["Default"] "AMMO" (params r)) + head (Map.findWithDefault ["Default"] "AMMO" (params r)), + head (Map.findWithDefault ["Default"] "SCHEME" (params r)), + head (Map.findWithDefault ["0"] "MAPGEN" (params r)), + head (Map.findWithDefault ["seed"] "SEED" (params r)) ] @@ -102,9 +105,10 @@ toAnswer cl (paramName, paramStrs) = AnswerClients [sendChan cl] $ "CFG" : paramName : paramStrs - answerFullConfig cl pr = map (toAnswer cl) (leftConfigPart ++ rightConfigPart) - where - (leftConfigPart, rightConfigPart) = partition (\(p, _) -> p /= "MAP") $ Map.toList pr + answerFullConfig cl pr = map (toAnswer cl) $ + ("FULLMAPCONFIG", concatMap ((Map.!) pr) ["MAP", "MAPGEN", "SEED"]) + : ("SCHEME", pr Map.! "SCHEME") + : (filter (\(p, _) -> p /= "SCHEME" && p /= "MAP" && p /= "MAPGEN" && p /= "SEED") $ Map.toList pr) answerTeams cl jRoom = let f = if gameinprogress jRoom then teamsAtStart else teams in answerAllTeams cl $ f jRoom