Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;AKA Nick Tracker by Ford_Lawnmower irc.mindforge.org #USA-Chat
- ;*****************************************************************************;
- ;**Start Setup
- ;Change JoinDisplay, below, for On Join AKA Display. On = 1 - Off = 0
- alias -l JoinDisplay { return 1 }
- ;Change MaxNicks, below, to the number of nicknames you want to store for each hostmask. I wouldn't go over 400 with this ;/
- alias -l MaxNicks { return 20 }
- ;Change AKALogo, below, To the text you want displayed before each AKA result.
- alias -l AKALogo { return 06 05A06K07A 06 }
- ;**End Setup
- ;*****************************************************************************;
- On *:Join:#: {
- if ($nick == $me) { .enable #AKAInit | who $chan }
- NickNamesAdd $nick $+($network,$wildsite)
- if ($JoinDisplay) { .timerNickNames $+ $nick 1 2 NickNames.display $nick $chan $network $wildsite }
- }
- on *:Nick: { NickNamesAdd $newnick $+($network,$wildsite) $nick }
- alias -l NickNames.display {
- if ($gettok($hget(NickNames,$+($3,$4)),0,126) > 1) {
- echo -g $2 $AKALogo $+(09,$1) $AKALogo 07 $mid($replace($hget(NickNames,$+($3,$4)),$chr(126),$chr(44)),2,-1)
- }
- }
- alias -l NickNamesAdd {
- if ($hget(NickNames,$2)) {
- if (!$regex($hget(NickNames,$2),/~\Q $+ $1 $+ \E~/i)) {
- if ($gettok($hget(NickNames,$2),0,126) <= $MaxNicks) {
- hadd NickNames $2 $+($hget(NickNames,$2),$1,~)
- }
- else {
- hadd NickNames $2 $+($mid($hget(NickNames,$2),$pos($hget(NickNames,$2),~,2)),$1,~)
- }
- }
- }
- else {
- hadd -m NickNames $2 $+(~,$1,~,$iif($3,$+($3,~)))
- }
- }
- alias -l Fix.All.MindUser {
- var %Fix.Count = $hfind(NickNames,/[^~]+[0-9]{4}[~$]/,0,r).data
- while (%Fix.Count) {
- if ($Fix.MindUser($hget(NickNames,$hfind(NickNames,/[^~]+[0-9]{4}[~$]/,%Fix.Count,r).data))) {
- echo -ag Record %Fix.Count - $v1 - Was Cleaned
- hadd NickNames $hfind(NickNames,/[^~]+[0-9]{4}[~$]/,%Fix.Count,r).data $v1
- }
- dec %Fix.Count
- }
- }
- alias -l Fix.MindUser { return $regsubex($1,/[^~]+[0-9]{4}[~$]/g,$null) }
- menu nicklist {
- -
- .AKA
- ..Check $$1: {
- if ($gettok($hget(NickNames,$+($network,$address($1,2))),0,126) > 1) {
- NickNames.display $1 $active $network $address($1,2)
- }
- else { echo -ag $AKALogo $+(09,$1) 07has not been known by any other nicknames while I have been watching. }
- }
- ..Cleanup $$1:hadd NickNames $+($network,$address($1,2)) $fix.minduser($hget(NickNames,$+($network,$address($1,2))))
- ..Clear $$1:hadd NickNames $+($network,$address($1,2)) $+(~,$1,~)
- ..AKA Search Dialog:dialog $iif($dialog(AKA_Search),-v,-m) AKA_Search AKA_Search
- -
- }
- menu status,channel {
- -
- .AKA
- ..AKA Search Dialog:dialog $iif($dialog(AKA_Search),-v,-m) AKA_Search AKA_Search
- ..Clean All Records:Fix.All.Minduser
- -
- }
- dialog AKA_Search {
- title "AKA Search Engine"
- size -1 -1 206 221
- option dbu
- edit "", 1, 8 5 149 10, autohs
- button "Search", 2, 163 4 32 12
- radio "Search HostMask", 4, 61 22 55 10
- radio "Search Nicknames", 5, 123 22 56 10
- list 6, 8 38 190 169, sort extsel vsbar
- button "Check Selected", 7, 67 206 40 12
- button "Close", 8, 160 206 38 12, cancel
- box "Search Type", 3, 11 17 183 18
- button "Copy to Clipboard", 9, 111 206 46 12
- }
- On *:Dialog:Aka_Search:init:*: { did -c $dname 5 }
- On *:Dialog:Aka_Search:Sclick:2,7,9: {
- if ($did == 2) && ($did($dname,1)) {
- did -r $dname 6
- var %search $+(*,$v1,*), %type $iif($did($dname,5).state,data,item), %matches = $hfind(NickNames,%search,0,w). [ $+ [ %type ] ]
- while (%matches) {
- did -a $dname 6 $hfind(NickNames,%search,%matches,w). [ $+ [ %type ] ]
- dec %matches
- }
- did -c $dname 6 1
- }
- elseif ($did == 7) && ($did($dname,6).seltext) { echo -ga $AKALogo 07 $mid($replace($hget(NickNames,$v1),$chr(126),$chr(44)),2,-1) }
- elseif ($did == 9) && ($did($dname,6).seltext) { clipboard $mid($v1,$pos($v1,*,1)) }
- }
- On *:Start:{
- if (!$hget(NickNames)) { hmake NickNames 10 }
- if ($isfile(NickNames.hsh)) { hload NickNames NickNames.hsh }
- }
- On *:Exit: { if ($hget(NickNames)) { hsave NickNames NickNames.hsh } }
- On *:Disconnect: { if ($hget(NickNames)) { hsave NickNames NickNames.hsh } }
- On *:Unload: { hfree NickNames }
- #AKAInit Off
- Raw 352:*: { haltdef | NickNamesAdd $6 $+($network,$address($6,2)) }
- Raw 315:*: { haltdef | .disable #AKAInit }
- #AKAInit End
- menu Channel,Status {
- .AKA
- ..$iif($group(#HostInfo) == On,$style(1)) HostInfo Trigger
- ...$iif($group(#HostInfo) == On,$style(2)) On: .enable #HostInfo
- ...$iif($group(#HostInfo) == Off,$style(2)) Off: .disable #HostInfo
- }
- #HostInfo on
- On $*:Text:/^(\+|-|!|@)(HostInfo|NickInfo).*/Si:#: {
- var %action $regml(1), %trigger $regml(2), %check $strip($2)
- if (%action isin +-) && ($regex($nick($chan,$nick).pnick,/(!|~|&|@)/)) {
- if (%action == +) {
- if ($istok(%HostInfoChanList,$+($network,$chan),32)) { .msg $chan $nick $chan is already running the HostInfo script }
- else {
- .enable #HostInfo
- Set %HostInfoChanList $addtok(%HostInfoChanList,$+($network,$chan),32)
- .msg $chan $nick has activated the HostInfo script for $chan .
- }
- }
- else {
- if (!$istok(%HostInfoChanList,$+($network,$chan),32)) { .msg $chan $nick $chan is not running the HostInfo script }
- else {
- Set %HostInfoChanList $remtok(%HostInfoChanList,$+($network,$chan),1,32)
- .msg $chan $nick has deactivated the HostInfo script for $chan .
- }
- }
- }
- elseif (!$timer($+(HostInfo,$network,$nick))) && ($istok(%HostInfoChanList,$+($network,$chan),32)) {
- .timer $+ $+(HostInfo,$network,$nick) 1 6 noop
- var %method $iif(%action == !,.notice $nick,$iif($regex($nick($chan,$nick).pnick,/(!|~|&|@|%)/),.msg $chan,.notice $nick))
- put %method %trigger Results for %check : $iif($($+($,%trigger,$chr(40),%check,$chr(41)),2),$v1, None)
- }
- }
- #HostInfo End
- alias -l Put {
- if (!$regex($1,/(\.|^)(msg|notice|echo)$/Si)) || (!$3) { echo -st **Put error** Syntax /Put msg #channel text - or - /Put notice nickname text | return }
- var %tokens $0, %Tstart 3, %Dtimer 1500
- if ($timer($+(Put,$2,$network)).secs) { %Dtimer = $calc($v1 * 1000) }
- while ($len($($+($,%Tstart,-,%tokens),2)) > 430) {
- dec %tokens
- if ($len($($+($,%Tstart,-,%tokens),2)) <= 430) {
- .timer -m 1 %Dtimer $1-2 $($+($,%Tstart,-,%tokens),2))
- inc %Dtimer 1500
- %Tstart = $calc(%tokens + 1)
- %tokens = $0
- }
- }
- .timer -m 1 %Dtimer $1-2 $($+($,%Tstart,-,%tokens),2))
- .timer $+ $+(Put,$2,$network) -m 1 $calc(%Dtimer + 1500) noop
- }
- alias NickInfo {
- var %search $+(/~,$1,~/Si), %count $iif($hfind(nicknames,%search,0,r).data > 130,130,$hfind(nicknames,%search,0,r).data), $&
- %return $regsubex($str(.,%count),/(.)/g,$iif($gettok($hfind(nicknames,%search,\n,r).data,1,33) iswm $network,$+(*!,$gettok($hfind(nicknames,%search,\n,r).data,2,33),$chr(32))))
- $iif($isid,return,echo -ga) %return
- }
- alias HostInfo {
- var %search $+($network,*!*@,$remove($1,*,!,@)), %return $replace($hget(nicknames,%search),~,$chr(32))
- $iif($isid,return,echo -ga) %return
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement