equal
deleted
inserted
replaced
123 minimum [hhnum $ head roomTeams, canAddNumber roomTeams] |
123 minimum [hhnum $ head roomTeams, canAddNumber roomTeams] |
124 else |
124 else |
125 defaultHedgehogsNumber rm |
125 defaultHedgehogsNumber rm |
126 let newTeam = clNick `seq` TeamInfo clNick tName teamColor grave fort voicepack flag isRegistered dif hhNum (hhsList hhsInfo) |
126 let newTeam = clNick `seq` TeamInfo clNick tName teamColor grave fort voicepack flag isRegistered dif hhNum (hhsList hhsInfo) |
127 return $ |
127 return $ |
128 if not . null . drop (maxTeams rm - 1) $ roomTeams then |
128 if not . null . drop (teamsNumberLimit rm) $ roomTeams then |
129 [Warning $ loc "too many teams"] |
129 [Warning $ loc "too many teams"] |
130 else if canAddNumber roomTeams <= 0 then |
130 else if canAddNumber roomTeams <= 0 then |
131 [Warning $ loc "too many hedgehogs"] |
131 [Warning $ loc "too many hedgehogs"] |
132 else if isJust $ findTeam rm then |
132 else if isJust $ findTeam rm then |
133 [Warning $ loc "There's already a team with same name in the list"] |
133 [Warning $ loc "There's already a team with same name in the list"] |
387 handleCmd_inRoom ("RND":rs) = do |
387 handleCmd_inRoom ("RND":rs) = do |
388 n <- clientNick |
388 n <- clientNick |
389 s <- roomClientsChans |
389 s <- roomClientsChans |
390 return [AnswerClients s ["CHAT", n, B.unwords $ "/rnd" : rs], Random s rs] |
390 return [AnswerClients s ["CHAT", n, B.unwords $ "/rnd" : rs], Random s rs] |
391 |
391 |
|
392 |
|
393 handleCmd_inRoom ["MAXTEAMS", n] = roomAdminOnly $ do |
|
394 cl <- thisClient |
|
395 let m = readInt_ n |
|
396 if m < 2 || m > 8 then |
|
397 return [AnswerClients [sendChan cl] ["CHAT", "[server]", loc "/maxteams: specify number from 2 to 8"]] |
|
398 else |
|
399 return [ModifyRoom (\r -> r{teamsNumberLimit = m})] |
|
400 |
392 handleCmd_inRoom ["FIX"] = serverAdminOnly $ |
401 handleCmd_inRoom ["FIX"] = serverAdminOnly $ |
393 return [ModifyRoom (\r -> r{isSpecial = True})] |
402 return [ModifyRoom (\r -> r{isSpecial = True})] |
394 |
403 |
395 handleCmd_inRoom ["UNFIX"] = serverAdminOnly $ |
404 handleCmd_inRoom ["UNFIX"] = serverAdminOnly $ |
396 return [ModifyRoom (\r -> r{isSpecial = False})] |
405 return [ModifyRoom (\r -> r{isSpecial = False})] |