gameServer/HWProtoLobbyState.hs
changeset 1905 b1ec8db513f2
parent 1871 ce5854fbc631
child 1925 ec923e56c444
equal deleted inserted replaced
1904:20348675b015 1905:b1ec8db513f2
    39 	[AnswerOthersInRoom ["CHAT", clientNick, msg]]
    39 	[AnswerOthersInRoom ["CHAT", clientNick, msg]]
    40 	where
    40 	where
    41 		clientNick = nick $ clients IntMap.! clID
    41 		clientNick = nick $ clients IntMap.! clID
    42 
    42 
    43 
    43 
    44 handleCmd_lobby clID clients rooms ["CREATE", newRoom, roomPassword] =
    44 handleCmd_lobby clID clients rooms ["CREATE_ROOM", newRoom, roomPassword] =
    45 	if haveSameRoom then
    45 	if haveSameRoom then
    46 		[Warning "Room exists"]
    46 		[Warning "Room exists"]
    47 	else
    47 	else
    48 		[RoomRemoveThisClient, -- leave lobby
    48 		[RoomRemoveThisClient, -- leave lobby
    49 		AddRoom newRoom roomPassword,
    49 		AddRoom newRoom roomPassword,
    52 	where
    52 	where
    53 		clientNick = nick $ clients IntMap.! clID
    53 		clientNick = nick $ clients IntMap.! clID
    54 		haveSameRoom = isJust $ find (\room -> newRoom == name room) $ IntMap.elems rooms
    54 		haveSameRoom = isJust $ find (\room -> newRoom == name room) $ IntMap.elems rooms
    55 
    55 
    56 
    56 
    57 handleCmd_lobby clID clients rooms ["CREATE", newRoom] =
    57 handleCmd_lobby clID clients rooms ["CREATE_ROOM", newRoom] =
    58 	handleCmd_lobby clID clients rooms ["CREATE", newRoom, ""]
    58 	handleCmd_lobby clID clients rooms ["CREATE_ROOM", newRoom, ""]
    59 
    59 
    60 
    60 
    61 handleCmd_lobby clID clients rooms ["JOIN", roomName, roomPassword] =
    61 handleCmd_lobby clID clients rooms ["JOIN_ROOM", roomName, roomPassword] =
    62 	if noSuchRoom then
    62 	if noSuchRoom then
    63 		[Warning "No such room"]
    63 		[Warning "No such room"]
    64 	else if isRestrictedJoins jRoom then
    64 	else if isRestrictedJoins jRoom then
    65 		[Warning "Joining restricted"]
    65 		[Warning "Joining restricted"]
    66 	else if roomPassword /= password jRoom then
    66 	else if roomPassword /= password jRoom then
   104 				answerAllTeams (teamsAtStart jRoom)
   104 				answerAllTeams (teamsAtStart jRoom)
   105 			else
   105 			else
   106 				answerAllTeams (teams jRoom)
   106 				answerAllTeams (teams jRoom)
   107 
   107 
   108 
   108 
   109 handleCmd_lobby clID clients rooms ["JOIN", roomName] =
   109 handleCmd_lobby clID clients rooms ["JOIN_ROOM", roomName] =
   110 	handleCmd_lobby clID clients rooms ["JOIN", roomName, ""]
   110 	handleCmd_lobby clID clients rooms ["JOIN_ROOM", roomName, ""]
   111 
   111 
   112 
   112 
   113 handleCmd_lobby clID clients rooms ["KICK", kickNick] =
   113 handleCmd_lobby clID clients rooms ["KICK", kickNick] =
   114 	if not $ isAdministrator client then
   114 	if not $ isAdministrator client then
   115 		[]
   115 		[]