gameServer/Actions.hs
changeset 3671 a94d1dc4a8d9
parent 3658 113cb9345be1
child 3673 45778b16b224
equal deleted inserted replaced
3669:19be65b12c43 3671:a94d1dc4a8d9
     5 import Control.Concurrent.Chan
     5 import Control.Concurrent.Chan
     6 import qualified Data.IntSet as IntSet
     6 import qualified Data.IntSet as IntSet
     7 import qualified Data.Set as Set
     7 import qualified Data.Set as Set
     8 import qualified Data.Sequence as Seq
     8 import qualified Data.Sequence as Seq
     9 import System.Log.Logger
     9 import System.Log.Logger
    10 import Monad
    10 import Control.Monad
    11 import Data.Time
    11 import Data.Time
    12 import Maybe
    12 import Data.Maybe
    13 import Control.Monad.Reader
    13 import Control.Monad.Reader
    14 import Control.Monad.State
    14 import Control.Monad.State
    15 import qualified Data.ByteString.Char8 as B
    15 import qualified Data.ByteString.Char8 as B
    16 -----------------------------
    16 -----------------------------
    17 import CoreTypes
    17 import CoreTypes
   114                         --playersIDs = IntSet.delete ci (playersIDs r)
   114                         --playersIDs = IntSet.delete ci (playersIDs r)
   115                         playersIn = (playersIn r) - 1,
   115                         playersIn = (playersIn r) - 1,
   116                         readyPlayers = if ready then readyPlayers r - 1 else readyPlayers r
   116                         readyPlayers = if ready then readyPlayers r - 1 else readyPlayers r
   117                         }) ri
   117                         }) ri
   118 
   118 
   119         removeClient rnc ci
       
   120 
       
   121     modify (\s -> s{removedClients = ci `Set.insert` removedClients s})
   119     modify (\s -> s{removedClients = ci `Set.insert` removedClients s})
   122 
   120 
   123 processAction (DeleteClient ci) = do
   121 processAction (DeleteClient ci) = do
       
   122     rnc <- gets roomsClients
       
   123     liftIO $ removeClient rnc ci
   124     modify (\s -> s{removedClients = ci `Set.delete` removedClients s})
   124     modify (\s -> s{removedClients = ci `Set.delete` removedClients s})
   125 
   125 
   126 {-
   126 {-
   127     where
   127     where
   128         client = clients ! clID
   128         client = clients ! clID