Code:
program pickpocket;
{
===============================================
Pickpocketing Script for RS1
Start logged in near the NPC you are thieving.
Sleeping bag goes in the first slot.
Set username and password below.
===============================================
}
var
x, y, i, PP: integer;
const
username ='';
password ='';
procedure BitmapLoad;
begin
PP := BitmapFromString(38, 12,
'000000000000000000000000000000000000000000FFFFFFFFFFFF' +
'000000000000000000000000000000000000000000000000FFFFFF' +
'FFFFFF000000000000000000000000000000000000000000000000' +
'000000000000000000000000000000000000000000000000000000' +
'000000000000000000000000000000000000000000000000000000' +
'000000000000000000000000000000000000000000000000000000' +
'000000FFFFFFFFFFFF000000000000000000000000000000000000' +
'000000000000000000000000000000000000000000000000000000' +
'000000000000000000000000FFFFFFFFFFFF000000FFFFFFFFFFFF' +
'000000000000FFFFFFFFFFFF000000000000FFFFFFFFFFFFFFFFFF' +
'FFFFFF000000000000FFFFFFFFFFFF000000000000FFFFFFFFFFFF' +
'000000FFFFFFFFFFFF000000FFFFFFFFFFFF000000000000000000' +
'FFFFFFFFFFFFFFFFFFFFFFFF000000000000FFFFFFFFFFFFFFFFFF' +
'000000FFFFFFFFFFFF000000FFFFFFFFFFFF000000FFFFFFFFFFFF' +
'000000000000FFFFFFFFFFFF000000FFFFFFFFFFFF000000FFFFFF' +
'FFFFFF000000000000FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFF' +
'000000FFFFFFFFFFFF000000000000FFFFFFFFFFFF000000FFFFFF' +
'FFFFFF000000000000FFFFFFFFFFFF000000FFFFFFFFFFFF000000' +
'FFFFFFFFFFFF000000000000000000000000000000FFFFFFFFFFFF' +
'FFFFFFFFFFFF000000000000000000FFFFFFFFFFFF000000000000' +
'FFFFFFFFFFFF000000FFFFFFFFFFFF000000000000FFFFFFFFFFFF' +
'000000FFFFFFFFFFFF000000000000FFFFFFFFFFFF000000FFFFFF' +
'FFFFFF000000FFFFFFFFFFFF000000000000000000000000000000' +
'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000FFFFFFFFFFFF' +
'000000000000FFFFFFFFFFFF000000FFFFFFFFFFFF000000000000' +
'FFFFFFFFFFFF000000FFFFFFFFFFFF000000000000FFFFFFFFFFFF' +
'000000FFFFFFFFFFFF000000FFFFFFFFFFFF000000000000000000' +
'000000000000FFFFFFFFFFFF000000FFFFFFFFFFFF000000000000' +
'FFFFFFFFFFFF000000000000FFFFFFFFFFFF000000FFFFFFFFFFFF' +
'000000000000FFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFF000000' +
'FFFFFFFFFFFF000000FFFFFFFFFFFF000000FFFFFFFFFFFF000000' +
'000000FFFFFFFFFFFF000000FFFFFFFFFFFF000000000000FFFFFF' +
'FFFFFF000000FFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFF000000' +
'FFFFFFFFFFFF000000000000FFFFFFFFFFFF000000FFFFFFFFFFFF' +
'000000FFFFFFFFFFFF000000000000FFFFFFFFFFFF000000000000' +
'FFFFFFFFFFFFFFFFFFFFFFFF000000000000FFFFFFFFFFFF000000' +
'000000FFFFFFFFFFFF000000FFFFFFFFFFFF000000FFFFFFFFFFFF' +
'000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000' +
'FFFFFFFFFFFF000000000000000000000000000000000000000000' +
'000000000000000000000000000000000000000000000000000000' +
'000000000000000000000000000000000000FFFFFFFFFFFF000000' +
'000000000000000000000000000000000000000000000000000000' +
'000000000000FFFFFFFFFFFF000000000000000000000000000000' +
'000000000000000000000000000000000000000000000000000000' +
'000000000000000000000000000000000000000000000000FFFFFF' +
'FFFFFF000000000000000000000000000000000000000000000000' +
'000000000000000000000000000000000000000000000000000000' +
'000000000000000000000000000000000000000000000000000000' +
'000000000000000000000000000000000000000000000000000000' +
'000000000000000000000000000000000000000000000000000000' +
'000000000000000000000000000000000000');
end;
procedure Pick;
begin
if (FindColorSpiral (x, y, 533335, 0, 35, 510, 330)) then
begin
status ('Pickpocketing NPC.');
wait(300);
ClickMouse (x, y, False);
wait(300);
if (FindBitmap (PP, x, y)) then
begin
ClickMouse (x+2, y+2, True);
wait(300);
end;
end;
end;
procedure Sleep;
begin
if (IsTextAt (7, 304, 'You are too')) then
begin
status ('Sleeping.');
writeln ('Using sleeping bag.');
MoveMouse (490, 15)
Wait (300);
ClickMouse (285, 50, True);
Wait(2000)
repeat
wait (50);
if (i = 400) then
begin
ClickMouse (180, 300, True);
wait (5000);
writeln ('Asking for a new word.');
wait (2000);
end;
until (IsTextAt (7, 304,'You wake up')) or
(IsTextAt (7, 304,'You are unexpectedly awoken')) or
(IsTextAt (7, 304,'You can t do that whilst')) or
(GetColor (167,41) <> 65535);
MoveMouse(10,10)
wait (10);
end;
wait (50);
end;
procedure Run;
begin
if (IsTextAt (7, 304, 'You are under att')) then
begin
wait (206);
ClickMouse (105, 65, True); // Set attack mode
wait (6001);
status ('Running from combat.');;
MoveMouse (460, 15);
wait (332);
ClickMouse (430, 110, True);
wait (214);
MoveMouse (260, 140);
wait (215);
end;
if (IsTextAt (7, 304, 'You can t do that whilst')) then
begin
wait (206);
ClickMouse (105, 65, True); // Set attack mode
wait (6001);
status ('Running from combat.');;
MoveMouse (460, 15);
wait (332);
ClickMouse (430, 110, True);
wait (214);
MoveMouse (260, 140);
wait (215);
end;
wait (53);
end;
procedure AutoLogin;
begin
if (FindColorSpiral (x, y, 7888212, 300, 305, 355, 308)) then
if (FindColorSpiral (x, y, 16777215, 80, 245, 95, 265)) then
begin
status ('Logging in');
// Click on "Click here to login"
ClickMouse(255, 285, True);
wait(500);
// Enter username
ClickMouse(150, 250, True);
wait(500);
SendKeysSilent(username);
wait(300);
// Enter password
ClickMouse(190, 300, True);
wait(500);
SendKeysSilent(password);
wait(500);
// Log in
ClickMouse(410, 250, True);
wait(5000);
// Close welcome screen
ClickMouse(254, 217, True);
wait(500);
end;
end;
begin
status ('Pickpocketing script.');
writeln ('Starting pickpocketing script.');
BitmapLoad;
repeat
AutoLogin;
Sleep;
Run;
Pick;
until (False);
end.