menu channel,menubar,nicklist {
Address Tracking
.$iif($group(#Addtrack) == on,$style(1)) Show used nicks on join: {
var %status = $iif($group(#Addtrack) == on,Disable,Enable)
$+(.,%status) #Addtrack
echo 6 -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 6 -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 6 -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 6 -ta $1 has also used the nicks $remtok(%usednicks,$1,1,43)
}
else echo 6 -ta $1 has not been seen on any other nicks
}
#Addtrack on
#addtrack end
alias clonescan {
if ((%waitscan) || (%clonescan)) { echo -a Please wait for your previous scan to finish before starting a new scan. | return }
if ($left($1,1) == $chr(35)) set %scanchan $1
elseif ($chan) set %scanchan $chan
else { echo -a You must either use this command on a channel, or specify a channel. | return }
set %clonescan 1
if ($hget(clonescan)) hfree clonescan
hmake clonescan 30
.who %scanchan
}
alias ircopscan {
if ((%waitscan) || (%clonescan)) { echo -a Please wait for your previous scan to finish before starting a new scan. | return }
if ($left($1,1) == $chr(35)) set %scanchan $1
elseif ($chan) set %scanchan $chan
else { echo -a You must either use this command on a channel, or specify a channel. | return }
set %waitscan 1
if ($hget(ircopscan)) hfree ircopscan
hmake ircopscan 10
.who %scanchan
}
raw 352:*: {
if (%waitscan) {
if ($chr(42) isin $7) {
hadd ircopscan n $calc($hget(ircopscan,n) + 1)
hadd ircopscan $hget(ircopscan,n) $6
}
hadd ircopscan t $calc($hget(ircopscan,t) + 1)
haltdef
}
elseif (%clonescan) {
if ($numtok($hget(clonescan,$4),32) == 1) {
hadd clonescan n $calc($hget(clonescan,n) + 1)
hadd clonescan $hget(clonescan,n) $4
}
hadd clonescan $4 $addtok($hget(clonescan,$4),$6,32)
hadd clonescan t $calc($hget(clonescan,t) + 1)
haltdef
}
}
raw 315:*: {
if (%waitscan) {
linesep $active
echo -a || $+ $str(=,18) IRC Operators - Channel %scanchan $str(=,18) $+ ||
if (!$hget(ircopscan,n)) echo -a || No IRCOps present.
else {
var %curop = 1
while ($hget(ircopscan,%curop)) {
if ($calc($len(%sayop) + $len($hget(ircopscan,%curop)) + 3 - $len(%scanchan)) > 63) {
echo -a || %sayop $+ $chr(44)
unset %sayop
}
set %sayop %sayop $+ $iif(%sayop == $null,$hget(ircopscan,%curop),$chr(44) $hget(ircopscan,%curop))
inc %curop
}
echo -a || %sayop
echo -a || ~ $+ $calc(%curop - 1) $+ ~ IRCOps found out of ~ $+ $hget(ircopscan,t) $+ ~ total users. (~ $+ $round($calc((%curop - 1) * 100 / $hget(ircopscan,t)),2) $+ $chr(37) $+ ~ IRCOps)
}
echo -a || $+ $str(=,16) End Of IRCOp Scan - Channel %scanchan $str(=,16) $+ ||
unset %waitscan | unset %sayop
haltdef
}
elseif (%clonescan) {
linesep $active
echo -a || $+ $str(=,19) Clone Scan - Channel %scanchan $str(=,20) $+ ||
if ($hget(clonescan,1) == $null) echo -a || No clones found.
else {
var %clones,%curclone,%curhost = 1
while ($hget(clonescan,%curhost)) {
%curclone = 1
while ($gettok($hget(clonescan,$hget(clonescan,%curhost)),%curclone,32)) {
echo -a || $hget(clonescan,%curhost) - $gettok($hget(clonescan,$hget(clonescan,%curhost)),%curclone,32)
inc %clones | inc %curclone
}
inc %curhost
}
echo -a || ~ $+ %clones $+ ~ clones found on ~ $+ $calc(%curhost - 1) $+ ~ cloned hosts.
echo -a || Total ~ $+ $hget(clonescan,t) $+ ~ users on %scanchan $+ . (~ $+ $round($calc(%clones * 100 / $hget(clonescan,t)),2) $+ $chr(37) $+ ~ clones)
}
echo -a || $+ $str(=,17) End Clone Scan - Channel %scanchan $str(=,18) $+ ||
unset %clonescan
}
}
alias channels {
var %i = 1
while (%i <= $chan(0)) {
if ($me isop $chan(%i)) { var %channels %channels @ $+ $chan(%i) }
if ($me isvoice $chan(%i)) && ($me !isop $chan(%i)) { var %channels %channels + $+ $chan(%i) }
if ($me isreg $chan(%i)) { var %channels %channels $chan(%i) }
inc %i
}
say %channels
}
menu channel,menubar,query {
Channels:/channels
}
alias cchans {
if (!$ial($address($1,2))) {
echo -a The person you have specified is not in your IAL.
halt
}
elseif ($comchan($1,0) == 0 && $ial($address($1,2))) {
msg $active I am not on any common channels with $1
halt
}
else {
var %x = 1
while (%x <= $comchan($1,0)) {
var %comchan = %comchan $comchan($1,%x)
inc %x
}
msg $active I am on a total of $comchan($1,0) common channels with $1 $+ . These channels are: %comchan
}
}
alias pm {
var %qc = $query(0)
var %q.c = 1
while (%q.c <= %qc) {
if (!%qs) { set %qs $query(1) - | inc %q.c }
if (%q.c == %qc) { set %q.temp %qs $query(%q.c) | set %qs %q.temp | inc %q.c }
else { set %q.temp %qs $query(%q.c) - | set %qs %q.temp | inc %q.c }
}
msg $active I am currently talking to: $iif(%qs,%qs,Noone at the momment : $+ $chr(40) $+ )
unset %qs
unset %q.temp
}
alias dustdevil {
msg $chan Dust Devil's are a Level 93 Slayer Monsters. You need 65 Slayer to kill them, and must have started the Desert Treasure Quest to access them. Dust Devils are located in the Smokey Well, deep in the Kharidian Desert.