Garrett
2007-07-19 16:37:05
<!– BEGIN TEMPLATE: formanswers –>
Garrett92 - SRL Member Application Form
Garrett92
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
PHP
Other Communitys
Mopar
How Long have You Played Runescape
2 Years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Still quite new to SRL. But I have been wanting to become a member, I have already applied once, but I'll try again. I have read up on JAD's tutorial, seems that I have everything there that it takes, so hopefully everyone will like what they see.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
Lots of things have been changed since my last application.
Changed Script:
——————————————————
<!– END TEMPLATE: formanswers –>
Garrett92 - SRL Member Application Form
Garrett92
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
PHP
Other Communitys
Mopar
How Long have You Played Runescape
2 Years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Still quite new to SRL. But I have been wanting to become a member, I have already applied once, but I'll try again. I have read up on JAD's tutorial, seems that I have everything there that it takes, so hopefully everyone will like what they see.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
Lots of things have been changed since my last application.
Changed Script:
{///////////////////////////////////////////////////////////////////////////////
| Garrett's Rune Mysteries Quest Runner
|
| Instructions
| ============
| Start In Lumbridge Castle Courtyard (Where You Spawn).
| RuneScape Full Bright and Low Detail
| SCAR Divi 3.11
| SRL 3.81
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
| Version Info:
| V1.0-First Release.
| V1.1-Some Bug Fixes.
| V1.2-More Bug Fixes.
///////////////////////////////////////////////////////////////////////////////}
Program GarrettsRuneMysteriesQuestRunner;
{.include SRL/SRL.Scar}
Const
//Settings
BackToVarr = 'True'; // Walks back to Varrock after finishing the quest. True or False.
YourSRLID = ''; // SRL ID
YourSRLPASS = ''; // SRL Password
Antibann = 'On'; // AntiBan - On / Off Change Scripts Speed and Antiban.
WaitTime = 400; // This is sets the wait time. 500 Max, 200 Min. Sets Random Wait Time + Wait Time.
// Wait(Number+Random(Number))
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// Do NOT Edit Below This - Unless You Know What Your Doing ///////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
///////////////////////////////
Const VersionNum = '1.2'; // Do Not Edit This.
///////////////////////////////
var
LumbyCastle, GetLumbyCo, Success, Ix, Iy, Sx, Sy, DirtRoad, DirtRoadCo, Rx, Ry,
QuestionSymbolCo, QuestionSymbol, WizardsBridge, WizardsBridgeCo, MageShop,
DraynorRoad, DraynorRoadCo, MapLadderCo, LumbyBridge, LumbyBridgeCo, PlayersCompleted,
VarrockRoad, VarrockRoadCo, VarrockDirtRoadCo, VarrockDirtRoad, WaterSymbol: Integer;
Procedure LoadPics;
Begin
LumbyCastle := BitmapFromString(8, 8, 'z78DA337331333733331' +
'B2507880400C4B154C1');
QuestionSymbol := BitmapFromString(3, 3, 'z78DA733277367272' +
'752291040068570D1E');
DirtRoad := BitmapFromString(4, 4, 'z78DA33713436377434A119' +
'0900FD6D1511');
WizardsBridge := BitmapFromString(9, 9, 'z78DA333730B330B33' +
'41F258735090085646685');
DraynorRoad := BitmapFromString(7, 6, 'z78DA333337753333301' +
'B91240017AF36CD');
LumbyBridge := BitmapFromString(12, 5, 'z78DA333133B6303432' +
'1925694C020095CD4921');
VarrockRoad := BitmapFromString(7, 5, 'z78DAB330307731B7B01' +
'84624000ADD2E37');
VarrockDirtRoad := BitmapFromString(4, 4, 'z78DAB3B03437357' +
'5B1A01909000BDC1561');
End;
function FindFastRandoms: Boolean; //By WT-Fakawi.
var
i: Integer;
begin
for i := 1 to 8 do
begin
case I of
1: if FindDead then
Result := True;
2: if FindMod then
Result := True;
3: if FindMime then
Result := True;
4: if FindMaze then
Result := True;
5: if FindQuiz then
Result := True;
6: if FindDemon then
Result := True;
7: begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
7: begin
if InBlack then
begin
Result := True;
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
end;
8: RC;
end;
wait(1);
end;
end;
procedure FindRandoms;
begin
FindFastRandoms;
FindNormalRandoms;
end;
Procedure AntiBanage;
Begin
If(Antibann = 'Off')Then Exit;
If(Not(LoggedIn))Then Exit;
case Random(7) of
0: PickUpMouse;
1: GameTab(1 + Random(12));
2: MouseBox(MSX1,MMY1,MMX2,MMY2,5);
3: SleepAndMoveMouse(500+random(500));
end;
end;
function FindVarrockDirtPath:integer;
var
GC, ColorCount, a, i, j, n, l, TestColor, Red, Green, Blue : integer;
var
ColorArray : array of integer;
var
P : array of Tpoint;
begin
GC := 6851738;
Flag;
FindColorsSpiralTolerance(x, y, P, GC, MMX1, MMY1, MMX2, MMY2, 60);
l:=GetArrayLength(P);
SetArrayLength(ColorArray,32);
for a:= 0 to l-1 do
begin
TestColor := GetColor(P[a].x, P[a].y);
red := (TestColor mod 256);
green := ((TestColor / 256) mod 256);
blue := ((TestColor / 256) / 256);
if Blue <= 104 then if Red - Blue <= 50 then if Red <= 155 then
if Green <= 145 then if Green >= 93 then if Green - Blue >= 0 then
if Green - Blue <= 40 then if Red >= 100 then if Red - Green >= 8 then
if Red - Green <= 30 then if Red - Blue >= 40 then
begin
n:=0;
for i:= 0 to 3 do
begin
for j:= 0 to 7 do
begin
ColorArray[n]:=GetColor(P[a].x+i,P[a].y-3+j);
n:=n+1;
end;
end;
ColorCount:=0;
for n:= 0 to 31 do
begin
if ColorArray[n]=TestColor then ColorCount:=ColorCount+1;
end;
if ColorCount<17 then if ColorCount>12 then
begin
Result := TestColor;
WriteLn('Varrock Dirt Road Color = ' + IntToStr(TestColor));
Exit;
end;
end;
end;
WriteLn('Could Not Find Varrock Dirt Road Color!');
Result := 0;
end;
function FindVarrockDirtPath2:integer;
var
GC, ColorCount, a, i, j, n, l, TestColor, Red, Green, Blue : integer;
var
ColorArray : array of integer;
var
P : array of Tpoint;
begin
GC := 4284524;
Flag;
FindColorsSpiralTolerance(x, y, P, GC, MMX1, MMY1, MMX2, MMY2, 60);
l:=GetArrayLength(P);
SetArrayLength(ColorArray,32);
for a:= 0 to l-1 do
begin
TestColor := GetColor(P[a].x, P[a].y);
red := (TestColor mod 256);
green := ((TestColor / 256) mod 256);
blue := ((TestColor / 256) / 256);
if Blue <= 104 then if Red - Blue <= 50 then if Red <= 155 then
if Green <= 145 then if Green >= 93 then if Green - Blue >= 0 then
if Green - Blue <= 40 then if Red >= 100 then if Red - Green >= 8 then
if Red - Green <= 30 then if Red - Blue >= 40 then
begin
n:=0;
for i:= 0 to 3 do
begin
for j:= 0 to 7 do
begin
ColorArray[n]:=GetColor(P[a].x+i,P[a].y-3+j);
n:=n+1;
end;
end;
ColorCount:=0;
for n:= 0 to 31 do
begin
if ColorArray[n]=TestColor then ColorCount:=ColorCount+1;
end;
if ColorCount<17 then if ColorCount>12 then
begin
Result := TestColor;
WriteLn('Varrock Dirt Road Color = ' + IntToStr(TestColor));
Exit;
end;
end;
end;
WriteLn('Could Not Find Varrock Dirt Road Color!');
Result := 0;
end;
Function CheckDoor(DoorColor, Tolerance: Integer): Boolean;
Var
x, y: Integer;
Begin
If FindObj(x, y, 'oor', DoorColor, Tolerance) Then
Begin
GetMousePos(x, y);
Wait(100);
If IsUpText('pen') Then
Begin
Status('Door Is Closed.');
Mouse(x, y, 0, 0, True);
Result := True;
Wait(100);
FFlag(0);
End
Else If IsUpText('lose') Then
Begin
Status('Door Is Open.');
Mouse (x, y, 0, 0, False);
Result := True;
ChooseOption(Sx, Sy, 'Walk');
Wait(100);
FFlag(0);
End;
End;
End;
procedure Garrett (DoThis: String);
Begin
Case Lowercase(DoThis) Of
'dowait': Begin
wait(WaitTime+random(WaitTime));
End;
'checklogged': Begin
If (Not(LoggedIn)) Then LoginPlayer;
End;
'fixscreen': Begin
makecompass('N');
highestangle;
GameTab (4);
End;
'antibanrandom': Begin
FindRandoms;
AntiBanage;
End;
'doall': Begin
FindRandoms;
AntiBanage;
makecompass('N');
highestangle;
GameTab (4);
If (Not(LoggedIn)) Then TerminateScript;
End;
'reset': Begin
Success := 0;
End;
End;
End;
Function AutoRetaliate: Boolean;
Begin
GameTab(1);
Wait(500);
If (GetColor(643, 382) = 1974408) Then
Begin
Mouse(650, 380, 10, 10, True);
Wait(250);
Exit;
End Else
Result := True
End;
var
mainmenu : TForm;
NewsBtn, SetupUsersBtn, CheckVerBtn, StartScriptBtn : TButton;
Memo1 : TMemo;
useropened : integer;
N : string;
Procedure CheckVersion;
var
Ver: String;
Begin
Ver := GetPage('http://garrett.freehostia.com/versionGRMQR.php');
If(Ver > VersionNum)Then
begin
Memo1.Lines.Add('');
Memo1.Lines.Add('Your Version: '+VersionNum);
Memo1.Lines.Add('Latest Version: '+Ver);
Memo1.Lines.Add('Version is not up to date.');
Memo1.Lines.Add('Please visit this website for the latest version.');
Memo1.Lines.Add('http://www.villavu.com/forum/showthread.php?t=12772');
Exit;
end;
Memo1.Lines.Add('');
Memo1.Lines.Add('Latest Version: '+Ver);
Memo1.Lines.Add('Your Version: '+VersionNum);
Memo1.Lines.Add('You have the latest version.');
end;
Procedure WriteNews;
Begin
N := Getpage('http://garrett.freehostia.com/newsGRMQR.php');
Memo1.Lines.Add('');
Memo1.Lines.Add(+N);
end;
// From the SL Port Sarim Script
Procedure ButtonClick(Sender: TObject);
Begin
case Sender of
StartScriptBtn :
begin
If (useropened = 0) Then StartPlayers(true, '');
mainmenu.ModalResult:= mrOk;
end;
SetupUsersBtn :
Begin
StartPlayers(true, '');
useropened := 1;
Memo1.Lines.Add('');
Memo1.Lines.Add('Players Settings Were Saved.');
end;
CheckVerBtn :
CheckVersion;
NewsBtn :
WriteNews;
end;
end;
Procedure GarrettMainMenu;
Begin
mainmenu := CreateForm;
mainmenu.Left := 275;
mainmenu.Top := 157;
mainmenu.BorderStyle := bsSingle;
mainmenu.Caption := 'Garrett'#39's RuneMysteries Quest Runner '+VersionNum;
mainmenu.ClientHeight := 286;
mainmenu.ClientWidth := 595;
mainmenu.Color := clBtnFace;
mainmenu.Font.Color := clWindowText;
mainmenu.Font.Height := -11;
mainmenu.Font.Name := 'MS Sans Serif';
mainmenu.Font.Style := [];
mainmenu.Visible := False;
mainmenu.PixelsPerInch := 96;
NewsBtn := TButton.Create(mainmenu);
NewsBtn.Parent := mainmenu;
NewsBtn.Left := 11;
NewsBtn.Top := 10;
NewsBtn.Width := 75;
NewsBtn.Height := 25;
NewsBtn.Caption := 'News';
NewsBtn.TabOrder := 8;
NewsBtn.OnClick := @ButtonClick;
CheckVerBtn := TButton.Create(mainmenu);
CheckVerBtn.Parent := mainmenu;
CheckVerBtn.Left := 11;
CheckVerBtn.Top := 40;
CheckVerBtn.Width := 75;
CheckVerBtn.Height := 25;
CheckVerBtn.Caption := 'Check Version';
CheckVerBtn.TabOrder := 9;
CheckVerBtn.OnClick := @ButtonClick;
SetupUsersBtn := TButton.Create(mainmenu);
SetupUsersBtn.Parent := mainmenu;
SetupUsersBtn.Left := 11;
SetupUsersBtn.Top := 71;
SetupUsersBtn.Width := 75;
SetupUsersBtn.Height := 25;
SetupUsersBtn.Caption := 'Setup Users';
SetupUsersBtn.TabOrder := 10;
SetupUsersBtn.OnClick := @ButtonClick;
Memo1 := TMemo.Create(mainmenu);
Memo1.Parent := mainmenu;
Memo1.Left := 95;
Memo1.Top := 10;
Memo1.Width := 487;
Memo1.Height := 262;
Memo1.Lines.Add('Garrett'#39's RuneMysteries Quest Runner. Version: '+VersionNum);
Memo1.Lines.Add('Please Use The Start Script Button To Start The Script.');
Memo1.TabOrder := 11;
StartScriptBtn := TButton.Create(mainmenu);
StartScriptBtn.Parent := mainmenu;
StartScriptBtn.Left := 11;
StartScriptBtn.Top := 247;
StartScriptBtn.Width := 75;
StartScriptBtn.Height := 25;
StartScriptBtn.Caption := 'Start Script';
StartScriptBtn.TabOrder := 12;
StartScriptBtn.OnClick := @ButtonClick;
end;
Procedure GTheForm;
var
v: TVariantArray;
Begin
SetArrayLength(V, 0);
ThreadSafeCall('GarrettMainMenu', v);
end;
Procedure GShowFormModal;
Begin
mainmenu.ShowModal;
end;
Procedure GTehForm;
var
v: TVariantArray;
Begin
SetArrayLength(V, 0);
ThreadSafeCall('GShowFormModal', v);
End;
Procedure ProgressReport;
Begin
Cleardebug;
WriteLn('//////////////////////////////////////////////////')
WriteLn('| Garrett' + #39 + 's RuneMysteries Quest Runner');
WriteLn('| Version: '+VersionNum);
WriteLn('| AntiBan: '+AntiBann);
WriteLn('| ');
WriteLn('| Players Completed: '+IntToStr(PlayersCompleted));
Writeln('| Worked for '+ TimeRunning);
WriteLn('//////////////////////////////////////////////////')
SRLRandomsReport;
End;
Procedure Part1IntoLumbridgeCastle;
Begin
Status('Part 1 - Into Lumbridge Castle.');
Wait(3000);
Status('Setting Screen.');
makecompass('E');
Garrett('FixScreen');
Status('Turning On Run.');
SetRun(True);
Status('Getting Lumbridge Castle Color.');
GetLumbyCo := FindRoadColor;
Status('Castle Color: '+IntToStr(GetLumbyCo));
Garrett('DoWait');
If(GetLumbyCo = 0)Then
Begin
Repeat
Garrett('DoWait');
GetLumbyCo := AutoColorThis(LumbyCastle, 25, MMX1, MMY1, MMX2, MMY2);
Until(Not(GetLumbyCo = 0));
End;
Garrett('DoWait');
Garrett('Reset');
Garrett('DoAll');
Status('Walking To Stairway.');
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 210, 260, 50, 0, -7))Then
Begin
Success := 1;
FFlag(0);
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('Reset');
Garrett('DoAll');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 180, 270, 55, 10, -15))Then
Begin
Success := 1;
FFlag(0);
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Climbing Up Stairs.');
Repeat
If(FindObj(Ix, Iy, 'imb-up', 606303, 20))Then
Begin
Mouse (Ix, Iy, 0, 0, False);
Garrett('DoWait');
ChooseOption(Sx, Sy, 'imb-up');
FFlag(0);
Success := 1;
End;
Until (Success = 1);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Finding Room...');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 0, 20, 50, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Checking If Door Is Opened Or Closed.');
Repeat
If(CheckDoor(2904695, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Finding The Duke...');
Repeat
If(FindObj(Ix, Iy, 'oracio', 4196352, 20))Then
Begin
Mouse (Ix, Iy, 0, 0, False);
Garrett('DoWait');
ChooseOption(Sx, Sy, 'alk-to');
FFlag(0);
Success := 1;
End;
Until (Success = 1);
Status('Talking To The Duke.');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('quest');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('problem');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
Status('Checking If Door Is Opened Or Closed.');
Repeat
If(CheckDoor(2904695, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
Status('Finding Stairs...');
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 180, 200, 40, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1)
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 180, 200, 40, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1)
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
Status('Climbing Down Stairs.');
Repeat
If(FindObj(Ix, Iy, 'limb', 606303, 20))Then
Begin
Mouse (Ix, Iy, 0, 0, False);
Garrett('DoWait');
ChooseOption(Sx, Sy, 'mb-dow');
FFlag(0);
Success := 1;
End;
Until (Success = 1);
Garrett('Reset');
Garrett('DoWait');
Status('Walking To Courtyard.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 75, 90, 30, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 35, 65, 55, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
End;
Procedure Part2WalkToWizards;
Begin
Garrett('DoWait');
Status('Part 2 - Walking To Wizards Tower.');
Wait(3000);
Garrett('DoAll');
Garrett('Reset');
Status('Turning On Run.');
SetRun(True);
Garrett('DoWait');
GetLumbyCo := FindRoadColor;
Status('Walking Up Road.');
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 0, 40, 63, 0, 0))Then
Begin
Wait(5000+Random(1000));
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
Status('Searching For Dirt Road.');
Status('Checking Run. If Off, Turning On.');
SetRun(True);
Mouse(590, 65, 0, 0, true);
Wait(3000+Random(1000));
FFlag(0);
Mouse(590, 80, 0, 0, true);
Wait(3000+Random(1000));
FFlag(0);
Status('Checking Run. If On, Turning Off.');
SetRun(False);
DirtRoadCo := FindDirtRoadColor;
If(DirtRoadCo = 0)Then
Begin
Repeat
Garrett('DoWait');
DirtRoadCo := AutoColorThis(DirtRoad, 25, MMX1, MMY1, MMX2, MMY2);
Until(Not(DirtRoadCo = 0));
End;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 180, 300, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Status('Walking On Dirt Road.');
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 200, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
Status('Turning Off Auto Retaliate.');
AutoRetaliate;
Status('Turning On Run.');
SetRun(True);
Status('Running Along Dirt Road.');
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 200, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 200, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 200, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 200, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
DraynorRoadCo := AutoColorThis(DraynorRoad, 20, MMX1, MMY1, MMX2, MMY2);
Status('On Draynor Road.');
If(DraynorRoadCo = 0)Then
Begin
Repeat
Garrett('DoWait');
DraynorRoadCo := FindRoadColor;
Until(Not(DraynorRoadCo = 0));
End;
Repeat
If(RadialWalk(DraynorRoadCo , 150, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Status('Turning Off Run.');
SetRun(False);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
Status('On Wizards Bridge.');
Mouse(649, 137, 0, 0, true);
FFlag(0);
Mouse(649, 137, 0, 0, true);
FFlag(0);
WizardsBridgeCo := FindRoadColor;
Repeat
If(RadialWalk(WizardsBridgeCo , 160, 240, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
WaterSymbol := AutoColorThis(QuestionSymbol, 10, MMX1, MMY1, MMX2, MMY2);
Status('Walking To Symbol.');
If(RadialWalk(WaterSymbol , 90, 270, 40, 0, 0))Then
Begin
FFlag(0);
End Else
Begin
Mouse(648, 95, 0, 0, true);
FFlag(0);
End;
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
MapLadderCo := FindLadderColor;
Status('Searching For Ladder.');
If(MapLadderCo = 0)Then
Begin
Repeat
Garrett('DoWait');
MapLadderCo := FindLadderColor;
Until(Not(MapLadderCo = 0));
End;
Repeat
If(RadialWalk(MapLadderCo , 220, 270, 61, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
Status('Checking Doors.');
Repeat
If(CheckDoor(1726064, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Climbing Down Ladder.');
Repeat
If(FindObj(Ix, Iy, '-down', 1118484, 20))Then
Begin
Mouse (Ix, Iy, 0, 0, True);
FFlag(0);
Success := 1;
End;
Until (Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
QuestionSymbolCo := AutoColorThis(QuestionSymbol, 35, MMX1, MMY1, MMX2, MMY2);
Status('Walking To Symbol.');
Repeat
Garrett('DoWait');
If(RadialWalk(QuestionSymbolCo , 130, 220, 55, 15, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Checking If Door Is Opened Or Closed.');
Repeat
If(CheckDoor(1726064, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Mouse (629, 83, 0, 0, True);
FFlag(0);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Finding Sedridor...');
Repeat
If(FindObj(Ix, Iy, 'edridor', 16493109, 20))Then
Begin
Mouse (Ix, Iy, 0, 0, False);
Garrett('DoWait');
ChooseOption(Sx, Sy, 'alk-to');
FFlag(0);
Success := 1;
End;
Until (Success = 1);
Status('Talking To Sedridor.');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('head');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('here');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('certainly');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Checking If Door Is Opened Or Closed.');
makecompass('E');
lowestangle;
Repeat
If(CheckDoor(1726064, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Garrett('DoAll');
Status('Searching For Ladder.');
Mouse (630, 20, 0, 0, True);
FFlag(0);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Climbing Up Ladder.');
Repeat
If(FindObj(Ix, Iy, 'limb-up', 1118484, 20))Then
Begin
Mouse (Ix, Iy, 0, 0, True);
FFlag(0);
Success := 1;
End;
Until (Success = 1);
End;
Procedure Part3WalkToVarrock;
Begin
Status('Part 3 - Walk To Varrock.');
Wait(3000);
Garrett('Reset');
Status('Turning Off Run.');
SetRun(False);
Garrett('DoWait');
Garrett('DoAll');
Status('Checking Doors.');
Repeat
If(CheckDoor(1726064, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Status('Walking Up Wizards Bridge.');
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
WizardsBridgeCo := FindRoadColor;
Repeat
If(RadialWalk(WizardsBridgeCo , 0, 50, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
WizardsBridgeCo := FindRoadColor;
Repeat
If(RadialWalk(WizardsBridgeCo , -40, 35, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
WizardsBridgeCo := FindRoadColor;
Repeat
If(RadialWalk(WizardsBridgeCo , -40, 35, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Status('Turning On Run.');
SetRun(True);
Status('Running Along Dirt Road.');
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
If(RadialWalk(DirtRoadCo , 0, 100, 60, 0, 0))Then
Begin
FFlag(0);
End;
Mouse(688, 80, 0, 0, true);
FFlag(0);
Garrett('DoWait');
Garrett('Reset');
Status('Into The Smith.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 70, 90, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Status('Turning Off Run.');
SetRun(False);
Mouse(666, 64, 0, 0, true);
Wait(5000+Random(1000))
FFlag(0);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Across Bridge.');
LumbyBridgeCo := FindBridgeColor;
Repeat
Garrett('DoWait');
If(RadialWalk(LumbyBridgeCo , 55, 120, 65, 0, 0))Then
Begin
Wait(3000)
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Up The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , -30, 30, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Up The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , -30, 10, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Up The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , -5, 40, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Up The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 0, 55, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Getting On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , -30, 30, 65, 0, 0))Then
Begin
Wait(10000)
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 245, 295, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , -50, 15, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 300, 350, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , -40, 10, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
End;
Procedure Part4WalkToAuburyAndBack;
Begin
Status('Part 4 - Walk To Aubury And Back To Gate.');
Wait(3000);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Checking Run. If Off, Turning On.');
SetRun(True);
Status('Walking On Varrock Dirt Road.');
VarrockDirtRoadCo := FindVarrockDirtPath;
If(VarrockDirtRoadCo = 0)Then
Begin
Repeat
VarrockDirtRoadCo := FindVarrockDirtPath2;
Until(Not(VarrockDirtRoadCo = 0));
End;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockDirtRoadCo , 0, 65, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Dirt Road.');
VarrockDirtRoadCo := FindVarrockDirtPath;
If(VarrockDirtRoadCo = 0)Then
Begin
Repeat
VarrockDirtRoadCo := FindVarrockDirtPath2;
Until(Not(VarrockDirtRoadCo = 0));
End;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockDirtRoadCo , 80, 120, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Dirt Road.');
VarrockDirtRoadCo := FindVarrockDirtPath;
If(VarrockDirtRoadCo = 0)Then
Begin
Repeat
VarrockDirtRoadCo := FindVarrockDirtPath2;
Until(Not(VarrockDirtRoadCo = 0));
End;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockDirtRoadCo , 80, 120, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Dirt Road.');
VarrockDirtRoadCo := FindVarrockDirtPath;
If(VarrockDirtRoadCo = 0)Then
Begin
Repeat
VarrockDirtRoadCo := FindVarrockDirtPath2;
Until(Not(VarrockDirtRoadCo = 0));
End;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockDirtRoadCo , -40, 30, 45, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Searching For Magic Shop.');
MageShop := GetSymbolColor(Rx, Ry, 'Magic Shop');
If(RadialWalk(MageShop , -40, 100, 55, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Checking If Door Is Opened Or Closed.');
Repeat
If(CheckDoor(4879748, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Finding Aubury...');
Repeat
If(FindObj(Ix, Iy, 'ubury', 1952487, 20))Then
Begin
Mouse (Ix, Iy, 0, 0, False);
Garrett('DoWait');
ChooseOption(Sx, Sy, 'alk-to');
FFlag(0);
Success := 1;
End;
Until (Success = 1);
Status('Talking To Aubury.');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('package');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Garrett('DoWait');
Repeat
If(FindObj(Ix, Iy, 'ubury', 1952487, 20))Then
Begin
Mouse (Ix, Iy, 0, 0, False);
Garrett('DoWait');
ChooseOption(Sx, Sy, 'alk-to');
FFlag(0);
Success := 1;
End;
Until (Success = 1);
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Checking Door.');
Repeat
If(CheckDoor(4879748, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Dirt Road.');
VarrockDirtRoadCo := FindVarrockDirtPath;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockDirtRoadCo , 150, 210, 55, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Dirt Road.');
VarrockDirtRoadCo := FindVarrockDirtPath;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockDirtRoadCo , 260, 300, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Dirt Road.');
VarrockDirtRoadCo := FindVarrockDirtPath;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockDirtRoadCo , 260, 300, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Dirt Road.');
VarrockDirtRoadCo := FindVarrockDirtPath;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockDirtRoadCo , 200, 250, 40, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
End;
Procedure Part5WalkToWizardsTower;
Begin
Status('Part 5 - Walk To Wizards Tower. Finish Quest.');
Wait(3000);
Garrett('DoWait');
Status('Checking Run. If On, Turning Off.');
SetRun(False);
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 160, 230, 55, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 120, 190, 50, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 120, 190, 51, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 100, 170, 50, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 140, 210, 50, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 75, 130, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 70, 120, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 70, 120, 40, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Down The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 180, 250, 55, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Down The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 180, 260, 55, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Down The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 180, 260, 55, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Down The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 130, 220, 55, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Down The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 120, 200, 55, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Mouse(649, 131, 0, 0, true);
FFlag(0);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Across Bridge.');
LumbyBridgeCo := FindBridgeColor;
Repeat
Garrett('DoWait');
If(RadialWalk(LumbyBridgeCo , 180, 300, 60, 0, 0))Then
Begin
Wait(3000)
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Down The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 260, 300, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Mouse(593, 115, 0, 0, true);
FFlag(0);
Status('Checking Run. If On, Turning Off.');
SetRun(False);
DirtRoadCo := FindDirtRoadColor;
If(DirtRoadCo = 0)Then
Begin
Repeat
Garrett('DoWait');
DirtRoadCo := AutoColorThis(DirtRoad, 25, MMX1, MMY1, MMX2, MMY2);
Until(Not(DirtRoadCo = 0));
End;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 180, 340, 60, 0, 0))Then
Begin
Wait(10000)
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Status('Walking On Dirt Road.');
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 200, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
Status('Turning Off Auto Retaliate.');
AutoRetaliate;
Status('Turning On Run.');
SetRun(True);
Status('Running Along Dirt Road.');
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 200, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 200, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 200, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 200, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
DraynorRoadCo := AutoColorThis(DraynorRoad, 20, MMX1, MMY1, MMX2, MMY2);
Status('On Draynor Road.');
If(DraynorRoadCo = 0)Then
Begin
Repeat
Garrett('DoWait');
DraynorRoadCo := FindRoadColor;
Until(Not(DraynorRoadCo = 0));
End;
Repeat
If(RadialWalk(DraynorRoadCo , 150, 270, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Status('Turning Off Run.');
SetRun(False);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
Status('On Wizards Bridge.');
Mouse(649, 137, 0, 0, true);
FFlag(0);
Mouse(649, 137, 0, 0, true);
FFlag(0);
WizardsBridgeCo := FindRoadColor;
Repeat
If(RadialWalk(WizardsBridgeCo , 160, 240, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
WaterSymbol := AutoColorThis(QuestionSymbol, 10, MMX1, MMY1, MMX2, MMY2);
Status('Walking To Symbol.');
If(RadialWalk(WaterSymbol , 90, 270, 40, 0, 0))Then
Begin
FFlag(0);
End Else
Begin
Mouse(648, 95, 0, 0, true);
FFlag(0);
End;
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
MapLadderCo := FindLadderColor;
Status('Searching For Ladder.');
If(MapLadderCo = 0)Then
Begin
Repeat
Garrett('DoWait');
MapLadderCo := FindLadderColor;
Until(Not(MapLadderCo = 0));
End;
Repeat
If(RadialWalk(MapLadderCo , 220, 270, 61, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
Status('Checking Doors.');
Repeat
If(CheckDoor(1726064, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Climbing Down Ladder.');
Repeat
If(FindObj(Ix, Iy, '-down', 1118484, 20))Then
Begin
Mouse (Ix, Iy, 0, 0, True);
FFlag(0);
Success := 1;
End;
Until (Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
QuestionSymbolCo := AutoColorThis(QuestionSymbol, 35, MMX1, MMY1, MMX2, MMY2);
Status('Walking To Symbol.');
Repeat
Garrett('DoWait');
If(RadialWalk(QuestionSymbolCo , 130, 220, 55, 15, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Checking If Door Is Opened Or Closed.');
Repeat
If(CheckDoor(1726064, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Mouse (629, 83, 0, 0, True);
FFlag(0);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Finding Sedridor...');
Repeat
If(FindObj(Ix, Iy, 'edridor', 16493109, 20))Then
Begin
Mouse (Ix, Iy, 0, 0, False);
Garrett('DoWait');
ChooseOption(Sx, Sy, 'alk-to');
FFlag(0);
Success := 1;
End;
Until (Success = 1);
Status('Talking To Sedridor.');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Wait(2000+random(500));
ClickNpcChatText('continue');
Mouse (440, 78, 0, 0, True);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Checking If Door Is Opened Or Closed.');
makecompass('E');
lowestangle;
Repeat
If(CheckDoor(1726064, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Status('Searching For Ladder.');
Garrett('DoAll');
Mouse (630, 20, 0, 0, True);
FFlag(0);
Garrett('Reset');
Garrett('DoWait');
Garrett('DoAll');
Status('Climbing Up Ladder.');
Repeat
If(FindObj(Ix, Iy, 'limb-up', 1118484, 20))Then
Begin
Mouse (Ix, Iy, 0, 0, True);
FFlag(0);
Success := 1;
End;
Until (Success = 1);
End;
Procedure Part6WalkToVarrockBank;
Begin
Status('Part 6 - Walk Back to Varrock Bank.');
Wait(3000);
Garrett('Reset');
Status('Turning Off Run.');
SetRun(False);
Garrett('DoWait');
Garrett('DoAll');
Status('Checking Doors.');
Repeat
If(CheckDoor(1726064, 20))Then
Begin
Success := 1;
End;
Until (Success = 1);
Status('Walking Up Wizards Bridge.');
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
WizardsBridgeCo := FindRoadColor;
Repeat
If(RadialWalk(WizardsBridgeCo , 0, 50, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
WizardsBridgeCo := FindRoadColor;
Repeat
If(RadialWalk(WizardsBridgeCo , -40, 35, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
WizardsBridgeCo := FindRoadColor;
Repeat
If(RadialWalk(WizardsBridgeCo , -40, 35, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Status('Turning On Run.');
SetRun(True);
Status('Running Along Dirt Road.');
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('Reset');
Garrett('DoAll');
Garrett('DoWait');
DirtRoadCo := FindDirtRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(DirtRoadCo , 0, 150, 60, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('Reset');
Status('Into The Smith.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 70, 90, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Status('Turning Off Run.');
SetRun(False);
Mouse(666, 64, 0, 0, true);
Wait(5000+Random(1000))
FFlag(0);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Across Bridge.');
LumbyBridgeCo := FindBridgeColor;
Repeat
Garrett('DoWait');
If(RadialWalk(LumbyBridgeCo , 55, 120, 65, 0, 0))Then
Begin
Wait(3000)
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Up The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , -30, 30, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Up The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , -30, 10, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Up The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , -5, 40, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Going Up The Road.');
GetLumbyCo := FindRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(GetLumbyCo , 0, 55, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Mouse(648, 69, 0, 0, true);
FFlag(0);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Getting On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , -30, 30, 65, 0, 0))Then
Begin
Wait(10000)
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 245, 295, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , -50, 15, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , 300, 350, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Road.');
VarrockRoadCo := FindVarrockRoadColor;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockRoadCo , -40, 10, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Checking Run. If Off, Turning On.');
SetRun(True);
Status('Walking On Varrock Dirt Road.');
VarrockDirtRoadCo := FindVarrockDirtPath;
If(VarrockDirtRoadCo = 0)Then
Begin
Repeat
VarrockDirtRoadCo := FindVarrockDirtPath;
Until(Not(VarrockDirtRoadCo = 0));
End;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockDirtRoadCo , 0, 65, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Dirt Road.');
VarrockDirtRoadCo := FindVarrockDirtPath;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockDirtRoadCo , 80, 120, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Garrett('DoWait');
Garrett('DoAll');
Garrett('Reset');
Status('Walking On Varrock Dirt Road.');
VarrockDirtRoadCo := FindVarrockDirtPath;
Repeat
Garrett('DoWait');
If(RadialWalk(VarrockDirtRoadCo , 80, 120, 65, 0, 0))Then
Begin
FFlag(0);
Success := 1;
End;
Until(Success = 1);
Mouse (669, 24, 0, 0, True);
FFlag(0);
Mouse (663, 28, 0, 0, True);
FFlag(0);
FindBank('veb');
Garrett('DoWait');
fixbank;
Garrett('DoWait');
depositall;
Garrett('DoWait');
closebank;
Garrett('DoWait');
End;
Procedure Setup;
Begin
Status('Starting Script...');
setupsrl;
ScriptID := '208';
SRLID := YourSRLID;
SRLPassword := YourSRLPASS;
useropened := 0;
PlayersCompleted := 0;
GTheForm;
GTehForm;
activateclient;
Garrett('DoWait');
If (Not(LoggedIn)) Then LoginPlayer;
ClearDebug;
Garrett('DoAll');
Garrett('Reset');
End;
Begin
Setup;
If (Not(LoggedIn)) Then LoginPlayer;
LoadPics;
Repeat
Part1IntoLumbridgeCastle;
Part2WalkToWizards;
Part3WalkToVarrock;
Part4WalkToAuburyAndBack;
Part5WalkToWizardsTower;
PlayersCompleted := PlayersCompleted + 1;
ProgressReport;
If(BackToVarr = 'True')Then Part6WalkToVarrockBank;
ProgressReport;
NextPlayer(False);
Until(Not(LoggedIn));
End.
——————————————————
<!– END TEMPLATE: formanswers –>