# HG changeset patch # User unc0rr # Date 1317302725 -14400 # Node ID d59745e525ec32b2c973b58dd0f8b473f29d7254 # Parent e18713ecf1e0a00b8112b82e343951bcc4894c04 GameInfo needs room params copy diff -r e18713ecf1e0 -r d59745e525ec gameServer/CoreTypes.hs --- a/gameServer/CoreTypes.hs Tue Sep 27 19:27:19 2011 +0400 +++ b/gameServer/CoreTypes.hs Thu Sep 29 17:25:25 2011 +0400 @@ -69,10 +69,12 @@ roundMsgs :: Seq B.ByteString, leftTeams :: [B.ByteString], teamsAtStart :: [TeamInfo], - allPlayersHaveRegisteredAccounts :: Bool - } + allPlayersHaveRegisteredAccounts :: Bool, + giMapParams :: Map.Map B.ByteString B.ByteString, + giParams :: Map.Map B.ByteString [B.ByteString] + } deriving (Show, Read) -newGameInfo :: Bool -> GameInfo +--newGameInfo :: -> GameInfo newGameInfo = GameInfo Data.Sequence.empty diff -r e18713ecf1e0 -r d59745e525ec gameServer/EngineInteraction.hs --- a/gameServer/EngineInteraction.hs Tue Sep 27 19:27:19 2011 +0400 +++ b/gameServer/EngineInteraction.hs Thu Sep 29 17:25:25 2011 +0400 @@ -6,7 +6,8 @@ import qualified Codec.Binary.Base64 as Base64 import qualified Data.ByteString.Char8 as B import qualified Data.ByteString as BW - +------------- +import CoreTypes toEngineMsg :: B.ByteString -> B.ByteString @@ -30,3 +31,9 @@ legalMessages = Set.fromList $ "M#+LlRrUuDdZzAaSjJ,sFNpPwtghbc12345" ++ slotMessages slotMessages = "\128\129\130\131\132\133\134\135\136\137\138" +gameInfo2Replay :: GameInfo -> B.ByteString +gameInfo2Replay GameInfo{roundMsgs = rm, + teamsAtStart = teams, + params1 = giMapParams, + params2 = giParams} = do + diff -r e18713ecf1e0 -r d59745e525ec gameServer/HWProtoInRoomState.hs --- a/gameServer/HWProtoInRoomState.hs Tue Sep 27 19:27:19 2011 +0400 +++ b/gameServer/HWProtoInRoomState.hs Thu Sep 29 17:25:25 2011 +0400 @@ -179,7 +179,7 @@ return [ ModifyRoom (\r -> r{ - gameInfo = Just $ newGameInfo allPlayersRegistered + gameInfo = Just $ newGameInfo allPlayersRegistered (mapParams rm) (params rm) } ), AnswerClients chans ["RUN_GAME"]