gameServer/HWProtoNEState.hs
changeset 3536 7d99655130ff
parent 3500 af8390d807d6
child 3538 b11ac2677e42
--- a/gameServer/HWProtoNEState.hs	Tue Jun 22 18:06:55 2010 +0200
+++ b/gameServer/HWProtoNEState.hs	Tue Jun 22 22:21:44 2010 +0400
@@ -31,6 +31,7 @@
     where
         haveSameNick irnc = False --isJust $ find (\cl -> newNick == nick cl) $ IntMap.elems clients
 
+
 handleCmd_NotEntered ["PROTO", protoNum] = do
     (ci, irnc) <- ask
     let cl = irnc `client` ci
@@ -47,18 +48,17 @@
                            Just (i, t) | B.null t -> fromIntegral i
                            otherwise -> 0
 
-{-
+
+handleCmd_NotEntered ["PASSWORD", passwd] = do
+    (ci, irnc) <- ask
+    let cl = irnc `client` ci
 
-handleCmd_NotEntered clID clients _ ["PASSWORD", passwd] =
-    if passwd == webPassword client then
-        [ModifyClient (\cl -> cl{logonPassed = True}),
-        MoveToLobby] ++ adminNotice
-    else
-        [ByeClient "Authentication failed"]
-    where
-        client = clients IntMap.! clID
-        adminNotice = [AnswerThisClient ["ADMIN_ACCESS"] | isAdministrator client]
+    if passwd == webPassword cl then
+        return $ JoinLobby : [AnswerClients [sendChan cl] ["ADMIN_ACCESS"] | isAdministrator cl]
+        else
+        return [ByeClient "Authentication failed"]
 
+{-
 
 handleCmd_NotEntered clID clients _ ["DUMP"] =
     if isAdministrator (clients IntMap.! clID) then [Dump] else []