gameServer/Actions.hs
changeset 8509 eda9f2106d8d
parent 8507 f4475782cf45
child 8510 0a39b2f9c748
equal deleted inserted replaced
8508:f849b7b3af1d 8509:eda9f2106d8d
   676 
   676 
   677 
   677 
   678 processAction CheckRecord = do
   678 processAction CheckRecord = do
   679     p <- client's clientProto
   679     p <- client's clientProto
   680     c <- client's sendChan
   680     c <- client's sendChan
   681     l <- io $ loadReplay (fromIntegral p)
   681     (cinfo, l) <- io $ loadReplay (fromIntegral p)
   682     when (not $ null l) $
   682     when (not . null $ l) $
   683         processAction $ AnswerClients [c] ("REPLAY" : l)
   683         mapM_ processAction [
   684 
   684             AnswerClients [c] ("REPLAY" : l)
   685 
   685             , ModifyClient $ \c -> c{checkInfo = cinfo}
   686 processAction CheckRecord = do
   686             ]
   687     p <- client's clientProto
   687 
   688     c <- client's sendChan
   688 processAction (CheckFailed msg) = do
   689     l <- io $ loadReplay (fromIntegral p)
   689     Just (CheckInfo fileName _) <- client's checkInfo
   690     when (not $ null l) $
   690     io $ moveFailedRecord fileName
   691         processAction $ AnswerClients [c] ("REPLAY" : l)
   691 
   692 
   692 processAction (CheckSuccess info) = do
   693 processAction (CheckFailed msg) = return ()
   693     Just (CheckInfo fileName _) <- client's checkInfo
   694 
   694     io $ moveCheckedRecord fileName
   695 processAction (CheckSuccess info) = return ()
       
   696 
   695 
   697 #else
   696 #else
   698 processAction SaveReplay = return ()
   697 processAction SaveReplay = return ()
   699 processAction CheckRecord = return ()
   698 processAction CheckRecord = return ()
   700 processAction (CheckFailed _) = return ()
   699 processAction (CheckFailed _) = return ()