Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- on $*:TEXT:/^[!.@](g(rand)?e(xchange)?|(rs)?price) .+/Si:#serverkilla,#nick1: {
- if ($sock(ge)) sockclose ge
- set %ge.return $iif($left($1,1) == @,msg #,notice $nick)
- sockopen ge rsapi.net 80
- if (!$2) {
- %ge.return Incorrect Syntax - Use $1 rune ore to search for rune ore
- halt
- }
- set %ge.item $2-
- }
- on *:SOCKOPEN:ge:{
- sockwrite -nt $sockname GET /ge/search/ $+ $replace(%ge.item,$chr(32),$(%20,0)) $+ .json HTTP/1.1
- sockwrite -nt $sockname Host: rsapi.net
- sockwrite -nt $sockname $crlf
- }
- on *:SOCKREAD:ge:{
- if ($sockerr) {
- sockclose $sockname
- %ge.return 14** (4ERROR14) Sorry, there was an error searching for04 $+ $iif(%amount,$chr(32) $+ %ge.amount) 14"04 $+ %ge.item $+ 14"
- unset %ge.*
- halt
- }
- sockread &t
- ;var %pos $iif($bfind(&t,1,%ge.item) != 0,$v1,$bfind(&t,1,[{"))
- var %pos $bfind(&t,1,[{")
- var %pos2 $bfind(&t,%pos,"})
- ;so these two positions here mark the beginning and the end of the first item that is returned by the site
- if (%pos != 0) {
- var %sockreader $bvar(&t,$+(%pos,-,$calc(%pos2 + 1))).text
- ;so when i get the variable from point a (pos) to point b (pos2) it will give me the entire first item "string" (unorganized)
- var %ge.id $gettok(%sockreader,$calc($findtok(%sockreader,id,1,34) + 2),34)
- var %ge.name $gettok(%sockreader,$calc($findtok(%sockreader,name,1,34) + 2),34)
- var %ge.description $left($gettok(%sockreader,$calc($findtok(%sockreader,description,1,34) + 2),34),-1)
- var %ge.price $gettok(%sockreader,$calc($findtok(%sockreader,price,1,34) + 2),34)
- ;and these lines are just parsing out the information from the string
- %ge.return 4§§§ 10ID:12 %ge.id 10Item's Name:12 %ge.name 10Description:04 %ge.description 10Current Market Price:04 %ge.price
- ;you might want to add support for which item to get because a search for "sword" gives 19 results
- }
- elseif ($bfind(&t,1,"error":"No item)) {
- %ge.return 4§§§ Error - 10No item(s) found for search $qt(%ge.item)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement