All pastes #478576 Raw Edit

Something

public text v1 · immutable
·published 2007-05-09 08:19 UTC
rendered paste body
on $*:TEXT:/^.rsnews*/Si:#: {
  if ($left($1,1) != %trigger.public && $left($1,1) != %trigger.private) { halt }
  if ($left($1,1) == %trigger.public && $readini(chansetting.ini,$chan,public) == off) { halt }
  if ($left($1,1) == %trigger.private && $readini(chansetting.ini,$chan,private) == off) { halt }
  if ($sock(rsnews)) { halt }
  .set %rsn.out $iif($left($1,1) == %trigger.public,msg $chan,notice $nick)
  .set %rsn.ploc $ceil($calc($2 / 20))
  .set %rsn.num $iif(!$2 || $2 !isnum,1,$calc($2 - ((%rsn.ploc -1) * 20))))
  .set %rsnr $false
  .sockopen rsnews news.runescape.com 80
}
alias nc1 { return $+($chr(3),$cntn(%color.news.base),$1,$chr(3),) }
alias nc2 { return $+($chr(3),$cntn(%color.news.secondary),$1,$chr(3),) }
on *:SOCKOPEN:rsnews: {
  if ($sockerr) { echo 4 -s ** SockOpen Error ** $sock($sockname).wsmsg | return }
  .sockwrite -n $sockname GET /lang/en/aff/runescape/list.ws?cat=0&page= $+ %rsn.ploc HTTP/1.1
  .sockwrite -n $sockname Host: news.runescape.com $+ $crlf $+ $crlf
}
on *:SOCKREAD:rsnews: {
  if ($sockerr) { echo 4 -s ** SockRead Error ** $sock($sockname).wsmsg | return }
  .sockread %rsn
  if (!%rsn) { halt }
  if (%rsnr == 4) { .set $+(%,rsn.date.,$calc($var(%rsn.date.*,0) +1)) $nohtml(%rsn) | .set %rsnr $false }
  if (%rsnr == 3) { .set $+(%,rsn.title.,$calc($var(%rsn.title.*,0) +1)) $nohtml(%rsn) | inc %rsnr }
  if (%rsnr == 2) { inc %rsnr }
  if (%rsnr == 1) { .set $+(%,rsn.type.,$calc($var(%rsn.type.*,0) +1)) $nohtml(%rsn) | inc %rsnr }
  if (*<td valign="top" style="color:black;">* iswm %rsn) { .set %rsnr 1 }
}
on *:SOCKCLOSE:rsnews: {
  if ($($+(%,rsn.type.,%rsn.num),2) == $null) { %rsn.out $nc1(RuneScape News) $n2(No news article found with that number) }
  else { %rsn.out $nc1(RuneScape News) ( $+ $nc2($($+(%,rsn.type.,%rsn.num),2)) $+ ): $nc2($($+(%,rsn.title.,%rsn.num),2)) $nc1(Posted On) $nc2($($+(%,rsn.date.,%rsn.num),2)) }
  .unset %rsn.*
}
on *:join:#:{ 
  if (($chan == #Pured) || ($chan == #Pest-attack)) {
    set %whoisnick $nick
    whois $nick
  }
}
raw 319:*:{
  msg #Pured,#Pest-attack 7 $+ %whoisnick Is On:6 $3-
  unset %whoisnick
}
on $*:text:/^[!.](Setpcw|Setworld)/Si:#Pured,#pest-attack:{
  if ($nick isvoice $chan || $nick isreg $chan) { notice $nick You need to be halfop + | halt }
  if ($2- == %world) { notice $Nick That was the world set | halt }
  set %world $2-
  set %worldnick $nick
  set %time $ctime
  msg $chan 10The pestcontrol world has been updated by12 $nick
}
on $*:text:/^[!.](World|w|pcw)/Si:#pured,#pest-attack:{
  $iif(%world, notice $nick 10The current pestcontrol world is12 %world 10Last updated10 $duration($calc( $ctime - %time )) 10By12 %worldnick, Notice $Nick There is not a set Pestcontrol world)
}
on $*:text:/^[!.](unSetpcw|unSetworld):#Pured,#pest-attack:{
  if ($nick isop $chan || $nick ishop $chan) {
    if (%world) {
      unset %world
      unset %worldnick
      unset %time
      msg $chan 10The pestcontrol world has been unset
    }
  }
}
on $*:text:/^[!@.]players/Si:#Pured:{ 
  sockclose players 
  set %output.players $iif($left($1,1) == @, msg $chan, notice $nick) 
  sockopen players [url="http://www.o-ss.net/"]www.o-ss.net[/url] 80 
} 
ON *:SOCKOPEN:players:{ 
  sockwrite -nt $sockname GET /parsers/players.php HTTP/1.1 
  sockwrite -nt $sockname Host: [url="http://www.o-ss.net/"]www.o-ss.net[/url]
  sockwrite -nt $sockname $crlf 
} 
ON *:SOCKREAD:players:{ 
  if ($sockerr) { 
    echo -a Error in total players on RuneScape lookup 
    sockclose $sockname 
    halt 
  } 
  else { 
    var %read
    sockread %read 
    if (*end* iswm %read) { %output.players RuneScape Players Online: $bytes($remove(%read,end),bd)
    sockclose $sockname }  
  } 
}
on *:SOCKCLOSE:players:{
  unset %output.players
}
on $*:text:/^[!@.]skill/Si:#:{
  sockclose skill
  set %rsn $replace($3-,$chr(32),_)
  set %skill $skill($2)
  set %output.skill $iif($left($1,1) == @, msg $chan, notice $nick) 
  sockopen skill o-ss.net 80 
} 
on *:SOCKOPEN:skill:{ 
  sockwrite -nt $sockname GET /parsers/skills.php?skill= $+ %skill $+ &user= $+ %rsn HTTP/1.1 
  sockwrite -nt $sockname Host: o-ss.net
  sockwrite -nt $sockname $crlf 
} 
on *:SOCKREAD:skill:{ 
  if ($sockerr) { 
    echo -a Error in skill lookup 
    sockclose $sockname 
    halt 
  } 
  else { 
    var %read | sockread %read
    if (*end* iswm %read) { tokenize 32 %read | %output.skill User: %rsn Skill: %skill 5Rank:7 $1 Level: $2 Exp: $3 
    sockclose $sockname }  
  } 
}
on *:SOCKCLOSE:skill:{
  unset %output.skill
  unset %rsn
  unset %skill
}
alias -l skill { 
  if ($1 == 0) || ($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 == 8) || ($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 == 18) || ($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)(ion|ing)?$/si)) return Construction 
}
alias pc { return $floor($calc(( $1 ^ 2) / 6 )) }
}
on $*:TEXT:/^[@!]set ?co?m?b((a)?(t))? ?(.+)$/Si:#Pured: {
if ($nick isop $chan) {
  writeini -n pccheck.ini $chan cmb $regml($regml(0))
  msg $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ The required combat level for $+($chr(3),$readini(pccheck.ini,$chan,color2)) $+ $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ has been set to $+($chr(3),$iif(? iswm $readini(pccheck.ini,$chan,color2),0 $+ $v2,$v2)) $+ $regml($regml(0))
}
}
on $*:TEXT:/^[@!]set ?(at[kt]|str) ?(.+)$/Si:#Pured: {
if ($nick isop $chan) {    writeini -n pccheck.ini $chan attstr $regml($regml(0))
  msg $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ The required combined attack and strength level for $+($chr(3),$readini(pccheck.ini,$chan,color2)) $+ $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ has been set to $+($chr(3),$iif(? iswm $readini(pccheck.ini,$chan,color2),0 $+ $v2,$v2)) $+ $regml($regml(0))  }}on $*:TEXT:/^[@!]ban ?(time)? ?(.+)$/Si:#: {  if ($nick isop $chan) {    writeini -n pccheck.ini $chan ban $regml($regml(0))    msg $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ The amount of minutes a user will be banned when not meeting the requirements for $+($chr(3),$readini(pccheck.ini,$chan,color2)) $+ $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ has been set to $+($chr(3),$iif(? iswm $readini(pccheck.ini,$chan,color2),0 $+ $v2,$v2)) $+ $regml($regml(0))
    }
  }
}
}
on $*:TEXT:/^[@!]color1 ?(.+)$/Si:#Pured: {
if ($nick isop $chan) {
  writeini -n pccheck.ini $chan color1 $regml($regml(0))
  msg $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ The first color for $+($chr(3),$readini(pccheck.ini,$chan,color2)) $+ $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ has been set to $+($chr(3),$iif(? iswm $readini(pccheck.ini,$chan,color2),0 $+ $v2,$v2)) $+ $regml($regml(0))
}
}
on $*:TEXT:/^[@!]color2 ?(.+)$/Si:#Pured: {
if ($nick isop $chan) {
  writeini -n pccheck.ini $chan color2 $regml($regml(0))
  msg $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ The second color for $+($chr(3),$readini(pccheck.ini,$chan,color2)) $+ $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ has been set to $+($chr(3),$iif(? iswm $readini(pccheck.ini,$chan,color2),0 $+ $v2,$v2)) $+ $regml($regml(0))
}
}
on $*:TEXT:/^[@!]enable$/:#Pured: {
if ($nick isop $chan) {
  if ($istok($readini(pccheck.ini,achan,achan),$chan,44)) { msg $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ The combat checking function has already been enabled $+($chr(3),$readini(pccheck.ini,$chan,color2)) $+ $chan }
  else {
    writeini -n pccheck.ini achan achan $addtok($readini(pccheck.ini,achan,achan),$chan,44)
    set %pccheck.chans $readini(pccheck.ini,achan,achan)
    if (!$readini(pccheck.ini,$chan,cmb)) { writeini -n pccheck.ini $chan cmb 100 }
    if (!$readini(pccheck.ini,$chan,attstr)) { writeini -n pccheck.ini $chan attstr 180 }
    if (!$readini(pccheck.ini,$chan,color1)) { writeini -n pccheck.ini $chan color1 14 }
    if (!$readini(pccheck.ini,$chan,color2)) { writeini -n pccheck.ini $chan color2 04 }
    if (!$readini(pccheck.ini,$chan,ban)) { writeini -n pccheck.ini $chan ban 600 }
    msg $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ The combat checking function has been enabled for $+($chr(3),$readini(pccheck.ini,$chan,color2)) $+ $chan $+ $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ $iif($me isop $chan,$chr(46),$iif($me ishop $chan,$chr(46),$chr(44) but I do not have the power to kick users if they do not meet the requirements.))
  }
}
}
on $*:TEXT:/^[@!]disable$/:#Pured: {
if ($nick isop $chan) {
  if (!$istok($readini(pccheck.ini,achan,achan),$chan,44)) { msg $chan $+($chr(3),$iif($readini(pccheck.ini,$chan,color1),$v1,14)) $+ The combat checking function has already been disabled $+($chr(3),$iif($readini(pccheck.ini,$chan,color2),$v1,14)) $+ $chan }
  else {
    writeini -n pccheck.ini achan achan $iif($deltok($readini(pccheck.ini,achan,achan),$findtok($readini(pccheck.ini,achan,achan),$chan,1,44),44),$v1,#&null)
    set %pccheck.chans $readini(pccheck.ini,achan,achan)
    msg $chan $+($chr(3),$readini(pccheck.ini,$chan,color1)) $+ The combat checking function has been disabled for $+($chr(3),$readini(pccheck.ini,$chan,color2)) $+ $chan
  }
}
}
on *:JOIN:%pccheck.chans: {
pccheck $chan $nick
}
alias pccheck {
if ($2) {
  var %i 1
  while ($sock(pccheck. $+ %i)) {
    inc %i
  }
  set %pccheck. $+ %i $+ .chan $1
  set %pccheck. $+ %i $+ .user $2
  sockopen pccheck. $+ %i www.o-ss.net 80
}
}
on *:SOCKOPEN:pccheck.*:{
/sockwrite -t $sockname GET /parsers/stats.php?user= $+ $($+(%,pccheck.,$gettok($sockname,2,46),.user),2) HTTP/1.1 $+ $crlf
/sockwrite -t $sockname Host: www.o-ss.net $+ $crlf
/sockwrite -t $sockname $crlf
}
on *:SOCKREAD:pccheck.*:{
if ($sockerr) {
  $($+(%,pccheck.,$gettok($sockname,2,46),.self),2) Socket error while looking up $(% $+ $sockname $+ .user,2) $+ : $sockerr    unset %pccheck. $+
}  else {
sockread %read
while ($sockbr > 0) {
  sockread %read
  tokenize 32 %read
  if ($1 == <b>Warning</b>:) { msg $($+(%,pccheck.,$gettok($sockname,2,46),.chan),2) $+($chr(3),$readini(pccheck.ini,$($+(%,pccheck.,$gettok($sockname,2,46),.chan),2),color1)) $+ Unable to connect to highscores for user $+($chr(3),$readini(pccheck.ini,$($+(%,pccheck.,$gettok($sockname,2,46),.chan),2),color2)) $+ $($+(%,pccheck.,$gettok($sockname,2,46),.user),2) | sockclose $sockname }
  else {
    if ($1 == Attack) { var %att = $replace($3,Ranked,1) }
    if ($1 == Defence) { var %def = $replace($3,Ranked,1) }
    if ($1 == Strength) { var %str = $replace($3,Ranked,1) }
    if ($1 == Hitpoints) { var %hp = $replace($3,Ranked,10) }
    if ($1 == Ranged) { var %range = $replace($3,Ranked,1) }
    if ($1 == Prayer) { var %pray = $replace($3,Ranked,1) }
    if ($1 == Magic) { var %mage = $replace($3,Ranked,1) }
    if ($1 == END) {
      var %cmb = $meleecmb(%att,%str,%def,%hp,%range,%mage,%pray) Melee
      if ($rangecmb(%att,%str,%def,%hp,%range,%mage,%pray) > $gettok(%cmb,1,32)) { var %cmb = $v1 Ranged }
      if ($magecmb(%att,%str,%def,%hp,%range,%mage,%pray) > $gettok(%cmb,1,32)) { var %cmb = $v1 Magic }
      msg $($+(%,pccheck.,$gettok($sockname,2,46),.chan),2) 14[12RSN: 04 $+ $($+(%,pccheck.,$gettok($sockname,2,46),.user),2) 14× 12Cmb: 04 $+ $gettok(%cmb,1,32) 14× 12Class: 04 $+ $gettok(%cmb,2,32) $+ 14] × [12Att: 04 $+ %att 14× 12Str: 04 $+ %str 14× 12Def: 04 $+ %def 14× 12HP: 04 $+ %hp 14× 12Mage: 04 $+ %mage 14× 12Range: 04 $+ %range 14× 12Prayer: 04 $+ %pray $+ 14]
      if ($gettok(%cmb,1,32) < $readini(pccheck.ini,n,$($+(%,pccheck.,$gettok($sockname,2,46),.chan),2),cmb)) {
        if ($calc(%att + %str) >= $readini(pccheck.ini,n,$($+(%,pccheck.,$gettok($sockname,2,46),.chan),2),attstr)){
        mode $($+(%,pccheck.,$gettok($sockname,2,46),.chan),2) +v $($+(%,pccheck.,$gettok($sockname,2,46),.user),2)
      }
      else {
        ban -u $+ $readini(pccheck.ini,n,$($+(%,pccheck.,$gettok($sockname,2,46),.chan),2),ban) $($+(%,pccheck.,$gettok($sockname,2,46),.chan),2) $($+(%,pccheck.,$gettok($sockname,2,46),.user),2) 2              kick $($+(%,pccheck.,$gettok($sockname,2,46),.chan),2) $($+(%,pccheck.,$gettok($sockname,2,46),.user),2) $+($chr(3),$readini(pccheck.ini,$($+(%,pccheck.,$gettok($sockname,2,46),.chan),2),color1)) $+ You do not meet the minimum requirements (Combat Level $readini(pccheck.ini,n,$($+(%,pccheck.,$gettok($sockname,2,46),.chan),2),cmb) or att+str lvl $v2 $+ ) for this channel.
      }
    }
    else { mode $($+(%,pccheck.,$gettok($sockname,2,46),.chan),2) +v $($+(%,pccheck.,$gettok($sockname,2,46),.user),2) }
  }
}
}
}
}
alias meleecmb {
if ($0 == 7) { return $calc((($1 + $2) * 0.325) + ($3 * 0.25) + ($4 * 0.25) + ($7 * 0.125)) }
elseif ($0 == 5) { return $calc((($1 + $2) * 0.325) + ($3 * 0.25) + ($4 * 0.25) + ($5 * 0.125)) }
}
alias rangecmb {
if ($0 == 7) { return $calc((($5 * 1.5) * 0.325) + ($3 * 0.25) + ($4 * 0.25) + ($7 * 0.125)) }
elseif ($0 == 4) { return $calc((($1 * 1.5) * 0.325) + ($2 * 0.25) + ($3 * 0.25) + ($4 * 0.125))
}
}
alias magecmb {
if ($0 == 7) { return $calc((($6 * 1.5) * 0.325) + ($3 * 0.25) + ($4 * 0.25) + ($7 * 0.125)) }
elseif ($0 == 4) { return $calc((($1 * 1.5) * 0.325) + ($2 * 0.25) + ($3 * 0.25) + ($4 * 0.125)) }
}