Better calculation of LUSERS

git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3575 e03df62e-2008-0410-955e-edbf42e46eb7
This commit is contained in:
brain 2006-03-09 01:09:44 +00:00
parent 412ab8a25a
commit caeaab573d

View File

@ -2958,19 +2958,21 @@ class ModuleSpanningTree : public Module
void HandleLusers(char** parameters, int pcnt, userrec* user)
{
unsigned int n_users = usercnt();
/* Only update these when someone wants to see them, more efficient */
if ((unsigned int)local_count() > max_local)
max_local = local_count();
if (clientlist.size() > max_global)
max_global = clientlist.size();
if (n_users > max_global)
max_global = n_users;
WriteServ(user->fd,"251 %s :There are %d users and %d invisible on %d servers",user->nick,usercnt()-usercount_invisible(),usercount_invisible(),this->CountServs());
WriteServ(user->fd,"251 %s :There are %d users and %d invisible on %d servers",user->nick,n_users-usercount_invisible(),usercount_invisible(),this->CountServs());
WriteServ(user->fd,"252 %s %d :operator(s) online",user->nick,usercount_opers());
WriteServ(user->fd,"253 %s %d :unknown connections",user->nick,usercount_unknown());
WriteServ(user->fd,"254 %s %d :channels formed",user->nick,chancount());
WriteServ(user->fd,"254 %s :I have %d clients and %d servers",user->nick,local_count(),this->CountLocalServs());
WriteServ(user->fd,"265 %s :Current Local Users: %d Max: %d",user->nick,local_count(),max_local);
WriteServ(user->fd,"266 %s :Current Global Users: %d Max: %d",user->nick,usercnt(),max_global);
WriteServ(user->fd,"266 %s :Current Global Users: %d Max: %d",user->nick,n_users,max_global);
return;
}