gameServer/HWProtoCore.hs
branchserver_refactor
changeset 4614 26661bf28dd5
parent 4612 e82758d6f924
child 4904 0eab727d4717
equal deleted inserted replaced
4612:e82758d6f924 4614:26661bf28dd5
     1 {-# LANGUAGE OverloadedStrings #-}
     1 {-# LANGUAGE OverloadedStrings #-}
     2 module HWProtoCore where
     2 module HWProtoCore where
     3 
     3 
     4 import Control.Monad.Reader
     4 import Control.Monad.Reader
     5 import Data.Maybe
     5 import Data.Maybe
     6 import Data.List
       
     7 import qualified Data.ByteString.Char8 as B
     6 import qualified Data.ByteString.Char8 as B
     8 --------------------------------------
     7 --------------------------------------
     9 import CoreTypes
     8 import CoreTypes
    10 import Actions
     9 import Actions
    11 import HWProtoNEState
    10 import HWProtoNEState
    41         handleCmd_NotEntered cmd
    40         handleCmd_NotEntered cmd
    42 
    41 
    43 
    42 
    44 handleCmd_loggedin ["INFO", asknick] = do
    43 handleCmd_loggedin ["INFO", asknick] = do
    45     (_, rnc) <- ask
    44     (_, rnc) <- ask
    46     let allClientIDs = allClients rnc
    45     maybeClientId <- clientByNick asknick
    47     let maybeClientId = find (\clId -> asknick == nick (client rnc clId)) allClientIDs
       
    48     let noSuchClient = isNothing maybeClientId
    46     let noSuchClient = isNothing maybeClientId
    49     let clientId = fromJust maybeClientId
    47     let clientId = fromJust maybeClientId
    50     let cl = rnc `client` fromJust maybeClientId
    48     let cl = rnc `client` fromJust maybeClientId
    51     let roomId = clientRoom rnc clientId
    49     let roomId = clientRoom rnc clientId
    52     let clRoom = room rnc roomId
    50     let clRoom = room rnc roomId