alias c1 return $+($chr(3),12,$1) alias c2 return $+($chr(3),04,$1) alias c3 return $+($chr(3),07,$1) on $*:TEXT:/^(.*)$/Si:#:{ if ($me == stupidbot) noop elseif (%dchan [ $+ [ $chan ] ] == yes) { halt } if ($regex($regml(1),/^[@!.]clan(?:s)?(\s-[pe]\s|\s)(.*)$/Si)) { var %switch = $regml(1), %rsn = $regml(2), %sw = $iif($remove(%switch,$chr(32)),$v1,NULL), %mode = $iif(%sw == -p,partial,exact), %sn = $+(clans.,$ticks) hadd -m %sn mode %mode hadd -m %sn chan $chan hadd -m %sn lookup $regsubex(%rsn,/(\x20)/g,+) hadd -m %sn disp $iif($left($1,1) == @,msg $chan,notice $nick) sockopen %sn www.runehead.com 80 } } on *:SOCKOPEN:clans.*:{ var %w = sockwrite -nt $sockname, %user = $hget($sockname,lookup), %mode = $hget($sockname,mode) %w GET $(/clans/search.php?search= $+ %user $+ &searchtype= $+ %mode,2) HTTP/1.1 %w Host: www.runehead.com $+ $crlf $+ $crlf } on *:SOCKREAD:clans.*:{ var %r | sockread -f %r if ($regex(%r,/

No results were found for the (?:.*)<\/b> search (.*)<\/b><\/p>/)) { $hget($sockname,disp) $c1(No results were found for the) $c2($upper($hget($sockname,mode))) $c1(search) $c2($replace($regml(1),$chr(32),$chr(160)))) $c1(try a different name.) hfree $sockname sockclose $sockname halt } if (** iswm %r) { if ($regex(%r,/(.*)/)) { var %nickname = $regml(1) sockread -f %r if ($regex(%r,/(.+)<\/a><\/td>/)) { var %link = $+(http://runehead.com/clans/,$regml(1)), %name = $replace($regml(2),$chr(32),$chr(160)) writeini clans.ini $sockname $calc($ini(clans.ini,$sockname,0) + 1) $+(%nickname,$chr(1),%name) } } } if (** iswm %r) { var %a = 0 while (%a < $ini(clans.ini,$sockname,0)) { var %a = %a + 1, %mline = %line $+($c3([),$c2($gettok($readini(clans.ini,$sockname,%a),1,1)),$c3(]),$chr(32),$c1($gettok($readini(clans.ini,$sockname,%a),2,1))), %line = $iif($len(%mline) >= $iif(%sent,350,320),%line,%mline) if (%mline != %line) { if (%sent) { $hget($sockname,disp) %line var %line = $+($c3([),$c2($gettok($readini(clans.ini,$sockname,%a),1,1)),$c3(]),$chr(32),$c1($gettok($readini(clans.ini,$sockname,%a),2,1))) } else { var %sent = true $hget($sockname,disp) $c1(Results for $hget($sockname,mode) search) $c2($regsubex($regsubex($hget($sockname,lookup),/(?:(^\w)|(\+\w))/g,$+(+,$upper(\1))),/^(\W+)/,$null)) $+ $c1(:) $c2($ini(clans.ini,$sockname,0)) $hget($sockname,disp) Results: %line } } } if (%line) { if (!%sent) { $hget($sockname,disp) $c1(Results for $hget($sockname,mode) search) $c2($regsubex($regsubex($hget($sockname,lookup),/(?:(^\w)|(\+\w))/g,$+(+,$upper(\1))),/^(\W+)/,$null)) $+ $c1(:) $c2($ini(clans.ini,$sockname,0)) | $hget($sockname,disp) $c1(Results:) %line } else $hget($sockname,disp) %line } hfree $sockname remini clans.ini $sockname sockclose $sockname } }