on $*:TEXT:/^[!@.](clan|lookup)/si:#: {
.sockclose clan
set %clan.return notice $nick
if (@ isin $1) set %clan.return msg $chan
set %clan.search $replace($2-,$chr(32),$chr(95))
if (!$2) set %clan.search $nick
if (!$2) && (%rsn [ $+ [ $nick ] ]) set %clan.search %rsn [ $+ [ $nick ] ]
sockopen clan www.runehead.com 80
}
on *:SOCKOPEN:clan: {
sockwrite -nt $sockname GET /clans/search.php?search= $+ %clan.search HTTP/1.1
sockwrite -nt $sockname Host: www.runehead.com
sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:clan: {
if ($sockerr) {
%clan.return Socket Error: $sockname $chr(124) Error Code: $sockerr
}
else {
var %clan.read
sockread %clan.read
if (*
No results were found for the* iswm %clan.read) {
%clan.return %1 $+ No clan found for the Name $+ %2 %clan.search $+ %1 $+ . Check Your Spelling and Try Again.
}
if (*
* iswm %clan.read) { set %clan.name $htmlfree(%clan.read)
var %clan.read
sockread %clan.read
if (* | , | , $+ %clan.name $+ )
if (%clan.name == zdzira) set %clan.url zdzira
set %clan.url $remove(%clan.url,$chr(32))
set %clan.na $htmlfree(%clan.url)
set %clan.url $remove(%clan.url,' title='View %clan.na Memberlist'>,,' title='View Memberlist'>,%clan.na)
if (%clan.na == zdzira) set %clan.url Zdzira
if (%clan.na == Aether) set %clan.url Aether
if (%clan.na == PuresOwnage) set %clan.url PuresOwnage
if (%clan.na == raht) set %clan.url raht
var %clan.read
sockread %clan.read
if (** iswm %clan.read) { set %clan.rank $htmlfree(%clan.read)
%clan.return 14 $+ Name: $+ 12 %clan.name 14 $+ $chr(124) Clan: $+ 12 %clan.nam 14 $+ $chr(124) Rank: $+ 12 %clan.rank
%clan.return 14 $+ WebSite: $+ 12 Http://www.runehead.com/clans/ml.php?clan= $+ $remove(%clan.url,'title='ViewMemberlist'>)
sockclose $sockname
unset %clan.*
}
}
}
}
}
alias -l htmlfree { var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x,&) | return %x }
on $*:TEXT:/^[!@.](rs|players|online)/si:#: {
sockclose players
set %play.return notice $nick
if (@ isin $1) set %play.return msg $chan
sockopen players www.runescape.com 80
}
on *:SOCKOPEN:players: {
sockwrite -nt $sockname GET /title.ws HTTP/1.1
sockwrite -nt $sockname Host: www.runescape.com
sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:players: {
if ($sockerr) {
%play.return Socket Error: $sockname $chr(124) Error Code: $sockerr
}
else {
var %play.read
sockread %play.read
if (*There are currently* iswm %play.read) {
set %play.ers $remove(%play.read,There are currently,people playing!)
%play.return 14 $+ there are currently 12 %play.ers $+ 14 People playing RuneScape!
unset %play.*
sockclose $sockname
}
}
}
on $*:TEXT:/^[!@.](best|world)/si:#: {
if ($sock(world)) .notice $nick 12Please Wait, Bot in use.
set %w.return notice $nick
if (@ isin $1) set %w.return msg $chan
sockopen world www.runescape.com 80
}
on *:SOCKOPEN:world: {
sockwrite -nt $sockname GET /sln.ws?lores.x=447&lores.y=215&plugin=0 HTTP/1.1
sockwrite -nt $sockname Host: www.runescape.com
sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:world: {
if ($sockerr) {
%w.return Socket Error: $sockname $chr(124) Error Code: $sockerr
}
else {
var %w.read
sockread %w.read
if (*Choose best free world for me* iswm %w.read) set %w.freeworld $htmlfree(%w.read)
if (*Choose best members only world for me* iswm %w.read) { set %w.memworld $htmlfree(%w.read)
set %w.freeworld $remove(%w.freeworld,Choose best free world for me,$chr(40),$chr(41),World,$chr(32))
set %w.memworld $remove(%w.memworld,Choose best members only world for me,$chr(40),$chr(41),World,$chr(32))
%w.return 14 $+ Best Free-To-Play World: 12 %w.freeworld
%w.return 14 $+ Best Pay-To-Play World: 12 %w.memworld
unset %w.*
sockclose $sockname
}
}
}
alias -l htmlfree { var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x,&) | return %x }
on $*:TEXT:/^[!@.]price/si:#: {
if (!$2) {
/notice $nick 12Please state an item.
}
else {
.sockclose price
set %price.return notice $nick
set %price.item $replace($2-,$chr(32),$chr(43))
sockopen price www.zybez.net 80
}
}
on *:SOCKOPEN:price: {
sockwrite -nt $sockname GET /priceguide.php?search_terms= $+ %price.item $+ &search_area=1&price_low=&price_high=&member=1 HTTP/1.1
sockwrite -nt $sockname Host: www.zybez.net
sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:price: {
if ($sockerr) {
%price.return Socket Error: $sockname $chr(124) Error Code: $sockerr
}
else {
var %price.read
sockread %price.read
if (** iswm %price.read) {
set %price.1 $remove(%price.read, | , | )
}
if (** iswm %price.read) {
set %price.2 $remove(%price.read,, | )
}
if (* %rcombat) && (%mcombat > %macombat) {
/hadd -m table. $+ %ID HCombat. $+ %id $calc(%mcombat + %base)
/hadd -m table. $+ %ID HClass. $+ %id Melee Based
}
elseif (%rcombat > %mcombat) && (%rcombat > %macombat) {
/hadd -m table. $+ %ID HCombat. $+ %id $calc(%rcombat + %base)
/hadd -m table. $+ %ID HClass. $+ %id Ranged Based
}
elseif (%macombat > %mcombat) && (%macombat > %rcombat) {
/hadd -m table. $+ %ID HCombat. $+ %id $calc(%macombat + %base)
/hadd -m table. $+ %ID HClass. $+ %id Magic Based
}
var %temp = $abs($calc($int($calc($hget(table. $+ %ID,Hcombat. $+ %ID) +1)) - $hget(table. $+ %ID,Hcombat. $+ %ID))), $&
%a.lvl = $ceil($calc(%temp / .32707)), %s.lvl = $ceil($calc(%temp / .324)), $&
%d.lvl = $ceil($calc(%temp / .25)), $&
%m.lvl = $ceil($calc(%temp / .487)), $&
%r.lvl = $ceil($calc(%temp / .487)), $&
%p.lvl = $ceil($calc(%temp / .124))
if ($hget(table. $+ %ID,Hclass. $+ %ID) == Magic Based) var %lvl.base = Magic: %m.lvl
elseif ($hget(table. $+ %ID,Hclass. $+ %ID) == Ranged Based) var %lvl.base = Ranged: %r.lvl
else var %lvl.base = $c1(Att:) $c2(%a.lvl) $c1(Str:) $c2(%s.lvl)
;Calculation end;
if (Cooking iswm %read) {
;Message out combat information;
$hget(table. $+ %ID,display. $+ %ID) $c1(Combat stats for) $hget(table. $+ %ID,target. $+ %ID) $+ :
$hget(table. $+ %ID,display. $+ %ID) $c1(Level) $c2($hget(table. $+ %ID,Hcombat. $+ %ID) ( $+ $hget(table. $+ %ID,Hclass. $+ %ID) $+ ))
$hget(table. $+ %ID,display. $+ %ID) $c1(Attack) $c2($hget(table. $+ %ID,Hattack. $+ %ID)) $c1(Strength) $c2($hget(table. $+ %ID,Hstrength. $+ %ID)) $c1(Defence) $c2($hget(table. $+ %ID,Hdefence. $+ %ID)) $c1(Hitpoints) $c2($hget(table. $+ %ID,Hhitpoints. $+ %ID)) $c1(Ranged) $c2($hget(table. $+ %ID,HRange. $+ %ID)) $c1(Prayer) $c2($hget(table. $+ %ID,Hprayer. $+ %ID)) $c1(Magic) $c2($hget(table. $+ %ID,Hmagic. $+ %ID))
$hget(table. $+ %ID,display. $+ %ID) $c1(Levels for) $c2($int($calc($hget(table. $+ %ID,Hcombat. $+ %ID) + 1)) combat) $+ $c1( %lvl.base $c1(def/hp:) $c2(%d.lvl) $c1(Prayer:) $c2(%p.lvl)
sockclose $sockname
halt
}
}
}
}
;my custom aliases;
alias -l comma { Var %a, %b = $regsub($ticks,$$1,/\G([+-]?\d+?)(?=(?:\d{3})++(?=\.\d++$|$))/g,\1 $+ $chr(44),%a) | Return %a }
alias -l htmlfree { var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x,&) | return %x }
alias -l ReadNextLine { var %x = $1 | sockread %x | return %x }
alias -l GetRank { var %x = $1 | sockread %x | var %y | sockread %y | return %y }
alias -l GetLevel { var %x = $1 | sockread %x | var %z | sockread %z | var %y | sockread %y | return %y }
alias -l xp2Next { var %xp = $remove($2,$chr(44)), %nextxp = $xp($calc($1 + 1)) | return $calc(%nextxp - %xp) }
alias -l xp { var %x = 1, %level = $calc($1 - 1), %xp = 0 | while (%x <= %level) { var %TempXp = $calc((%x + 300 * 2^(%x / 7)) /4) | inc %xp %TempXp | inc %x } | return $int(%xp) }
alias -l setskill {
if ($regex($1,/^(st|(skill)?total|overall)$/Si)) return Overall
elseif ($1 == 1) || ($regex($1,/^at(t|k|tack)$/Si)) return Attack
elseif ($1 == 2) || ($regex($1,/^def(en[cs]e)?$$/Si)) return Defence
elseif ($1 == 3) || ($regex($1,/^str(ength)?$/Si)) return Strength
elseif ($1 == 4) || ($regex($1,/^hp|hit(s|points?)?$/Si)) return Hitpoints
elseif ($1 == 5) || ($regex($1,/^range(r|d|ing)?$/Si)) return Ranged
elseif ($1 == 6) || ($regex($1,/^Pray(er)?$$/Si)) return Prayer
elseif ($1 == 7) || ($regex($1,/^mag(e|ic)$$/Si)) return Magic
elseif ($1 == || ($regex($1,/^cook(ing)?$/Si)) return Cooking
elseif ($1 == 9) || ($regex($1,/^wc|wood(cut(ting)?)?$/Si)) return Woodcutting
elseif ($1 == 10) || ($regex($1,/^fletch(ing)?$/Si)) return Fletching
elseif ($1 == 11) || ($regex($1,/^fish(ing)?$/Si)) return Fishing
elseif ($1 == 12) || ($regex($1,/^(fire|fm)(make?(ing)?|ing)?$/Si)) return Firemaking
elseif ($1 == 13) || ($regex($1,/^craft(ing)?$/Si)) return Crafting
elseif ($1 == 14) || ($regex($1,/^(smith|smelt)(ing)?$/Si)) return Smithing
elseif ($1 == 15) || ($regex($1,/^mine(ing)?$/Si)) return Mining
elseif ($1 == 16) || ($regex($1,/^herb(law|lore)?$/Si)) return Herblore
elseif ($1 == 17) || ($regex($1,/^agil(ity)?$/Si)) return Agility
elseif ($1 == 1 || ($regex($1,/^(th(ei|ie)[fv](e|ing)?)$/Si)) return Thieving
elseif ($1 == 19) || ($regex($1,/^slay(er|ing)?$/Si)) return Slayer
elseif ($1 == 20) || ($regex($1,/^farm(er|ing)?$/Si)) return Farming
elseif ($1 == 21) || ($regex($1,/^(rc|runecraft)(er|ing)?$/Si)) return Runecraft
elseif ($1 == 22) || ($regex($1,/^(hunt)(er|ing)?$/si)) return Hunter
elseif ($1 == 23) || ($regex($1,/^(con)(struc?tion)?$/si)) return Construction
}
|