SCAR Code:
program New;
program New;
{.include SRL/SRL.Scar}
var
x,y, NotFoundHim, stonemason, a, blocks, gained, spent, antibans, dooropen: integer;
const
YourSRLID = '3138'; // Eneter your srl ID
YourSRLPassword = 'summoner'; // SRL password
RemoteMaster = 'ight';
color1 = 7510470;
color2 = 2108229;
color3 = 3822649;
load = 1;
version = 1;
Procedure DeclarePlayers;
Begin
NumberOfPlayers(2);
CurrentPlayer := 0;
Players[0].Name := 'gggg; // Player Name
Players[0].Pass := 'oops ; // Player Pass
Players[0].Nick := 'egggg'; // Player Nick (if your name is 'macroman' then your nick should be 'acro')
Players[0].Active := true; // Is this player active? (True / False)
//Players[0].loads := '300'; // Amount of loads, 28*300 = total items
Players[1].Name := 'g'; // Player Name
Players[1].Pass := 'g1'; // Player Pass
Players[1].Nick := 'egk'; // Player Nick (if your name is 'macroman' then your nick should be 'acro')
Players[1].Active := true; // Is this player active? (True / False)
//Players[1].loads := '300'; // Amount of loads, 28*300 = total items
Case Random(6) of
0 : Disguise('iTunes');
1 : Disguise('Windows Live Messenger');
2 : Disguise('FileZilla');
3 : Disguise('RuneScape - the massive online adventure game by Jagex Ltd - Mozzila Firefox');
4,5,6 : Disguise('iTunes');
end;
stonemason := BitmapFromString(15, 15, 'beNpjYMAEjEiAAS/Ysm' +
'8bMsKqBSgCV5BVkgNByFqwqiwJUcrPDASimLQ4IIKLYyoGqkz2EfQ' +
'xYPYO9YUgNMXIKqMtuYEqp8ybClEJZCC7H64YWSUcYfUskAGxHa6m' +
'vLEC6EE0Z8MVAxGaSrhiuHpkxXAElIWrRHY8JADR1KOphCiGBzVWw' +
'4Fq3Dwd0IzFqh4tTLDGOKYV+JMTIypAkQMAvWPn/Q==');
end;
Procedure ProgressReport;
begin
blocks := banks * 28;
gained:= ((blocks * 108) - spent);
writeln(' ');
WriteLn('It was '+(TheTime)+' on '+(TheDate(1))+' when this proggy was written:');
WriteLn ('-----------------------------------------------------------------------');
WriteLn('|-------------------[Version '+FloatToStr(Version)+']-------------------|');
Writeln('Amount of banks:' + inttostr(banks) +'');
Writeln('Amount of Blocks:' + inttostr(blocks) +'');
Writeln('Money spent:' + inttostr(spent) +'');
Writeln('Money gained:' + inttostr(gained) +'');
writeln('Doors opened:' + inttostr(dooropen) +'');
writeln('Antibans performed:' + inttostr(antibans) +'');
Writeln ('<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>');
Writeln(' Worked for '+ TimeRunning);
SRLRandomsReport;
end;
// AUTOCOLOUR BY SUMILLION AND NIELSIE +REP
function AutoColor: Integer;
var
arP: TPointArray;
arC: TIntegerArray;
tmpCTS, i, arL: Integer;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(10.00, 0.16);
if not (FindColorsTolerance(arP, 6776671, MMX1, MMY1, MMX2, MMY2, 5)) then
begin
Writeln('Auto-Colouring Failed, please reload runescape and press play again.');
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
ClearSameIntegers(arC);
arL := High(arC);
for i := 0 to arL do
begin
if (rs_OnMinimap(arP[i].x, arP[i].y)) then
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 9.03) and (X <= 15.05) and (Y >= 9.17) and (Y <= 15.26) and (Z >= 9.46) and (Z <= 16.35) then
begin
Result := arC[i];
Writeln('AutoColor = ' + IntToStr(arC[i]));
Break;
end;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
if (i = arL + 1) then
Writeln('Auto-Colouring Failed, please reload runescape and press play again.');
// logout;
//wait(5000 + random(5000));
//loginplayer;
end;
procedure antiban;
begin
if(not(LoggedIn)) then
LoginPlayer;
writeln('How unlucky kk??');
wait(300 + random(300));
antibans:= antibans +1;
end;
procedure fixbankbox;
begin
end;
procedure walktoshop;
begin
if (not(LoggedIn)) then
exit;
a:= 0;
RoadColor := AutoColor;
repeat
RadialRoadWalk(RoadColor, 80, 110, 55, 1, 1);
until(FindSymbol(X,Y,'farming spot'));
writeln('Found Farming');
Mouse(x,y, 10, 10, true);
writeln('clicked farming spot');
Case Random(3) of
0 : FFlag(80);
1 : antiban;
2 : FFlag(2 + random(5));
3 : wait(1000 + random(40))
end;
writeln('waiting for flag to disappear');
repeat
RadialRoadWalk(RoadColor , 170, 190, 50, 1, 1);
Until(FindBitmapSpiralTolerance(stonemason,x,y,MMX1,MMY1,MMX2,MMY2, 80));
writeln('Found The Shop symbol');
Mouse(x, y , 1, 1, true);
flag;
end;
procedure walkfromshop;
begin
if (not(LoggedIn)) then
LoginPlayer;
RoadColor := AutoColor;
repeat
RadialRoadWalk(RoadColor, 350, 355, 70, 1, 1);
until(FindSymbol(X,Y,'farming spot'));
writeln('Found Farming');
Mouse(x,y, 10, 10, true);
writeln('clicked farming spot');
wait(200 + random(300));
Case Random(1) of
0 : FFlag(20);
//1 : antiban;
// 2 : FFlag(2 + random(5));
// 3 : wait(1000 + random(40))
end;
writeln('waiting for flag to disappear');
repeat
RadialRoadWalk(RoadColor , 300, 310, 50, 1, 1);
until(FindSymbol(X,Y,'bank'));
writeln('Found The bank symbol');
Mouse(x, y , 1, 1, true);
flag;
end;
procedure boxlog;
begin
repeat
LoginPlayer;
wait(300+random(400));
if(FindSymbol(x,y, 'bank')) then
begin
writeln('Found bank symbol, restarting script');
end else
begin
if(FindBitmapSpiralTolerance(stonemason,x,y,MMX1,MMY1,MMX2,MMY2, 80)) then
writeln('Found stone mason');
walkfromshop;
end;
until(false);
end;
procedure door;
var
i: Integer;
begin
if (not(LoggedIn)) then
boxlog;
SetAngle(False);
makecompass('s');
i:= 0;
//if(FindTheDoorSafe(x, y, ['oor'], [5788242,3622225,1387833], 10))then
if(FindObjTPA(x, y, 3622225, 20, -1, 7, 7, 15, ['oor'])) then
repeat
i:= i + 1;
writeln('finding door close/ open');
if(IsUpText('pen'))then
begin
Mouse(x, y, 5, 5, false);
writeln('door found');
dooropen := dooropen +1;
if(ChooseOption('Open'))then
end else
if(IsUpText('los'))then
Exit;
until(i >= 10);
end;
procedure banking;
var
b: Integer;
begin
if (not(LoggedIn)) then
exit;
b:= 0;
repeat
if (FindSymbol(x,y,'bank')) then
b:= b + 1;
until(b >= 10);
begin
wait(200+random(600));
if(OpenBankQuiet('veb'))then
begin
DepositAll;
banks := banks +1;
fixbank;
wait(100+random(400));
OpenBankQuiet('veb');
wait(200+random(400));
Withdraw(-1, 1, 588);
end
end;
end;
procedure BuyStuff;
begin
MakeCompass('N');
if (not(LoggedIn)) then
LoginPlayer;
if shopscreen then
begin
mouse(76,115,10,10, false);
if ChooseOption('Buy X') then
begin
wait(1000+400);
typesend('28');
Wait(1000 + Random(500));
mouse(485,40,7,7, true);
spent := spent + 588;
end;
end;
end;
Function FindTheDude(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tolerance: Integer): Boolean;
var
a, b, c, i, x1, y1, x2, y2, x3, y3: Integer;
Start: Boolean;
begin
if (not(LoggedIn)) then
LoginPlayer;
For b := 0 to (GetArrayLength(Color)-1) do
Begin
if (FindColorSpiralTolerance(cx, cy, color[b], MSX1, MSY1, MSX2, MSY2, Tolerance)) then
Begin
Start := True;
Break;
end;
end;
If(Start)then
Begin
x1 := 245;
y1 := 165;
x2 := 277;
y2 := 185;
repeat
If not(LoggedIn)then
break;
a := a + 1;
If (a = 1) then
c := c + 1
else If (a = 3) then
c := c + 1;
For i := 1 to c do
Begin
If (a = 1) then
Begin
x1 := x1 + 30;
x2 := x2 + 30;
end else
If (a = 2) then
Begin
y1 := y1 - 20;
y2 := y2 - 20;
end else
If (a = 3) then
Begin
x1 := x1 - 30;
x2 := x2 - 30;
end else
If (a = 4) then
Begin
y1 := y1 + 20;
y2 := y2 + 20;
end;
If (x1 = 485) and (x2 = 517) then
x2 := x2 - 2;
If (y1 = 325) and (y2 = 345) then
y2 := y2 - 7;
If (x2 > 515) then
Break;
For b := 0 to (GetArrayLength(Color)-1) do
Begin
If (FindColorTolerance(cx, cy, Color[b], x1, y1, x2, y2, tolerance)) then
Begin
if not FindColorTolerance(x3, y3, Color3, (cx - 5), (cy - 5), (cx + 5), (cy + 5), 5) then
begin
Result := False;
end else
begin
MMouse(cx, cy, 0, 0);
Wait(50 + random(100));
if (IsUpTextMultiCustom(Text)) then
Begin
Result := True;
Exit;
end;
end;
end;
end;
end;
if (a = 4) then a := 0;
until (x2 > 515) or (Result = True);
end;
end;
procedure findNtrade;
begin
if (not(LoggedIn)) then
exit;
repeat
case random(5)of
0: MakeCompass('S');
1: wait(random(100));
2: MakeCompass('W');
3: MakeCompass('N');
4: MakeCompass('E');
5: wait(random(200));
end;
If FindTheDude(x, y, ['Stonemason', 'mason'], [color1, color2], 6) then
begin
Mouse(X, Y, 1, 1, false);
Wait(20 + Random(70));
if ChooseOption('rade') then
Wait(700 + Random(200));
BuyStuff;
MakeCompass('N');
end else
NotFoundHim := NotFoundHim+1;
FindNTrade;
wait(500+random(200));
until(shopscreen) or (NotFoundHim > 20);
if (notFoundHim > 20) or (ShopScreen = False) then
begin
writeln('Failed while finding the shopkeeper');
end;
end;
begin
cleardebug;
SetupSRL;
RCMaster:=RemoteMaster;
activateclient;
DeclarePlayers;
if (not(LoggedIn)) then
LoginPlayer;
//boxlog;
repeat
// FindNormalRandoms;
rc;
//writeln('lol' + inttostr(RCFindFriend));
//ProgressReport;
// autocolor;
// banking;
//walktoshop;
//door(x, y, ['pen'], [5788242,3622225,1387833], 6);
//FindNTrade;
//walkfromshop;
// load:=load+1;
until(false);
//until (load=20);
//if(load = 20) then logout;
end.