rendered paste bodyon *:TEXT:!calc *:#:{
if ($chan == #mirc) || ($chan == #irchelp) || ($chan == #rsnl) { halt }
notice $nick $q1($2- =) $q2($bytes($calc($replace($$2-,b,*1000m,m,*1000k,k,*1000,x,*,:,/)),bd)) $iif(000 isin $calc($replace($$2-,b,*1000m,m,*1000k,k,*1000,x,*,:,/)),$q1( $+ ( $+ $iif(000000 isin $calc($replace($$2-,b,*1000m,m,*1000k,k,*1000,x,*,:,/)),$remove($calc($replace($$2-,b,*1000m,m,*1000k,k,*1000,x,*,:,/)),000000) $+ M,$remove($calc($replace($$2-,b,*1000m,m,*1000k,k,*1000,x,*,:,/)),000) $+ K))) $+ $q1($chr(41)),) }
on *:TEXT:@calc *:#:{
if ($left($1,1) == @) && ($readini(settings.ini,$chan,public)) { notice $nick Public commands for this channel are turned off by $readini(settings.ini,$chan,public) | halt }
if ($chan == #mirc) || ($chan == #irchelp) || ($chan == #rsnl) { halt }
msg $chan $q1($2- =) $q2($bytes($calc($replace($$2-,b,*1000m,m,*1000k,k,*1000,x,*,:,/)),bd)) $iif(000 isin $calc($replace($$2-,b,*1000m,m,*1000k,k,*1000,x,*,:,/)),$q1( $+ ( $+ $iif(000000 isin $calc($replace($$2-,b,*1000m,m,*1000k,k,*1000,x,*,:,/)),$remove($calc($replace($$2-,b,*1000m,m,*1000k,k,*1000,x,*,:,/)),000000) $+ M,$remove($calc($replace($$2-,b,*1000m,m,*1000k,k,*1000,x,*,:,/)),000) $+ K))) $+ $q1($chr(41)),) }
on $*:TEXT:/^[.@!](rs)?(update|news)/Si:#:{ if ($me == TriviaScript) halt
if ($chan == #arkane) && ($me != Arkane) halt
if ($left($1,1) == @) && ($readini(settings.ini,$chan,public)) { notice $nick Public commands for this channel are turned off by $readini(settings.ini,$chan,public) | halt }
if ($readini(blacklisting.ini,$nick,1)) { notice $nick You're blacklisted, ask a operator in #Arkane for information | halt }
if ($chan == #irchelp) halt
/var %r = $right($ticks,5)
set %return [ $+ [ %r ] ] $iif(@ isin $1-,msg $chan,notice $nick)
sockopen rsnews. [ $+ [ %r ] ] www.runescape.com 80
}
on *:sockopen:rsnews.*:{
Sockwrite -nt $sockname GET /lang/en/aff/runescape/title.ws HTTP/1.1
sockwrite -nt $sockname Host: www.runescape.com
sockwrite -nt $sockname $crlf
}
on *:sockread:rsnews.*:{
if ($sockerr) {
/echo -a sockerror
sockclose $sockname
halt
}
var %rs
sockread %rs
if (<dt><span class="newsdate"> isin %rs) && (%rsc [ $+ [ $right($sockname,5) ] ] == $null) {
$iif(%return [ $+ [ $right($sockname,5) ] ] != blaat,%return [ $+ [ $right($sockname,5) ] ] 4~RSnews~ $q2($left($html32(%rs),11) $right($html32(%rs),-11)),)
set %rsc [ $+ [ $right($sockname,5) ] ] $q2($left($html32(%rs),11) $right($html32(%rs),-11))
}
if (<td style="text-align: justify; vertical-align: top;"> isin %rs) $iif(%return [ $+ [ $right($sockname,5) ] ] != blaat,%return [ $+ [ $right($sockname,5) ] ] $q1($html32(%rs)),)
if (*<div style="margin-top: 0.5em;"><a href="http://news.runescape.com/newsitem.ws*>Read more...</a></div>* iswm %rs) { set %rsnews $gettok(%rs,4,34)
$iif(%return [ $+ [ $right($sockname,5) ] ] != blaat,%return [ $+ [ $right($sockname,5) ] ] $q1(Read more?) $q2($gettok(%rs,4,34)),)
if ($gettok(%rs,4,34) != %rsnews) { /amsg 7[14AMSG7] $q1(RSupdate: %rsc [ $+ [ $right($sockname,5) ] ] $+ .) $q2(Typ !rsnews to read it) | set %rsnews $gettok(%rs,4,34) }
unset %return [ $+ [ $right($sockname,5) ] ]
unset %rsc [ $+ [ $right($sockname,5) ] ]
sockclose $sockname
halt
}
}