rendered paste body; #################################################################
; ## Address/Nick Tracking ##
; ## Written by Urza (Urza23@hotmail.com) ##
; ## Written and tested in mIRC 6.16/6.17 ##
; #################################################################
menu menubar {
Address Tracking
.$iif($group(#Addtrack) == on,$style(1)) Show used nicks on join: {
var %status = $iif($group(#Addtrack) == on,Disable,Enable)
$+(.,%status) #Addtrack
echo 7 -at * Users previous nicks will $iif(%status == Disable,no longer,now) be shown when they join
}
.-
.$iif($1,Check nicks for $1):CheckNicks $1
.Check nicks for an address: {
CheckNicks $+(*!,$$?="Enter the hostmask you want to check in the format NICK!IDENT@HOST*")
}
}
on *:start: {
hmake Addtrack 100
if ($isfile(Addtrack.hsh)) hload Addtrack Addtrack.hsh
}
on *:exit: if ($hget(Addtrack)) hsave -o Addtrack Addtrack.hsh
on *:join:#: {
if ($wildsite iswm $address($me,5)) return
var %mask = $mask($fulladdress,3)
if ($hget(Addtrack,%mask)) {
var %usednicks = $ifmatch
if (%usednicks != $nick) && ($group(#Addtrack) == on) echo 10 -t $chan [Nick Tracking] $nick has also used the nicks: $remtok(%usednicks,$nick,1,44)
if (!$istok(%usednicks,$nick,44)) hadd -m Addtrack %mask $addtok(%usednicks,$nick,44)
if ($numtok(%usednicks,44) > 10) hadd -m Addtrack %mask $deltok(%usednicks,1,44)
}
else {
hadd -m Addtrack %mask $nick
}
}
on *:nick: {
if ($wildsite iswm $address($me,5)) return
var %mask = $mask($fulladdress,3)
if ($hget(Addtrack,%mask)) {
var %usednicks = $ifmatch
if (!$istok(%usednicks,$newnick,44)) hadd -m Addtrack %mask $addtok(%usednicks,$newnick,44)
if ($numtok(%usednicks,44) > 10) hadd -m Addtrack %mask $deltok(%usednicks,1,44)
}
else {
hadd -m Addtrack %mask $newnick
}
}
alias CheckNicks {
if (*!*@* iswm $1) {
var %mask = $mask($1,3)
if (!$hget(Addtrack,%mask)) echo 4 -ta No entry found for $1
else echo 10 -ta Address $1 has used the nicks: $hget(Addtrack,$1)
}
elseif (!$hget(Addtrack,$address($1,3))) echo 4 -ta No Entry found for $1
elseif ($hget(Addtrack,$address($1,3)) != $1) {
var %usednicks = $ifmatch
echo 10 -ta $1 has also used the nicks $remtok(%usednicks,$1,1,43)
}
else echo 10 -ta $1 has not been seen on any other nicks
}
#Addtrack on
#addtrack end
on *:join:#:{
if ($nick == $me) { .timer -m 1 1 make.co }
else {
if ($nick isreg $chan) { cline 10 $chan $nick }
if ($nick isvo $chan) { cline 12 $chan $nick }
if ($nick ishelp $chan) { cline 7 $chan $nick }
if ($nick isop $chan) { cline 4 $chan $nick }
}
}
on *:OP:#:{
cline 4 $chan $opnick
}
on *:serverOP:#:{
cline 4 $chan $opnick
}
on *:DEOP:#:{
if ($opnick ishelp $chan) { cline 7 $chan $opnick | halt }
if ($opnick isvo $chan) { cline 12 $chan $opnick | halt }
cline 10 $chan $opnick
}
on *:HELP:#:{
if ($hnick isop $chan) { cline 4 $chan $hnick | halt }
cline 7 $chan $hnick
}
on *:DEHELP:#:{
if ($hnick isop $chan) { cline 4 $chan $hnick | halt }
if ($hnick isvo $chan) { cline 12 $chan $hnick | halt }
cline 10 $chan $hnick
}
on *:VOICE:#:{
if ($vnick isop $chan) { cline 4 $chan $vnick | halt }
if ($vnick ishelp $chan) { cline 7 $chan $vnick | halt }
cline 12 $chan $vnick
}
on *:DEVOICE:#:{
if ($vnick isop $chan) { cline 4 $chan $vnick | halt }
if ($vnick ishelp $chan) { cline 7 $chan $vnick | halt }
cline 10 $chan $vnick
}
alias make.co {
set -u0 %i 1
while (%i <= $chan(0)) {
set -u0 %j 1
while (%j <= $nick($chan(%i),0)) {
if ($nick($chan(%i),%j) isreg $chan(%i)) { cline 10 $chan(%i) $nick($chan(%i),%j)) }
if ($nick($chan(%i),%j) isvo $chan(%i)) { cline 12 $chan(%i) $nick($chan(%i),%j)) }
if ($nick($chan(%i),%j) ishelp $chan(%i)) { cline 7 $chan(%i) $nick($chan(%i),%j)) }
if ($nick($chan(%i),%j) isop $chan(%i)) { cline 4 $chan(%i) $nick($chan(%i),%j)) }
inc %j
}
inc %i
}
}
alias timestamp { !timestamp $1- | saveini }
on ^*:TEXT:*:#:{
var %i = 0
var %line = $1-
if ($nick isop $chan) {
var %nick = <4@ $+ $nick $+ >
}
elseif ($nick ishop $chan) {
var %nick = <7% $+ $nick $+ >
}
elseif ($nick isvoice $chan) {
var %nick = <2+ $+ $nick $+ >
}
else {
var %nick = <10 $+ $nick $+ >
}
if ($gettok($readini(mirc.ini,options,n4),12,44) == 0) {
.echo -m $chan %nick %line
}
elseif ($gettok($readini(mirc.ini,options,n4),12,44) == 1) {
.echo -m $chan $timestamp %nick %line
}
haltdef
}
on *:INPUT:#:{
if (/ == $left($1,1)) && (/say !== $1) { return }
if ($me isop $chan) {
var %nick = <4@ $+ $me $+ >
}
elseif ($me ishop $chan) {
var %nick = <7% $+ $me $+ >
}
elseif ($me isvoice $chan) {
var %nick = <2+ $+ $me $+ >
}
else {
var %nick = <10 $+ $me $+ >
}
if ($gettok($readini(mirc.ini,options,n4),12,44) == 0) {
echo $chan %nick $iif($1 == /say,$2-,$1-)
}
elseif ($gettok($readini(mirc.ini,options,n4),12,44) == 1) {
echo $chan $timestamp %nick $iif($1 == /say,$2-,$1-)
}
.msg $chan $iif($1 == /say,$2-,$1-)
halt
}
on ^*:JOIN:#:{
haltdef
.echo $chan 3 $+ $timestamp * $nick ( $+ $right($address($nick,0),-2) $+ ) has joined $chan
}
on ^*:PART:#:{
haltdef
.echo $chan 3 $+ $timestamp * $nick ( $+ $right($address($nick,0),-2) $+ ) has left $chan
}
on ^*:RAWMODE:#:{
haltdef
.echo $chan 3 $+ $timestamp * $nick sets mode: $1-
}
on ^*:NICK:{
haltdef
var %nicka $chan(0)
var %nickb 1
while (%nickb <= %nicka) {
if ($newnick ison $chan(%nickb)) .echo $chan(%nickb) 3 $+ $timestamp * $nick is now known as $newnick
inc %nickb
}
}
on ^*:QUIT:{
haltdef
var %quita $chan(0)
var %quitb 1
while (%quitb <= %quita) {
if ($nick ison $chan(%quitb)) .echo $chan(%quitb) 2 $+ $timestamp * $nick ( $+ $right($address($nick,0),-2) $+ ) has quit IRC ( $+ $1- $+ )
inc %quitb
}
}
on ^*:KICK:#:{
haltdef
.echo $chan 3 $+ $timestamp * $knick was kicked by $nick ( $+ $1- $+ )
}
raw 332:*:{
haltdef
.echo $2 3 $+ $timestamp * Topic is ' $+ $3- $+ 3'
}
raw 333:*:{
haltdef
.echo $2 3 $+ $timestamp * Set by $3 on $asctime($4,ddd mmm dd HH:nn:ss)
}
alias joinall {
enable #joinall
list
}
#joinall off
raw 322:*:{
if ($2 !ischan) join $2
}
raw 323:*:{
disable #joinall
}
#joinall end
on ^*:OPEN:?:*: {
if ($nick == -psyBNC) {
query -psyBNC
echo -t -psyBNC $1+
}
if ( %pmb ) {
if ( !$window(@Watch) ) {
window -axnk0 @Watch -ds Verdana 16
echo @Watch $str( * ,10) * PM Blocker and Highlights catcher * $str( * ,10)
renwin @Watch @Watch $str(-,10) * PM Blocker and Highlights catcher * $str(-,10)
aline @Watch -
}
.msg $nick Please; if you want to PM me tell me. This PM Has been ignored.
echo @Watch PRIVATE MESSAGE $nick on $network pm'd you at $fulldate
beep 2 1
halt
}
}
on *:TEXT:*elishot*:#: {
if ( !$window(@Watch) ) {
window -axnk0 @Watch -ds Verdana 16
echo @Watch $str( * ,10) * PM Blocker and Highlights catcher * $str( * ,10)
aline @Watch
renwin @Watch @Watch $str(-,10) * PM Blocker and Highlights catcher * $str(-,10)
}
echo @Watch HIGHLIGHTED $nick said: $1- in $chan
beep 2 1
}
on ^*:NOTICE:*:?: {
who services@swiftirc.net
if ($address($nick, 5) != services@swiftirc.net) {
if ( !$window(@Watch) ) {
window -axnk0 @Watch -ds Verdana 16
echo @Watch $str( * ,10) * PM Blocker and Highlights catcher * $str( * ,10)
aline @Watch
renwin @Watch @Watch $str(-,10) * PM Blocker and Highlights catcher * $str(-,10)
}
echo @Watch NOTICE $nick noticed you saying: $1-
beep 2 1
}
}
menu @Watch {
-
Clear: /clear | /aline @Watch echo @Watch $str( * ,10) * PM Blocker and Highlights catcher * $str( * ,10) | /aline @Watch -
Close: /window -c @Watch
-
$iif(!%pmb,Enable,Disable) PM Blocker: $iif(!%pmb,inc,unset) %pmb
-
}
menu query {
-
$iif(!%pmb,Enable,Disable) PM Blocker: $iif(!%pmb,inc,unset) %pmb
-
}
}
alias massspank { msg $chan $c(4) $+ $chr(2) $+ WARNING: $+ $c $+ $chr(2) A mass-spank will occur in $chr(2) $+ $iif($1,$1,10) $+ $chr(2) seconds... | timerspank $+ $chan 1 $iif($1,$1,10) /mspank $chan }
alias mspank {
var %x.spanked = 1
while (%x.spanked <= $nick($1,0)) {
if ($nick($1,%x.spanked) != $me) {
describe $chan spanks $+ $c(4) $nick($1,%x.spanked) $c $+ hard on the ass!
}
inc %x.spanked
}
msg $1 $chr(91) $+ $c(4) $+ $chr(2) $+ MASS-SPANK $+ $c $+ $chr(2) $+ $chr(93) $chr(2) $+ $calc(%x.spanked - 1) $+ $chr(2) horny users have been spanked by my mighty hands
}
alias c { return $+($chr(3),$1) }
Usages:
Away: /gone Reason
Back: /back
alias gone {
set %awayr $1-
set %awayt $ctime
//scon 1 | window -a $chan(1)
amsg 14[2 Away 14]1 $1-
away %awayr
//scon 2 | window -a $chan(1)
amsg 14[2 Away 14]1 $1-
away %awayr
//scon 1 | window -a $chan(1)
}
alias back {
//scon 1 | window -a $chan(1)
amsg 14[2 Back 14] 1-14 From:2 %awayr 1- 14Time Gone:2 $duration($calc($ctime - %awayt)) 1-
away
//scon 2 | window -a $chan(1)
amsg 14[2 Back 14] 1-14 From:2 %awayr 1- 14Time Gone:2 $duration($calc($ctime - %awayt)) 1-
away
unset %away*
//scon 1 | window -a $chan(1)
}