Socket Script Help - 13/03/06 12:44 AM
Hey, I'm trying to script a RuneScape !stats script, and it's only recieving 1/2 of the information from the page, this is what I have at the moment.
Code:
on *:TEXT:!stats *:#:{ set %stat.nick $2- set %m $nick sockopen stats http://vulcan.runeweb.net 80 } on *:sockopen:stats:{ sockwrite -n $sockname GET $+(http://vulcan.runeweb.net/v3/genie1.php?rsname= $+ %stat.nick ) sockwrite -n $sockname Host: vulcan.runeweb.net sockwrite -n $sockname Connection: close sockwrite -n $sockname $crlf } on *:sockread:stats:{ if ($sockerr) { notice %m %stat.nick Socket Error! halt } else { sockread %temptext if ($sockbr == 0) { return } if (%temptext ==  ) { set %stat.begin 5 } if (%temptext == $null) { goto nextread } elseif (%stat.begin != $null) { :nextread var %temptext sockread %temptext write test.txt %temptext if (%stat.begin == 4) { set %stat.level %temptext } elseif (%stat.begin == 5) { set %stat.type %temptext } elseif (%stat.begin == 2) { set %stat.rank %temptext } elseif (%stat.begin == 1) { set %stat.xp %temptext } dec %stat.begin 1 if (%stat.type == Strength) { set %str %stat.level } if ( %stat.type == Attack ) { set %atk %stat.level } if ( %stat.type == Defence ) { set %def %stat.level } if ( %stat.type == Magic ) { set %magic %stat.level } if ( %stat.type == Overall ) { set %overall %stat.level } if ( %stat.type == Hitpoints ) { set %HP %stat.level } if ( %stat.type == Ranged ) { set %range %stat.level } if ( %stat.type == Prayer ) { set %pray %stat.level } if ( %stat.type == Cooking ) { set %cooking %stat.level } if ( %stat.type == Woodcutting ) { set %woodcutting %stat.level } if ( %stat.type == Fletching ) { set %fletch %stat.level } if ( %stat.type == Fishing ) { set %fish %stat.level } if ( %stat.type == Firemaking ) { set %firemaking %stat.level } if ( %stat.type == Crafting ) { set %craft %stat.level } if ( %stat.type == Smithing ) { set %smithing %stat.level } if ( %stat.type == Mining ) { set %mining %stat.level } if ( %stat.type == Herblore ) { set %herblore %stat.level } if ( %stat.type == Agility ) { set %agility %stat.level } if ( %stat.type == Thieving ) { set %thieving %stat.level } if ( %stat.type == Slayer ) { set %slayer %stat.level } if ( %stat.type == Farming ) { set %farming %stat.level } if ( %stat.type == Runecraft ) { set %runecrafting %stat.level } } } } on *:sockclose:stats:{ notice %m Stats for %stat.nick : Overall: %overall , Strength: %str , Attack: %atk , Defence: %def , Hitpoints: %HP , Magic: %magic , Ranged: %range , Prayer: %pray , Cooking: %cooking , Woodcutting: %woodcutting , Fishing: %fish , Fletching: %fletching , Firemaking: %firemaking , Crafting: %craft , Smithing: %smith , Mining %mining , Herblore: %herblore , Thieving: %thieving , Slayer: %slayer , Farming: %farming , Runecrafting: %runecrafting . { set %runecrafting 0 } { set %farming 0 } { set %firemaking 0 } { set %thieving 0 } { set %agility 0 } { set %slayer 0 } { set %herblore 0 } { set %mining 0 } { set %smithing 0 } { set %craft 0 } { set %fish 0 } { set %fletch 0 } { set %woodcutting 0 } { set %pray 0 } { set %atk 0 } { set %def 0 } { set %str 0 } { set %overall 0 } { set %range 0 } { set %magic 0 } { set %HP 0 } { set %cooking 0 } }