- Added @users command to the IRC Bot. Checks no. online users.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6143 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
Zido 2006-04-17 23:03:58 +00:00
parent 5acf20e612
commit b8eb36637b
2 changed files with 22 additions and 8 deletions

View File

@ -4,6 +4,7 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/04/17
* Added @users to the IRC Bot, outputs the # of users online. [Zido]
* The baby check when wearing a tuxedo/dress now works [Zido]
* Fixed pet being incorrectly removed when it had intimacy 0. [Skotlex]
* Some cleanup in the TK_RUN related code. [Skotlex]

View File

@ -210,6 +210,10 @@ void irc_parse_sub(int fd, char *incoming_string)
char cmd1[256];
char cmd2[256];
char cmdname[256];
char cmdargs[256];
int users=0;
memset(source,'\0',256);
memset(command,'\0',256);
@ -219,6 +223,8 @@ void irc_parse_sub(int fd, char *incoming_string)
memset(cmd1,'\0',256);
memset(cmd2,'\0',256);
memset(cmdname,'\0',256);
memset(cmdargs,'\0',256);
sscanf(incoming_string, ":%255s %255s %255s :%4095[^\r\n]", source, command, target, message);
if (source != NULL) {
@ -263,15 +269,22 @@ void irc_parse_sub(int fd, char *incoming_string)
else if((strcmpi(target,irc_channel)==0)||(strcmpi(target,irc_channel+1)==0)) {
// Broadcast [Zido] (Work in Progress)
if((strcmpi(command,"privmsg")==0)&&(sscanf(message,"@kami %255[^\r\n]",cmd1)>0)&&(target[0]=='#')) {
if((strcmpi(command,"privmsg")==0)&&(sscanf(message,"@%s[^ ] %255[^\r\n]",cmdname,cmdargs)>0)&&(target[0]=='#')) {
if(strcmpi(cmdname,"kami")==0) {
if(get_access(source_nick)<ACCESS_OP)
sprintf(send_string,"NOTICE %s :Access Denied",source_nick);
else {
sscanf(cmdargs,"%255[^\r\n]",cmd1);
sprintf(send_string,"%s: %s",source_nick,cmd1);
intif_GMmessage(send_string,strlen(send_string)+1,0);
sprintf(send_string,"NOTICE %s :Message Sent",source_nick);
}
irc_send(send_string);
} else if(strcmpi(cmdname,"users")==0) {
map_getallusers(&users);
sprintf(send_string,"PRIVMSG %s :Users Online: %d",irc_channel,users);
irc_send(send_string);
}
}
// Refresh Names [Zido]