diff -r cb9e07753802 -r 795f5f918c8c gameServer/Actions.hs --- a/gameServer/Actions.hs Wed Jan 22 23:42:41 2014 +0400 +++ b/gameServer/Actions.hs Thu Jan 23 00:07:27 2014 +0400 @@ -222,7 +222,7 @@ rnc <- gets roomsClients specialRoom <- io $ room'sM rnc isSpecial ri newMasterId <- if specialRoom then - return Nothing + delegateId else liftM (\ids -> fromMaybe (listToMaybe . reverse . filter (/= ci) $ ids) $ liftM Just delegateId) . io $ roomClientsIndicesM rnc ri newMaster <- io $ client'sM rnc id `DT.mapM` newMasterId