diff -r 6cb7330113d8 -r fc3cb23fd26f gameServer/HandlerUtils.hs --- a/gameServer/HandlerUtils.hs Fri Sep 23 12:47:47 2022 -0400 +++ b/gameServer/HandlerUtils.hs Tue Sep 27 14:59:03 2022 +0300 @@ -21,6 +21,7 @@ import Control.Monad.Reader import qualified Data.ByteString.Char8 as B import Data.List +import Data.Word import RoomsAndClients import CoreTypes @@ -74,6 +75,11 @@ let p = clientProto (rnc `client` ci) return . map sendChan . filter (\c -> clientProto c == p) . map (client rnc) $ allClients rnc +allChansProto :: Reader (ClientIndex, IRnC) [(ClientChan, Word16)] +allChansProto = do + (ci, rnc) <- ask + return . map ((\c -> (sendChan c, clientProto c)) . client rnc) $ allClients rnc + answerClient :: [B.ByteString] -> Reader (ClientIndex, IRnC) [Action] answerClient msg = liftM ((: []) . flip AnswerClients msg) thisClientChans