#ReDirect on
; [ Channel Events ]
;
on ^!*:JOIN:#: Redirect has joined $chan
on ^!*:PART:#: ReDirect has left $chan $iif($1,$+($chr(40),$1-,$chr(41)))
on ^*:QUIT: ReDirect has left IRC $iif($1,$+($chr(40),$1-,$chr(41)))
on ^*:KICK:#: ReDirect has kicked $knick ( $+ $address($knick,5),2,33) $+ ) ( $+ $1- $+ )
on ^*:TOPIC:#: ReDirect changes topic to: $1-
on ^*:NICK: ReDirect is now known as $newnick
; Since on RAWMODE will handle all channel mode changes in one line,
; halt all the other events like it, such as on OP.
on ^*:RAWMODE:#: ReDirect sets mode $chan $1-
on ^*:OP:#: halt
on ^*:DEOP:#: halt
on ^*:HELP:#: halt
on ^*:DEHELP:#: halt
on ^*:VOICE:#: halt
on ^*:DEVOICE:#: halt
on ^*:SERVEROP:#: halt
on ^*:MODE:#: halt
on ^*:BAN:#: halt
on ^*:UNBAN:#: halt
on ^*:SERVERMODE:#: halt
ctcp *:*:#:{
; If they're pinging the channel, return the ping value
;
if ($1 == PING) .ctcpreply $nick $1-
; Or if they're using a /sound command in a channel
;
elseif (($1 == SOUND) && ($gettok($readini($mircini,Options,n3),19,44))) {
; This portion would probably need to be worked on to add error checking
; such as checking for spaces or checking to see if the file doesn't exist.
;
if ((!$gettok($readini($mircini,Options,n3),20,44)) && (!$insong)) .splay $2-
}
ReDirect $1-
}
on ^*:INVITE:#: ReDirect invites you join $chan
; [ Raw Events ]
;
; This is the most basic way to get all the numeric reply information into the @Info window.
; These events include such things as /WHOIS or /WHO replies. The only problem with
; using this particular method for doing the raw events is that mIRC itself formats some
; things, such as idle times with $duration() or logged on since with $asctime() in a
; /WHOIS.
;
raw *:*: ReDirect $2-
; [ Other Events ]
on ^*:SNOTICE:*: ReDirect $1-
on ^*:DNS: ReDirect
on ^*:FILESENT:*: ReDirect successfully received $filename
on ^*:FILERCVD:*: ReDirect successfully sent you $filename
on ^*:GETFAIL:*: ReDirect failed to send $filename
on ^*:SENDFAIL: ReDirect failed to receive $filename
on ^*:NOTIFY: ReDirect has entered IRC
on ^*:UNOTIFY: ReDirect has left IRC
on ^*:USERMODE: ReDirect sets mode $1-
on ^*:WALLOPS: ReDirect $1-
#ReDirect End
; [ Alias ]
;
alias -l ReDirect {
; Make sure the @Info window is open before you try to echo to it.
;
if (!$window(@Info)) window -k @Info
; Differentiate between servers (which have no $address)
;
if ($event == DNS) {
echo $color(other) -bflirt @Info $&
ReDirect Resolved Adress: $iif($raddress,$raddress,Failed) «» $&
Named Address: $iif($naddress,$naddress,None.) «» $&
IP: $iif($iaddress,$iaddress,None.)
}
elseif (. isin $nick) echo $color($event) -bflirt @Info * $nick $2-
; and nicks (which do)
;
echo $color($event) -bflirt @Info * $nick ( $+ $address $+ ) $2-
; halting here halts the event that it was called from as well.
;
halt
}
; [ PopUp ]
;
; This popup allows you to turn the script on and off.
;
menu * {
-
$iif($group(#ReDirect).status == on,$style(1)) ReDirect:{
$iif($group(#ReDirect).status == on,.disable,.enable) #ReDirect
}
}