gameServer/Actions.hs
changeset 3658 113cb9345be1
parent 3656 c74a4a407146
child 3671 a94d1dc4a8d9
equal deleted inserted replaced
3657:fa3bf50d0338 3658:113cb9345be1
   414 
   414 
   415 
   415 
   416 
   416 
   417 processAction PingAll = do
   417 processAction PingAll = do
   418     rnc <- gets roomsClients
   418     rnc <- gets roomsClients
       
   419     liftIO (allClientsM rnc) >>= mapM_ (kickTimeouted rnc)
   419     cis <- liftIO $ allClientsM rnc
   420     cis <- liftIO $ allClientsM rnc
   420     mapM_ (kickTimeouted rnc) $ cis
       
   421     chans <- liftIO $ mapM (client'sM rnc sendChan) cis
   421     chans <- liftIO $ mapM (client'sM rnc sendChan) cis
   422     liftIO $ mapM_ (modifyClient rnc (\cl -> cl{pingsQueue = pingsQueue cl + 1})) cis
   422     liftIO $ mapM_ (modifyClient rnc (\cl -> cl{pingsQueue = pingsQueue cl + 1})) cis
   423     processAction $ AnswerClients chans ["PING"]
   423     processAction $ AnswerClients chans ["PING"]
   424     where
   424     where
   425         kickTimeouted rnc ci = do
   425         kickTimeouted rnc ci = do