SCAR Code:
function FindMineSymbol : Boolean;
begin
Writeln('Searching For Mine Symbol...');
Wait(600+random(100));
//AntiRandom;
i := 0;
SymbolAccuracy := 0.5;
if not LoggedIn then Exit;
repeat
Wait(300+random(100));
i := i+1;
if (FindSymbol(x, y, 'mining site')) then
begin
Writeln('Found Mine Symbol');
Players[CurrentPlayer].Loc := 'Mine';
Mouse(x, y, 3, 3, True);
FFlag(10);
SymbolAccuracy := 0.8;
Result := True;
end else
begin
if (i >= 3) then
begin
SymbolAccuracy := 0.8;
Players[CurrentPlayer].Loc := 'Lost';
Writeln('Could Not Find Mine Symbol');
NextPlayer(False);
//EndScript;
end;
end;
until(i >= 3);
end;
procedure WalkToBank;
var
MineToBank1DTM, MineToBank2DTM, MineToBank3DTM : Integer;
begin
if not LoggedIn then Exit;
//AntiRandom;
MakeCompass('N');
SetAngle(True);
Writeln('Walking To Bank...');
for i := 6 to 10 do
begin
WalkCounter[i] := 0;
end;
if not LoggedIn then Exit;
MineToBank1DTM := DTMFromString('78DA637CC7C4C0F089010504251A31FC07D28' +
'C40FC1F0818AF02D5FC405593E0CACE20095503028C97806A1819' +
'51D484F909A2AA790354C301E1C1C454E2B819E490D5DC00AA116' +
'5C46B170052C50F5D');
Writeln('Searching For MineToBank1DTM...');
if (DTMRotated(MineToBank1DTM, x, y, MMx1, MMy1, MMx2, MMy2)) then
begin
Writeln('Found MineToBank1DTM');
Mouse(x, y, 3, 3, True);
FFlag(10);
end else
begin
FreeDTM(MineToBank1DTM);
Writeln('Could Not Find MineToBank1DTM');
if (FindMineSymbol) then
begin
WalkToBank;
end else
begin
Players[CurrentPlayer].Loc := 'Lost';
Writeln('Player Is Lost');
NextPlayer(False);
//EndScript;
end;
end;
FreeDTM(MineToBank1DTM);
if not LoggedIn then Exit;
MineToBank2DTM := DTMFromString('78DA63BCCCC4C0F0930105A4953B33FC07D28' +
'C40FC1F08180F03D57C455513E627C8200955030260352C109E24' +
'921A06643567806A8450D524B8B2A3A8010043F40DB8');
Writeln('Searching For MineToBank2DTM...');
if (DTMRotated(MineToBank2DTM, x, y, MMx1, MMy1, MMx2, MMy2)) then
begin
Writeln('Found MineToBank2DTM');
Mouse(x, y, 3, 3, True);
FFlag(10);
end else
begin
Writeln('Could Not Find MineToBank2DTM');
if (WalkAlongWall(0, 60, 30)) then
begin
Wait(300+random(150));
Writeln('Backup Walk Successful');
Writeln('Searching For MineToBank2DTM...');
if (DTMRotated(MineToBank2DTM, x, y, MMx1, MMy1, MMx2, MMy2)) then
begin
Writeln('Found MineToBank2DTM');
Mouse(x, y, 3, 3, True);
FFlag(10);
FreeDTM(MineToBank2DTM);
end else
begin
FreeDTM(MineToBank2DTM);
Writeln('Could Not Find MineToBank2DTM');
Players[CurrentPlayer].Loc := 'Lost';
Writeln('Player Is Lost');
NextPlayer(False);
// EndScript;
end;
end else
begin
FreeDTM(MineToBank2DTM);
Writeln('Backup Walk Not Successful');
Players[CurrentPlayer].Loc := 'Lost';
Writeln('Player Is Lost');
NextPlayer(False);
//EndScript;
end;
end;
FreeDTM(MineToBank2DTM);
if not LoggedIn then Exit;
MineToBank3DTM := DTMFromString('78DA637CCEC4C0F0920105E4973B33FC07D28' +
'C40FC1F08181F00D53C4455636DC4CC20095503028C57816A5EA0' +
'AA49706547557307A8E613AA9A303F415435D7816AFEE15703000' +
'5811214');
Writeln('Searching For MineToBank3DTM...');
if (DTMRotated(MineToBank3DTM, x, y, MMx1, MMy1, MMx2, MMy2)) then
begin
Writeln('Found MineToBank3DTM');
Mouse(x, y, 3, 3, True);
FFlag(10);
end else
begin
Writeln('Could Not Find MineToBank3DTM');
if ((WalkAlongWall(0, 18, 40)) or (WalkAlongWall(340, 360, 40))) then
begin
Wait(300+random(150));
Writeln('Backup Walk Successful');
Writeln('Searching For MineToBank3DTM...');
if (DTMRotated(MineToBank3DTM, x, y, MMx1, MMy1, MMx2, MMy2)) then
begin
Writeln('Found MineToBank3DTM');
Mouse(x, y, 3, 3, True);
FFlag(10);
FreeDTM(MineToBank3DTM);
end else
begin
FreeDTM(MineToBank3DTM);
Writeln('Could Not Find MineToBank3DTM');
Players[CurrentPlayer].Loc := 'Lost';
Writeln('Player Is Lost');
NextPlayer(False);
//EndScript;
end;
end else
begin
FreeDTM(MineToBank3DTM);
Writeln('Backup Walk Not Successful');
Players[CurrentPlayer].Loc := 'Lost';
Writeln('Player Is Lost');
NextPlayer(False);
// EndScript;
end;
end;
FreeDTM(MineToBank3DTM);
if not LoggedIn then Exit;
VarrockRoadColor := FindVarrockRoadColor;
Writeln('Walking To Varrock Road...');
if (RadialWalk(VarrockRoadColor, -12, 12, 75, -1, 1)) then
begin
Writeln('Walk To Varrock Road Successful');
FFlag(10);
end else
begin
Writeln('Walked To Varrock Road Not Successful');
if ((WalkAlongWall(0, 25, 40)) or (WalkAlongWall(345, 360, 40))) then
begin
Wait(300+random(150));
Writeln('Backup Walk Successful');
VarrockRoadColor := FindVarrockRoadColor;
Writeln('Walking To Varrock Road...');
if (RadialWalk(VarrockRoadColor, -12, 12, 75, -1, 1)) then
begin
Writeln('Walk To Varrock Road Successful');
FFlag(10);
end else
begin
Writeln('Could Not Find Varrock Road');
Players[CurrentPlayer].Loc := 'Lost';
Writeln('Player Is Lost');
NextPlayer(False);
//EndScript;
end;
end else
begin
Writeln('Backup Walk Not Successful');
Players[CurrentPlayer].Loc := 'Lost';
Writeln('Player Is Lost');
NextPlayer(False);
// EndScript;
end;
end;
if not LoggedIn then Exit;
VarrockRoadColor := FindVarrockRoadColor;
Writeln('Walking To Varrock Road...');
if (RadialWalk(VarrockRoadColor, 65, 96, 47, -1, 1)) then
begin
Writeln('Walk To Varrock Road Successful');
FFlag(10);
end else
begin
Writeln('Walked To Varrock Road Not Successful');
SymbolAccuracy := 0.5;
Writeln('Backup: Searching For Anvil Symbol...');
if (FindSymbol(x, y, 'anvil')) then
begin
SymbolAccuracy := 0.8;
Wait(250+random(100));
Mouse(x, y - 25, 3, 3, True);
FFlag(10);
Writeln('Found Anvil Symbol');
end else
begin
SymbolAccuracy := 0.8;
Writeln('Backup: Could Not Find Anvil Symbol');
Players[CurrentPlayer].Loc := 'Lost';
Writeln('Player Is Lost');
NextPlayer(False);
//EndScript;
end;
end;
if not LoggedIn then Exit;
BankDTM := DTMFromString('78DA63FCC2C4C060C6C8800CFEFDFBC7F01F4' +
'88344FF0301E36F4C357FFE30314842D58000588D1E116A5409A8' +
'F905542343841A1122D470E3570300A0711C58');
Wait(300+random(150));
AntiRandom;
Writeln('Searching For BankDTM');
if (DTMRotated(BankDTM, x, y, MMX1, MMY1, MMX2, MMY2)) then
begin
Mouse(x, y, 1, 1, True);
WriteLn('Found BankDTM');
Flag;
Players[CurrentPlayer].Loc := 'Bank';
FreeDTM(BankDTM);
end else
begin
Writeln('Cannot Find BankDTM');
SymbolAccuracy := 0.5;
Writeln('Backup: Searching For Bank Symbol...');
if (FindSymbol(x, y, 'bank')) then
begin
SymbolAccuracy := 0.8;
Wait(250+random(100));
Mouse(x, y, 3, 3, True);
Flag;
Writeln('Found Bank Symbol');
Wait(500+random(250));
if (DTMRotated(BankDTM, x, y, MMX1, MMY1, MMX2, MMY2)) then
begin
Mouse(x, y, 1, 1, True);
WriteLn('Found BankDTM');
Flag;
Players[CurrentPlayer].Loc := 'Bank';
FreeDTM(BankDTM);
end else
begin
FreeDTM(BankDTM);
Writeln('Cannot Find BankDTM');
Players[CurrentPlayer].Loc := 'Lost';
Writeln('Player Is Lost');
NextPlayer(False);
//EndScript;
end;
end else
begin
SymbolAccuracy := 0.8;
Writeln('Backup: Could Not Find Bank Symbol');
Players[CurrentPlayer].Loc := 'Lost';
Writeln('Player Is Lost');
NextPlayer(False);
//EndScript;
end;
end;
end;