Downloading File
Filename: fjeerSPCN
alias connect { socklisten init $ky | server 127.0.0.1 $sock(init).port }
alias sw return sockwrite -n
alias xn return $remove($gettok($1,1,33),:)
alias cf return $chr(37) $+ $chr(35) $+ $remove($replace($1-,$chr(32),\b,$chr(44),\c),$chr(37),$chr(35))
alias qk return $hget(ownerkey,$1)
alias hk return $hget(hostkey,$1)
alias db { if (%debug) { if (!$window(@debug)) window @debug | echo @debug $1 : $2- } }
alias ky return $r(1111,9999)
alias swl return sockwrite -n root
alias tag return progynova
alias scat set %cc $1
alias resock if (#) { echo 5 -a * reconnecting # ... | $sw # quit }
on *:socklisten:init:{ sockaccept root | sockclose init }
on *:sockopen:?#*:var %s = $sockname | $sw %s user W T F $+(:,$tag) $lf nick $me $lf nickserv identify %email %pass $lf join %s $qk(%s)
on *:sockread:?#*: {
var %1, %s = $sockname | sockread %1 | tokenize 32 %1 | db %s $1-
if ($2 = prop) hadd -m $4 %s $mid($5-,2)
if ($1 = ping) { if ($me !ison %s) sockclose %s | else $sw %s PONG $2- }
if ($2 $5 = mode $me) && (!$hget(fp,%s)) {
if ($4 = -q) && (%dqp) $sw %s mode $me +h $qk(%s) $lf access %s clear $lf mode %s -q $xn($1) $lf prop %s ownerkey $ky $lf access %s clear
if ($4 = +q) && (%qqp) && ($xn($1) != $me) $sw %s prop %s ownerkey $ky $lf prop %s hostkey $ky $lf access %s add owner $ial($me).addr 0 $tag | hadd -mu1 fp %s 1
}
if ($2 $4 = kick $me) && (%rvk) $sw %s join %s $qk(%s) $lf access %s clear $lf kick %s $xn($1) :Revenge kick $lf prop %s ownerkey $ky $lf prop %s hostkey $ky $lf access %s clear
if ($2 = join) { if ($xn($1) = $me) $sw %s who %s | if ($gettok($3,4,44)) $swl : $+ $xn($1) MODE %s $+(+,$replace($gettok($3,4,44),.,q,@,o,+,v)) $xn($1) }
if ($2 = privmsg) { if (!$remove($4-,:)) halt | if ($4 = :S) $swl $1-3 $+(:,$remove($6-,$chr(1))) | elseif ($4 = :ACTION) $swl $1-4 $remove($5-,$chr(1)) | else $swl $remove($1-,$chr(1)) | halt }
if ($2 = whisper) { if ($5-6 = :ERR NOUSERWHISPER) halt | elseif ($5 = :S) $swl $1 privmsg $4 $remove($6-,$chr(3)) | else $swl $1 privmsg $4 $remove($5-,$chr(3)) }
if ($2 = 353) { var %1, %2 | %2 = $regsub($6-,/([^:,\s]+,)/g,$null,%1) | $swl $1-5 %1 }
if ($2 = nick) && ($remove($3,:) = $me) halt
if ($2 = quit) { $swl $1 part %s $3- | halt }
if (%who) { if ($2 = 352) echo 5 %s * $+ $5 $+ @ $+ $6 $8- | if ($2 = 315) { echo 6 %s End $5- | echo %s } }
if ($xn($1) = nickserv) halt
else $swl $1-
}
raw *:*:{
var %1 = $numeric, %2 = $event
if ($istok(1 2 3 4 5 251 252 254 255 265 266 315 352 375 372 376 803 804 805 820,%1,32)) haltdef
if (%1 = 803) { echo $2 | echo 6 $2 $3- }
if (%1 = 804) { echo 5 $2 $3 - $4 $5 $iif($7,$7-) | echo 14 $2 Added by $xn($6) }
if (%1 = 805) { echo 6 $2 $3- | echo $2 }
if (%2 = prop) { echo 3 $1 * $nick sets $2 to: $3- | halt }
}
on *:sockclose:?#*:var %s = $sockname, %1 = $sock(%s).ip | sockclose %s | sockopen %s %1 6667
on *:sockopen:finds.*:var %s = $sockname, %c = $gettok(%s,2-,46) | $sw %s NICK $me $ld USER W T F : $+ $tag | $sw %s FINDS %c | echo 5 -a * Retrieving IP for: %c ...
on *:sockread:finds.*: {
var %1, %s = $sockname, %c = $gettok(%s,2-,46) | sockread %1 | tokenize 32 %1 | db %s $1-
if ($2 = 613) { sockopen %c $mid($4,2) 6667 | sockclose %s }
if ($2 = 702) { echo 5 -a * %c not found, creating ... | var %1 = $ky | hadd -m ownerkey %c %1 | $sw %s CREATE CP %c created - EN-US 1 %1 0 }
}
on *:sockread:root: {
var %1, %s = $sockname | sockread %1 | tokenize 32 %1 | db %s $1-
if ($1 = join) && ($2) { var %c = $cf($2-) | if ($sock(%c)) $sw %c join %c $qk(%c) | else { sockopen finds. $+ %c 96.47.40.242 7000 | echo 5 -a * Preforming lookup on %c ... } }
if ($istok(privmsg notice,$1,32)) && ($me !ison $2) { var %1 = $chan(0) | while (%1) { var %c = $chan(%1) | if ($2 ison %c) { $sw %c $1-2 : $+ $mid($3-,2) | halt } | dec %1 } }
elseif ($sock($2)) $sw $2 $1-
}
menu status,channel {
Connect:{ if (!%email) set %email $?="email?" | if (!%pass) set %pass $?="pass?" | connect }
Disconnect: sockclose * | timer* off | disconnect
-
Options
.Show who ( $+ $iif(%who,on,off) $+ ):$iif(%who,unset %who,inc %who)
.-
.Prop on +q ( $+ $iif(%qqp,on,off) $+ ):$iif(%qqp,unset %qqp,inc %qqp)
.Deowner prot ( $+ $iif(%dqp,on,off) $+ ):$iif(%dqp,unset %dqp,inc %dqp)
.Revenge kick ( $+ $iif(%rvk,on,off) $+ ):$iif(%rvk,unset %rvk,inc %rvk)
.-
.Debug ( $+ $iif(%debug,on,off) $+ ):$iif(%debug,unset %debug,inc %debug)
.-
.Create category ( $+ $iif(%cc,%cc,CP) $+ )
..City Chats:scat GE
..Computing:scat CP
..Fun n Games:scat EA
..General:scat GN
..Interests:scat II
..Lifestyles:scat LF
..News:scat NW
..Peers:scat PR
..Religion:scat RL
..Roleplay:scat RP
..Romance:scat RM
..Sports:scat SP
..Teens:scat TN
}


