on $*:TEXT:/^[!@~](ml|memberlist|cstats)/Si:#:{
var %ko = $rand(1,99999)
set $+(%,mlmsg,%ko) $iif($left($1,1) == @,msg $chan,notice $nick)
if (!$2) { $(,$+(%,mlmsg,%ko)) You need to specify a clan to lookup. For example: !ml ni or !ml Noobs Incorporated }
else {
set $+(%,clan,%ko) $replace($2-,$chr(32),$chr(95))
sockopen ClanInfo. [ $+ [ %ko ] ] www.runehead.com 80
}
}
on *:SOCKOPEN:ClanInfo.*: {
var %ko = $gettok($sockname,2,$asc(.))
sockwrite -nt $sockname GET $+(/feeds/lowtech/searchclan.php?search=,$(,$+(%,clan,%ko))) HTTP/1.1
sockwrite -nt $sockname Host: www.runehead.com
sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:ClanInfo.*: {
var %ko = $gettok($sockname,2,$asc(.))
if ($sockerr) {
mlunset %ko
}
else {
var %ClanInfo
sockread %ClanInfo
if (*Not Found* iswm %ClanInfo) { $(,$+(%,mlmsg,%ko)) $+ 7 $+(%,clan,%ko)) Not found in RSCH
mlunset %ko
}
else {
var %ClanInfo
sockread %ClanInfo
if (*http://* iswm %ClanInfo) {
tokenize 124 %ClanInfo
set $+(%,text,%ko) $1-
set $+(%,url,%ko) $gettok($(,$+(%,text,%ko)),3,32)
}
if (*clan|* iswm %ClanInfo) {
$(,$+(%,mlmsg,%ko)) *** [10 Clan ]:Clan Initials [10 $+ $5 $+ ]10 $1 (10 $+ $2 $+ ) $chr(124) Total Members:10 $6 $+ $chr(91) $+ 10Average Combat $+ $chr(93) $+ : Cmb:10 $7 $+ $chr(124) 1Average Hitpoints:10 $8 $+ $chr(124) Mage:10 $10 $+ $chr(124) Range:10 $11 $+ $chr(124) Average Overall:10 $bytes($9,b) $+ $chr(124) $+ 10 $12 Based (HW)10 $15 $+ ) $chr(124) Cape Colour:10 $14 $+ $chr(124) RH:10 $3
mlunset %ko
sockclose $sockname
}
}
}
}
alias -l mlunset {
unset %mlmsg [ $+ [ $1 ] ]
unset %clan [ $+ [ $1 ] ]
unset %text [ $+ [ $1 ] ]
unset %url [ $+ [ $1 ] ]
}
------------------------------
alias c1 { return $+($chr(3),07,$1-) }
alias c2 { return $+($chr(3),02,$1-) }
alias c3 { return $+($chr(3),04,$1-) }
on $*:text:/^[!@](Clan)/Si:#:{
if ($sock(Clanread)) sockclose Clanread
if ($left($1,1) == !) set %display notice $nick $c3 $+ ~ $c2 $+ Clan $c3 $+ ~
if ($left($1,1) == @) set %display msg $chan $c3 $+ ~ $c2 $+ Clan $c3 $+ ~
set %Nick $replace($2-,$chr(32),$chr(43))
sockopen Clanread www.runehead.com 80
}
on *:SOCKOPEN:Clanread: {
sockwrite -nt $sockname GET /clans/search.php?search= $+ %nick HTTP/1.1
sockwrite -nt $sockname Host: www.runehead.com
sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:Clanread: {
if ($sockerr) { %way Socket Error: $sockname $+ . Error code: $sockerr Please inform $me of this error message.
halt
}
var %sockreader
sockread %sockreader
If (*
The exact search * iswm %sockreader) { set %result $remove($htmlfree(%sockreader),the,exact,search,returned,results:)
set %result $remove(%result,$gettok(%result,1,32))
}
if (*
,'title='ViewMemberlist, | ,%cname)
%display $c2(%cname) $+ : $c1 $+ www.Runehead.com/clans/ $+ $remove(%link,$chr(32),'title='ViewMemberlist) $+)
}
}
alias htmlfree {
var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x, )
return %x
}
-----------------------------
on $*:TEXT:/^[!@](rs)?price[sz]?/Si:*: {
.var %ID = $+($r(1,100),$r(1,100),$r(1,100),$r(1,100),$r(1,100),$r(1,100),$r(1,100))
if (!$2) {
$iif($notice($nick),.notice $nick, $iif($left($1,1) == @,.msg $chan,.notice $nick)) $c1(**) $+($c1,$chr(40),$c2,$upper(error),$c1,$chr(41),$c1,:) $c1(Please supply a item to search for.) $+($c1,$chr(40),$c2,zybez.net,$c1,$chr(41)) | .halt
}
elseif ($numtok($2-,44) > 4) {
$iif($notice($nick),.notice $nick, $iif($left($1,1) == @,.msg $chan,.notice $nick)) $c1(**) $+($c1,$chr(40),$c2,$upper(error),$c1,$chr(41),$c1,:) $c1(Please dont check more than 4 items at ones!) $+($c1,$chr(40),$c2,zybez.net,$c1,$chr(41)) | .halt
}
.inc -u15 $+(%,pprice.total.,%ID)
.sockopen $+(price.,%ID) www.zybez.net 80
.sockmark $+(price.,%ID) $+($iif($replace($gettok($gettok($2-,1,32),1,44),k,000,m,000000,b,000000000) isnum,$remove($gettok($2-,1,44),$gettok($gettok($2-,1,32),1,44)),$gettok($2-,1,44)),|,$2-,|,$iif($notice($nick),.notice $nick, $iif($left($1,1) == @,.msg $chan,.notice $nick)))
}
on *:SOCKOPEN:price.*: {
.var %ID = $gettok($sockname,2,46)
.sockwrite -n $sockname GET $+(/priceguide.php?search_terms=,$replace($gettok($sock($sockname).mark,1,124),_,+,_,+,$chr(32),+),&search_area=1&price_low=&price_high=&member=1&all_prices=1&sortby=price&sort=DESC&ppage=50) HTTP/1.1
.sockwrite -n $sockname User-Agent: Vectra (MMORPG stats bot; vectra-bot.org;)
.sockwrite -n $sockname Host: $+(www.zybez.net,$crlf,$crlf)
}
on *:SOCKREAD:price.*: {
.var %ID = $gettok($sockname,2,46)
if ($sockerr) { $gettok($sock($sockname).mark,3,124) Error connecting to site. | .sockclose $sockname | .halt }
.var %sockreader
.sockread %sockreader
if $regex(%sockreader,/>Viewing 0 of 0 Results/) {
$gettok($sock($sockname).mark,3,124) $c1(**) $+($c1,$chr(40),$c2,$upper(error),$c1,$chr(41),$c1,:) $c1(The results for) $+($c1,",$c2,$replace($gettok($sock($sockname).mark,1,124),+,$chr(32)),$c1,") $c1(was not found.) $+($c1,$chr(40),$c2,zybez.net,$c1,$chr(41))
.sockclose $sockname | .halt
}
elseif ($regex(%sockreader,/>Viewing (.*) of (.*) Results/)) {
if ($numtok($gettok($sock($sockname).mark,2,124),44) == 1) {
.set -u15 $+(%,pprice.tot.,%ID) $regml(2)
}
}
if $regex(%sockreader,/\[M]/) {
if ($numtok($gettok($sock($sockname).mark,2,124),44) > 1) {
.set -u15 $+(%,price.mem.,%ID,$($+(%,pprice.total.,%ID),2)) $+($c1,$chr(91),$c2,M,$c1,$chr(93))
}
else {
.set -u15 $+(%,price.mem.,%ID,$calc($($+(%,pprice.tootal.2,%ID),2) + 1)) $+($c1,$chr(91),$c2,M,$c1,$chr(93))
}
}
if $regex(%sockreader,/search_term=(.*)" title="More information/) {
.inc -u15 $+(%,pprice.tootal.2,%ID)
.set -u15 $+(%,price.name.,%ID,$($+(%,pprice.tootal.2,%ID),2)) $regml(1)
}
if $regex(%sockreader,/(.*gp) | /) {
.inc -u15 $+(%,pprice.tootal.3,%ID)
.set -u15 $+(%,price.p1.,%ID,$($+(%,pprice.tootal.3,%ID),2)) $remove($gettok($regml(1),1,32),gp,$chr(44))
if ($gettok($regml(1),3,32)) { .set -u15 $+(%,price.p2.,%ID,$($+(%,pprice.tootal.3,%ID),2)) $remove($gettok($regml(1),3,32),gp,$chr(44)) }
if ($numtok($gettok($sock($sockname).mark,2,124),44) > $($+(%,pprice.total.,%ID),2) && !$($+(%,pprice.tot.,%ID),2)) {
.pnext %ID $+($gettok($sock($sockname).mark,2,124),|,$gettok($sock($sockname).mark,3,124))
.halt
}
if ($numtok($gettok($sock($sockname).mark,2,124),44) > 1 && $numtok($gettok($sock($sockname).mark,2,124),44) == $($+(%,pprice.total.,%ID),2)) {
.var %x = 1
while (%x <= $numtok($gettok($sock($sockname).mark,2,124),44)) {
.set -u15 $+(%,pprice.p1total.,%ID) $calc($($+(%,pprice.p1total.,%ID),2) + ($iif($replace($gettok($gettok($gettok($sock($sockname).mark,2,124),%x,44),1,32),k,000,m,000000,b,000000000) isnum,$v1,1) * $($+(%,price.p1.,%ID,%x),2)))
if ($($+(%,price.p2.,%ID,%x),2)) { .set -u15 $+(%,pprice.p2total.,%ID) $calc($($+(%,pprice.p2total.,%ID),2) + ($iif($replace($gettok($gettok($gettok($sock($sockname).mark,2,124),%x,44),1,32),k,000,m,000000,b,000000000) isnum,$v1,1) * $($+(%,price.p2.,%ID,%x),2))) }
.set -u15 $+(%,pprice.result.,%ID) $($+(%,pprice.result.,%ID),2) $c1($chr(124)) $($+(%,price.mem.,%ID,%x),2) $($+(%,price.name.,%ID,%x),2) $+($c2,$bytes($calc($iif($replace($gettok($gettok($gettok($sock($sockname).mark,2,124),%x,44),1,32),k,000,m,000000,b,000000000) isnum,$v1,1) * $($+(%,price.p1.,%ID,%x),2)),db),$c1,gp) $iif($($+(%,price.p2.,%ID,%x),2),$c1(-) $+($c2,$bytes($calc($iif($replace($gettok($gettok($gettok($sock($sockname).mark,2,124),%x,44),1,32),k,000,m,000000,b,000000000) isnum,$v1,1) * $($+(%,price.p2.,%ID,%x),2)),db),$c1,gp))
.inc %x
}
.tokenize 32 $($+(%,pprice.result.,%ID),2)
$gettok($sock($sockname).mark,3,124) $c1(**) $+($c1,$chr(40),$c2,$upper(price),$c1,$chr(41),$c1,:) $2- $c1($chr(124)) $c1(Total:) $+($c2,$bytes($($+(%,pprice.p1total.,%ID),2),db),$c1,gp) $iif($($+(%,price.p2.,%ID,%x),2),$c1(-) $+($c2,$bytes($($+(%,pprice.p2total.,%ID),2),db),$c1,gp)) $+($c1,$chr(40),$c2,zybez.net,$c1,$chr(41))
.sockclose $sockname | halt
}
}
if ($regex(%sockreader,//) && $numtok($gettok($sock($sockname).mark,2,124),44) == 1) {
.var %x = 1
while (%x <= $iif($($+(%,pprice.tootal.2,%ID),2) > 4,4,$($+(%,pprice.tootal.2,%ID),2))) {
.set -u15 $+(%,pprice.result.,%ID) $($+(%,pprice.result.,%ID),2) $c1($chr(124)) $($+(%,price.mem.,%ID,%x),2) $($+(%,price.name.,%ID,%x),2) $+($c2,$bytes($calc($iif($replace($gettok($gettok($gettok($sock($sockname).mark,2,124),1,44),1,32),k,000,m,000000,b,000000000) isnum,$v1,1) * $($+(%,price.p1.,%ID,%x),2)),db),$c1,gp) $iif($($+(%,price.p2.,%ID,%x),2),$c1(-) $+($c2,$bytes($calc($iif($replace($gettok($gettok($gettok($sock($sockname).mark,2,124),1,44),1,32),k,000,m,000000,b,000000000) isnum,$v1,1) * $($+(%,price.p2.,%ID,%x),2)),db),$c1,gp))
.inc %x
}
.tokenize 32 $($+(%,pprice.result.,%ID),2)
$gettok($sock($sockname).mark,3,124) $c1(**) $+($c1,$chr(40),$c2,$upper(price),$c1,$chr(41),$c1,:) $iif($($+(%,pprice.tootal.2,%ID),2) == 1,$2-,$c1(Results:) $c2($($+(%,pprice.tot.,%ID),2)) $1-) $+($c1,$chr(40),$c2,zybez.net,$c1,$chr(41))
.sockclose $sockname | halt
}
}
alias -l c1 { .return $+($chr(3),14,$1-) }