Using mIRC's raw numeric events, this script modifies the information that is shown when you do /whois or /whowas. Shows more info on the user.
;DeluXe Whois II - By Neo Nemesis
;whois script
raw 311:*: { echo -a $+ $color(whois) $+ - | echo -a 12*!*14 DeluXe Whois II 12*!*4 ( $+ $2 $+ )12 *!* | echo -a 4Hostmask: $+ $color(whois) *!*@ $+ $4 $+ | echo -a 4E-mail: $+ $color(whois) $3 $+ | echo -a 4Fullname: $+ $color(whois) $6- $+ | halt }
raw 307:*: { echo -a 4Registered: $+ $color(whois) $4- $+ | halt }
raw 319:*: { echo -a 4Channels: $+ $color(whois) $3- $+ | halt }
raw 312:*: { if (%whowas != $true) { echo -a 4Server: $+ $color(whois) $3 $+ | echo -a 4IRCd: $+ $color(whois) $4- $+ | halt } | elseif (%whowas == $true) { echo -a 4Server: $+ $color(whois) $3 | echo -a 4Date: $+ $color(whois) $4- | unset %whowas | halt } }
raw 317:*: { echo -a 4Idle time: $+ $color(whois) $duration($3) $+ | echo -a 4Sign on: $+ $color(whois) $asctime($4) $+ | halt }
raw 313:*: { echo -a 4IRCop: $+ $color(whois) $5- $+ | halt }
raw 310:*: { echo -a 4Helpful: $+ $color(info) $3- $+ | halt }
raw 309:*: { echo -a 4Language: $+ $color(info) $3- $+ | halt }
raw 325:*: { echo -a 4Language Filter: $+ $color(info) $3- $+ | halt }
raw 301:*: { echo -a 4Away: $+ $color(info) $3- $+ | halt }
raw 318:*: { echo -a 12*!*14 End of /whois 12*!* | echo -a $+ $color(whois) $+ - | halt }
raw 314:*: { %whowas = $true | echo -a $+ $color(whois) $+ - | echo -a 12*!*14 DeluXe Whowas 12*!*4 ( $+ $2 $+ )12 *!* | echo -a 4Hostkmask: $+ $color(whois) *!*@* $+ $4 $+ | echo -a 4E-mail: $+ $color(whois) $3 $+ | echo -a 4Fullname: $+ $color(whois) $6- | halt }
raw 406:*: { echo -a $+ $color(whois) $+ - | echo -a 12*!*14 $2 there was no such nickname. 12*!* | halt }
raw 369:*: { echo -a 12*!*14 End of /whowas 12*!* | echo -a $+ $color(whois) $+ - | halt }
raw 344:*: { echo -a 4SSL: $+ $color(whois) $4- $+ | halt }
raw 334:*: { if (interests isin $1-) { echo -a 4Interests: $+ $color(whois) $4- $+ } | elseif (location isin $1-) { echo -a 4Location: $+ $color(whois) $4- $+ } | elseif (occupation isin $1-) { echo -a 4Occupation: $+ $color(whois) $4- $+ } | halt }
raw 379:*: { echo -a 4User Modes: $+ $color(whois) $6- | halt }
raw 671:*: { echo -a 4Secure Connection: $+ $color(whois) $3- | halt }
raw 320:*: { echo -a 4Info: $+ $color(whois) $3- | halt }
raw 338:*: { echo -a 4IP: $+ $color(whois) $3- | halt }
raw 340:*: { echo -a 4IP: $+ $color(whois) $2- | halt }
Yeah, the command character switching is a good point...although I'm sure the vast majority of people leave it as /, I guess that means omitting the / in scripts does make it SLIGHTLY more compatible.
And yeah, the . prefix is only to make fewer things appear locally. It's good for some private /notices or /msgs that are script triggered (especially auto-identify. Something about seeing my password appear on the screen bugs me. :P). Also useful for /timer and file handling commands (/fopen and the rest) because nobody really wants to see hundreds of /fwrite notices outside of debugging. ;]
The . is for quietly executing a command. i.e.
on *:JOIN:#: {
if ($nick != $me) { .notice $nick Hello! Welcome to $chan }
}
That right there would quietly send a notice to $nick, where as /notice you would see the message on your screen being sent to $nick and with .notice you wouldn't see it on your screen at all. Now it still shows up on $nick's screen, obviously.
The . can be used on most commands to quiet their echoing default text. It can be used with /timer, /nick, etc. Any command that echoes default text to your window can be silenced with the . and if you want to use it outside of a script use //.timer etc.
By "minor syntactical deviation" I was implying that only a small number of characters varied. I'm not saying any way is right or wrong either, just that differences like "/echo" and "echo" both function the same in the script. Though I would personally opt for the shorter option, it should be up to whoever is writing it.