SCAR Code:
program Get_Levels;
Procedure GetPlayerLevels(RSUser: String; PvPInfo: Boolean);
Var
Name, Page: String;
TL, Attack, Defence, Strength, Hitpoints, Ranged, Prayer,
Magic, Cooking, Woodcutting, Fletching, Fishing, Firemaking,
Crafting, Smithing, Mining, Herblore, Agility, Thieving,
Slayer, Farming, Runecrafting, Hunter, Construction, Summoning: String;
Begin
Name := RSUser;
If (Pos(' ', Name) <> 0) Then
Name := Replace(Name, ' ', '%A0');
If (Pos('_', Name) <> 0) Then
Name := Replace(Name, '_', '%A0');
Page := '';
Page := GetPage('http://services.runescape.com/m=adventurers-log/display_player_profile.ws?searchName=' + Name);
If Not (Page = '') Then
Begin
If Not (Pos('Non-member account', Page) <> 0) Then
Begin
If Not (Pos('Private profile', Page) <> 0) Then
Begin
Page := Between('var skills=[', '/* Init', Page);
TL := Between('skill(''Total Level'',', ')', Page);
TL := Between(''',', ',''', TL);
Attack := Between('skill(''Attack'',', ')', Page);
Attack := Between(''',', ',''', Attack);
Defence := Between('skill(''Defence'',', ')', Page);
Defence := Between(''',', ',''', Defence);
Strength := Between('skill(''Strength'',', ')', Page);
Strength := Between(''',', ',''', Strength);
Hitpoints := Between('skill(''Hitpoints'',', ')', Page);
Hitpoints := Between(''',', ',''', Hitpoints);
Ranged := Between('skill(''Ranged'',', ')', Page);
Ranged := Between(''',', ',''', Ranged);
Prayer := Between('skill(''Prayer'',', ')', Page);
Prayer := Between(''',', ',''', Prayer);
Magic := Between('skill(''Magic'',', ')', Page);
Magic := Between(''',', ',''', Magic);
Cooking := Between('skill(''Cooking'',', ')', Page);
Cooking := Between(''',', ',''', Cooking);
Woodcutting := Between('skill(''Woodcutting'',', ')', Page);
Woodcutting := Between(''',', ',''', Woodcutting);
Fletching := Between('skill(''Fletching'',', ')', Page);
Fletching := Between(''',', ',''', Fletching);
Fishing := Between('skill(''Fishing'',', ')', Page);
Fishing := Between(''',', ',''', Fishing);
Firemaking := Between('skill(''Firemaking'',', ')', Page);
Firemaking := Between(''',', ',''', Firemaking);
Crafting := Between('skill(''Crafting'',', ')', Page);
Crafting := Between(''',', ',''', Crafting);
Smithing := Between('skill(''Smithing'',', ')', Page);
Smithing := Between(''',', ',''', Smithing);
Mining := Between('skill(''Mining'',', ')', Page);
Mining := Between(''',', ',''', Mining);
Herblore := Between('skill(''Herblore'',', ')', Page);
Herblore := Between(''',', ',''', Herblore);
Agility := Between('skill(''Agility'',', ')', Page);
Agility := Between(''',', ',''', Agility);
Thieving := Between('skill(''Thieving'',', ')', Page);
Thieving := Between(''',', ',''', Thieving);
Slayer := Between('skill(''Slayer'',', ')', Page);
Slayer := Between(''',', ',''', Slayer);
Farming := Between('skill(''Farming'',', ')', Page);
Farming := Between(''',', ',''', Farming);
Runecrafting := Between('skill(''Runecrafting'',', ')', Page);
Runecrafting := Between(''',', ',''', Runecrafting);
Hunter := Between('skill(''Hunter'',', ')', Page);
Hunter := Between(''',', ',''', Hunter);
Construction := Between('skill(''Construction'',', ')', Page);
Construction := Between(''',', ',''', Construction);
Summoning := Between('skill(''Summoning'',', ')', Page);
Summoning := Between(''',', ',''', Summoning);
End Else
Begin
WriteLn('ERROR: Private Profile, can only retreive Info from Public Profiles.');
TerminateScript;
End;
End Else
Begin
WriteLn('ERROR: Non-Member Account, can only retreive Info from Members Accounts.');
TerminateScript;
End;
End Else
Begin
WriteLn('ERROR: Could not retrieve Info.');
TerminateScript;
End;
If Not PvPInfo Then
Begin
WriteLn('[*]~~~~~~~~~~~~~~~~~~~~~~~~~[*]');
WriteLn('[*] Player Name: ' + RSUser);
WriteLn('[*] Total Level: ' + TL);
WriteLn('[*] Attack: ' + Attack);
WriteLn('[*] Defence: ' + Defence);
WriteLn('[*] Strength: ' + Strength);
WriteLn('[*] Hitpoints: ' + Hitpoints);
WriteLn('[*] Ranged: ' + Ranged);
WriteLn('[*] Prayer: ' + Prayer);
WriteLn('[*] Magic: ' + Magic);
WriteLn('[*] Cooking: ' + Cooking);
WriteLn('[*] Woodcutting: ' + Woodcutting);
WriteLn('[*] Fletching: ' + Fletching);
WriteLn('[*] Fishing: ' + Fishing);
WriteLn('[*] Firemaking: ' + Firemaking);
WriteLn('[*] Crafting: ' + Crafting);
WriteLn('[*] Smithing: ' + Smithing);
WriteLn('[*] Mining: ' + Mining);
WriteLn('[*] Herblore: ' + Herblore);
WriteLn('[*] Agility: ' + Agility);
WriteLn('[*] Thieving: ' + Thieving);
WriteLn('[*] Slayer: ' + Slayer);
WriteLn('[*] Farming: ' + Farming);
WriteLn('[*] Runecrafting: ' + Runecrafting);
WriteLn('[*] Hunter: ' + Hunter);
WriteLn('[*] Construction: ' + Construction);
WriteLn('[*] Summoning: ' + Summoning);
WriteLn('[*]~~~~~~~~~~~~~~~~~~~~~~~~~[*]');
End Else
Begin
WriteLn('[*]~~~~~~~~~~~~~~~~~~~~~~~~~[*]');
WriteLn('[*] Player Name: ' + RSUser);
WriteLn('[*] Attack: ' + Attack);
WriteLn('[*] Defence: ' + Defence);
WriteLn('[*] Strength: ' + Strength);
WriteLn('[*] Hitpoints: ' + Hitpoints);
WriteLn('[*] Ranged: ' + Ranged);
WriteLn('[*] Prayer: ' + Prayer);
WriteLn('[*] Magic: ' + Magic);
WriteLn('[*] Agility: ' + Agility);
WriteLn('[*]~~~~~~~~~~~~~~~~~~~~~~~~~[*]');
End;
End;
begin
ClearDebug;
GetPlayerLevels('', False);
{USE: RSUser - Player to lookup | PvPInfo - 'False' for all levels, 'True' for PvP specific levels}
end.