Simba Code:
program RightScaleClick;
{$DEFINE SMART}
{$i srl/srl.simba}
{$i sps/sps.simba}
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name :=''; // enter your Rs name
Players[0].Pass :=''; // enter your Rs password
Players[0].Nick :=''; // 3-4 letter of your name
Players[0].Active := True; // let it to true
Players[0].Pin := ''; // Bank Pin
end;
procedure Antiban;
begin
if(not(LoggedIn))then Exit;
begin
case Random(100) of
10: RandomRClick;
30: PickUpMouse;
70: BoredHuman;
89: ExamineInv;
end;
end;
end;
procedure WalkTobank; // walk from statue to the bank with SPS
var
Pathtobank: TPointArray;
begin
SPS_Setup(RUNESCAPE_SURFACE,['9_7']);
Pathtobank := [Point(3691, 3130), Point(3680, 3127), Point(3670, 3126), Point(3663, 3125),
Point(3651, 3126), Point(3643, 3133), Point(3637, 3141), Point(3631, 3150), Point(3621, 3155),
Point(3618, 3165), Point(3617, 3173), Point(3617, 3182)];
SPS_WalkPath(Pathtobank);
Wait(random(500));
end;
procedure Bank; // deposite all at falador west bank
begin
if not LoggedIn then Exit;
repeat
OpenBankFast('fwb');
Wait(Random(700));
until BankScreen or PinScreen;
if PinScreen then
begin
repeat
InPin(Players[0].Pin);
until BankScreen or not (LoggedIn);
end;
DepositAll;
end;
procedure Walktowall;
var
Pathtowall: TPointArray;
begin
SPS_Setup(RUNESCAPE_SURFACE,['9_7','8_7','8_8']);
Pathtowall := [Point(3615, 3175), Point(3594, 3189), Point(3596, 3198), Point(3597, 3210),
Point(3596, 3220), Point(3594, 3230), Point(3582, 3236)];
SPS_WalkPath(Pathtowall);
Wait(random(1000));
end;
procedure cross;
var
x, y, wall: Integer;
begin
MakeCompass('W');
wall := DTMFromString('mKgEAAHic42NgYLgMxMeB+BgQPwPix1B8FIgvQeWfQvF1ID4DVZsDxElAXAjFCUCcCcTZQJwCxPlAnAtlw3AGEO/etojh5JF1DP1tNWC8beM8hs3rZjMsmdXH8PjuEYbVy6YwrF0xlWHD6hkMp4+uB2MQm1zASCZGBQDn2S1y');
if FindDTM(wall, x, y, MSX1, MSY1, MSX2, MSY2) then
begin
Mouse(x, y, 4, 4, True);
end;
end;
procedure Walktoladder;
var
Pathtoladder: TPointArray;
begin
SPS_Setup(RUNESCAPE_SURFACE,['8_8','8_7']);
Pathtoladder := [Point(3569, 3235), Point(3556, 3232), Point(3542, 3224), Point(3535, 3217),
Point(3528, 3209), Point(3518, 3201), Point(3509, 3191), Point(3504, 3186),
Point(3497, 3179), Point(3492, 3172), Point(3483, 3162), Point(3476, 3153),
Point(3467, 3147), Point(3460, 3143), Point(3452, 3135), Point(3443, 3129),Point(3434, 3122),
Point(3426, 3117), Point(3416, 3110), Point(3405, 3102), Point(3399, 3097), Point(3390, 3090),
Point(3380, 3076)];
SPS_WalkPath(Pathtoladder);
end;
procedure LadderAndPipe;
var
x, y, ladder, pipe: Integer;
begin
MakeCompass('N')
ladder := DTMFromString('maQEAAHicE2RgYGgD4gIgXgHES4A4AoibgTgDiLuAeCkQTwHiCiDOA+I6IJ4FxMugOB8qXw7E9VD1i4F4NRBPAuIqqPwqKO4A4mogrgHiXiCeC8TLgZiXl4/Bwd0LTIOwpJQUg52DI4OqpjaDm18gWEzPwJBBVkGRQUlNA64OGVMDMFIBYwAA08MY5Q==');
pipe := DTMFromString('mFQEAAHic42VgYFgCxNOBeCEQrwHijVC8DoiXAvFsIJ4MxBOAeBJUbRcQV0JxHRC3AXEPVB0MdwNxCxDXQ/WWR6sy+NtKMGQHKTKEuOkzJAaaMaT7KzAkeskxZAYoMOTG2DKkBuoyRPkYM7iZioLZ5ABGMjAKAABpVRn5');
if FindDTM(ladder, x, y, MSX1, MSY1, MSX2, MSY2) then
begin
Mouse(x, y, 4, 4, True);
MakeCompass('E');
end;
if FindDTM(pipe, x, y, MSX1, MSY1, MSX2, MSY2) then
Mouse(x, y, 4, 4, True);
end;
procedure Collect;
var
x, y, ladder, scale: Integer;
begin
scale := DTMFromString('mggAAAHicY2NgYEhiZGCIB+IUIE5nRPD/AOW+A/FXIP4LxExAsf9AWt22niE/0pBByTSfQdWynKGivJZB1aqSARdgxIEhAABW6A0C');
if FindDTM(scale, x, y, MSX1, MSY1, MSX2, MSY2) then
Mouse(x, y, 4, 4, True);
end;
procedure Teleport; //teleport with fally teletab if inv is full
var
x, y, Tab: Integer;
begin
if InvFull then
begin
Tab := DTMFromString('mrAAAAHic42BgYMhlYmCoBOIqIE4A4hwmiFg1EMcD8VOgmptA/BGKb0DpZ0D8BIg7585jcLc3ZjBQUADTDAxMDCkJCWAagvEDRgIYBgBcXg+X');
if FindDTM(Tab, x, y, MIX1, MIY1, MIX2, MIY2) then
Mouse(x, y, 4, 4, True);
end;
end;
Procedure Mainloop;
begin
repeat
WalkTobank;
Bank;
Walktowall;
cross;
Walktoladder;
LadderAndPipe;
Collect;
Teleport;
until False;
end;
begin
SetUpSRL;
ClearDebug;
DeclarePlayers;
if not LoggedIn then Exit;
Mainloop;
end.