All pastes #515109 Raw Edit

Mine

public text v1 · immutable
#515109 ·published 2007-05-28 01:46 UTC
rendered paste body
on $*:text:/^[!@](dex|pokedex|entry)/Si:#: {
  if ((Chesticles ison $chan) && ($me != Chesticles)) { halt }
  else {
    if ($2 != $null) {
      $iif(%msocket != $null,inc %msocket,set %msocket 1)
      set $+(%,dex.search.,%msocket) $2
      set $+(%,dex.msg.,%msocket) $iif($left($1,1) == $chr(33), notice $nick, msg $chan)
      sockopen $+(Dex.,%msocket) www.serebii.net 80
    }
    else {
      notice $nick You must specify something to search for.
    }
    unset %dex.msg. $+ %msocket
    unset %dex.search. $+ %msocket
  }
}

on *:SOCKOPEN:Dex.*:{
  sockwrite -nt $sockname GET /pokedex-dp/ HTTP/1.1
  sockwrite -nt $sockname Host: www.serebii.net
  sockwrite -nt $sockname $crlf
}

on *:SOCKREAD:Dex.*:{
  var %sockreader, %r = /<option value="(.*)">(\d*) %search $+ .*$/Si
  var %msg = $($+(%,dex.msg.,$gettok($sockname,2,46)),2)
  var %search = $($+(%,dex.search.,$gettok($sockname,2,46)),2)
  sockread -f %sockreader
  if ($sockerr) { write SockErr.txt $sockerr | echo -a Socket Error - Check SockErr.txt | halt }
  if ($regex(%sockreader,%r)) {
    if (%search isin $regml(3)) { %msg http://www.serebii.net $+ $regml(1) }
    sockclose $sockname
  }
}

on *:SOCKCLOSE:Dex.*:{
  unset %dex.*
  unset %msocket
}