Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program vAgility;
- {$DEFINE SMART}
- {$i Aerolib/Aerolib.simba}
- {$i Reflection/Reflection.simba}
- const
- ////////////////////////////////////////////////////////////////////////////////
- Username = 'babatys';
- Password = 'oostopooston125';
- Course = 'Seers'; //Draynor, Varrock, Falador, Seers
- EATAT = 40; //Hp to eat at
- FOODTYPE = 'Lobster'; //Any type of food
- cBREAK_IN = 60; //How long between breaks (minutes)
- cBREAK_FOR = 15; //How long to break for
- cR_BREAK_IN = 15; //Random +/- to add to break intervals
- cR_BREAK_FOR = 10; //Random +/- to add to break time
- ////////////////////////////////////////////////////////////////////////////////
- var
- x, y, lapCount, markCount, cH, cW: Integer;
- Rope: TReflectObject;
- MyPlayer: TReflectLocalPlayer;
- pt, position: TPoint;
- function Login: Boolean;
- begin
- MyPlayer.Username := USERNAME;
- MyPlayer.Password := PASSWORD;
- MyPlayer.Active := True;
- MyPlayer.Create;
- MyPlayer.Login;
- end;
- procedure HandleLogin;
- begin
- if (not isLoggedIn()) then
- Login();
- if (isLoggedIn()) then
- begin
- exit;
- end;
- end;
- function R_TileOnMS(Tile: TPoint; var OutputPoint: TPoint; x: integer = 0; y: integer = 0; z: integer = 0): boolean;
- var
- tempB: TBox;
- begin
- OutputPoint := TReflectionTiles.TileToMS(Tile, x, y, z);
- tempB := intToBox(MSX1, MSY1, MSX2, MSY2);
- result := PointInBox(OutputPoint, tempB);
- end;
- procedure randomMouseInput(pnt: Tpoint; ranx, rany: integer);
- begin
- case random(3) of
- 0: humanMMouse(pnt, ranx, rany);
- 1: missMouse(pnt, ranx, rany);
- 2: mouse(pnt, ranx, rany, mouse_move);
- end;
- end;
- function R_InteractTile(tile: Tpoint; action: string; x: integer = 0; y: integer = 0; z: integer = 0): boolean;
- var
- RSTile: TPoint;
- begin
- if R_TileOnMS(Tile, RSTile, x, y, z) then
- begin
- randomMouseInput(rsTile, 3, 3);
- wait(500);
- if (Reflect.Text.IsUpText(action)) then
- begin
- FastClick(mouse_left);
- result := didClick(true, 1000);
- end
- else
- begin
- if TReflectionText.OptionExists(action) then
- begin
- FastClick(mouse_right);
- result := Reflect.Text.ChooseOption(action);
- end;
- if not result then
- randomMouseInput(Point(MSCX, MSCY), 500, 500);
- end;
- end;
- end;
- procedure dismissAllRandoms;
- var
- i, j, me_indice: integer;
- _npcs: TReflectNPCArray;
- randoms: tstringarray;
- begin
- randoms := ['molly', 'niles', 'miles', 'giles', 'sandwich lady', 'drunken dwarf', 'genie', 'highwayman', 'dr jekyll', 'cap' 'n hand', 'security guard', 'rick turpentine', 'mysterious old man', 'frog', 'null', 'mime', 'sergeant damien', 'freaky forester', 'postie pete', 'tilt', 'flippa', 'leo', 'pillory guard', 'evil bob'];
- _npcs.GetAll;
- me_indice := TReflectLocalPlayer.GetPlayerIndex;
- for i := 0 to high(_npcs) do
- begin
- if (_npcs[i].getInteractingIndex = me_indice) then
- begin
- for j := 0 to high(randoms) do
- begin
- if (pos(randoms[j], lowercase(_npcs[i].getName)) > 0) then
- begin
- if R_InteractTile(_npcs[i].getTile, 'Dismiss', 0, 0, 50) then
- begin
- sleep(2500 + random(1000));
- writeln('Dismissed random: ' + _npcs[i].getname + ' Time Running: ' + TimeRunning);
- end;
- end;
- end;
- end;
- end;
- end;
- procedure Draw(text: string);
- var
- xpGained, xpHour, markHour: integer;
- cName: string;
- begin
- if (Course = 'Draynor') then
- begin
- xpGained := (120 * lapCount);
- cName := 'Draynor';
- end
- else if (Course = 'Falador') then
- begin
- xpGained := (440 * lapCount);
- cName := 'Falador';
- end
- else if (Course = 'Seers') then
- begin
- xpGained := (570 * lapCount);
- cName := 'Seers';
- end
- else if (Course = 'Varrock') then
- begin
- xpGained := (238 * lapCount);
- cName := 'Varrock';
- end
- xpHour := Round((xpGained) / (GetTimeRunning / 3600000.0));
- markHour := Round((markCount) / (GetTimeRunning / 3600000.0));
- OS_Smart.__Graphics.Clear;
- OS_Smart.__Graphics.DrawClippedText('vAgility: ' + cName, 'upchars07', point(300, 353), 16711680);
- OS_Smart.__Graphics.DrawClippedText('Exp gained: ' + toStr(xpGained) + ' (' + (toStr(xpHour)) + ' p/hr)', 'upchars07', point(300, 370), 16711680);
- OS_Smart.__Graphics.DrawClippedText('Marks of Grace: ' + toStr(markCount) + ' (' + (toStr(markHour)) + ' p/hr)', 'upchars07', point(300, 385), 16711680);
- OS_Smart.__Graphics.DrawClippedText('Total Runtime ' + MsToTime(GetTimeRunning, 3), 'upchars07', point(300, 400), 16711680);
- OS_Smart.__Graphics.DrawClippedText('Status: ' + text, 'upchars07', point(300, 415), 16711680);
- end;
- procedure eatFood;
- var
- Food: TReflectInvItem;
- Point: TPoint;
- begin
- Draw('Eating ' + FOODTYPE);
- reflect.Gametab.Open(55);
- if food.Find(FOODTYPE) then
- begin
- Point := Food.GetMSPoint;
- reflect.mouse.move(Point, randomrange(2, 4), randomrange(2, 4));
- FastClick(MOUSE_LEFT);
- wait(randomrange(1000, 2000));
- end
- end;
- function waitMove(c: Integer): boolean;
- var
- d: integer;
- begin
- (d = (c / 5));
- fflag(0);
- wait(c + random(d));
- while myplayer.IsAnimating do
- wait(c + random(d));
- end;
- function findObject(COL, TOL, PIXELS: Integer; HUE, SAT: Extended): Boolean;
- var
- WhatEver: TColEx;
- TPA: TPointArray;
- ATPA: T2DPointArray;
- I: Integer;
- box: TBox;
- x, y: Integer;
- begin
- WhatEver.Create(Col, Tol, Hue, Sat);
- if not WhatEver.FindAllIn(Area_MS, TPA) then
- Exit(False);
- ATPA := ClusterTPA(TPA, 10);
- SortATPAFromMidPoint(ATPA, Point(MSCX, MSCY));
- if (length(ATPA) <= 0) then
- begin
- result := False;
- exit;
- end;
- for I := 0 to high(ATPA) do
- begin
- if (length(ATPA[I]) >= PIXELS) then
- begin
- box := intToBox(ATPA[I].getBounds().X1, ATPA[I].getBounds().Y1, ATPA[I].getBounds().X2, ATPA[I].getBounds().Y2);
- if (box.x1 < 0) then
- box.x1 := 0;
- if (box.y1 < 0) then
- box.y1 := 0;
- position := MiddleTPA(ATPA[I]);
- result := True;
- exit;
- end;
- end;
- result := False;
- end;
- function lootMark(): Boolean;
- var
- i, id: Integer;
- gItems: TReflectGroundItemArray;
- strArr : TStringArray;
- begin
- if (Course = 'Draynor') then
- begin
- gItems.GetAll(10);
- end
- else if (Course = 'Falador') then
- begin
- gItems.GetAll(6);
- end
- else if (Course = 'Seers') then
- begin
- gItems.GetAll(15);
- end
- else if (Course = 'Varrock') then
- begin
- gItems.GetAll(15);
- end
- if (reflect.Tiles.getplane = 0) then
- Exit;
- if length(gItems) = 0 then
- Exit;
- if length(gItems) > 0 then
- Wait(3000);
- if myplayer.IsAnimating or myPlayer.IsMoving then begin exit; end;
- gItems.GetAll(16);
- if length(gItems) = 0 then Exit;
- setArrayLength(strArr, 1);
- strArr := ['mark of grace'];
- for i:=0 to high(gItems) do
- if inStrArrEx(gItems[i].GetName, strArr, id) then
- begin
- Reflect.Compass.MakePitch(7+Random(3));
- if R_interactTile(gItems[i].GetTile, 'Take '+gItems[i].GetName) then
- begin
- waitFunc(@isPlayerWalking, 50, 2000);
- while isPlayerWalking() do
- myPlayer.FFlag(0);
- exit(true);
- end;
- end;
- end;
- procedure thewallD();
- var
- obj_Wall: TMSObject;
- Pnt: TPoint;
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3102, 3279), 'Climb Rough wall', 3, 3, 2) then
- begin
- if DidRedClick then
- begin
- draw('Climbing Rough Wall');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3102, 3279)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3102, 3279), 'Climb Rough wall', 3, 3, 3) then
- begin
- reflect.Compass.MakePitch(5);
- setCompass(inttostr(randomrange(265, 285)));
- end
- end;
- procedure rope1D;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3098, 3277), 'Cross Tightrope', 0, 0, 10) then
- begin
- if DidRedClick then
- begin
- draw('Crossing Rope 1');
- wait(randomrange(500, 3000));
- setCompass(inttostr(randomrange(180, 225)));
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3090, 3276)) < 1) or (T.timeElapsed > 10000);
- end
- end
- end;
- procedure rope2D;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3092, 3276), 'Cross Tightrope', 0, 0, 10) then
- begin
- if DidRedClick then
- begin
- draw('Crossing Rope 2');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3092, 3266)) < 1) or (T.timeElapsed > 10000);
- end
- end
- lootMark();
- end;
- procedure nwallD;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3089, 3264), 'Balance Narrow wall', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- setCompass(inttostr(randomrange(125, 150)));
- wait(randomrange(500, 3000));
- draw('Crossing Narrow Wall');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3088, 3261)) < 1) or (T.timeElapsed > 10000);
- end
- end
- end;
- procedure jwallD;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- if gap1.Find(objGame, 10084, 10) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Jump-up', 'Wall'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Climbing up wall');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3088, 3255)) < 1) or (T.timeElapsed > 5000);
- end
- end
- else if not (waitUptextMulti(['Jump-up', 'Wall'], 250)) then
- begin
- setCompass('random');
- end;
- end
- end;
- procedure gapD;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- reflect.Tiles.RotateCameraToTile(Point(3095, 3255));
- if R_InteractTile(Point(3095, 3255), 'Jump Gap', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- draw('Jumping Gap');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3096, 3256)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3095, 3255), 'Jump Gap', 3, 3, 3) then
- begin
- reflect.Compass.MakePitch(2);
- setCompass(inttostr(randomrange(125, 150)));
- end
- end;
- procedure crateD;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3101, 3261), 'Climb-down Crate', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- draw('Climbing Down Crate');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3103, 3261)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3102, 3261), 'Climb-down Crate', 3, 3, 3) then
- begin
- myplayer.blindwalkMM(Point(3101, 3261), 2);
- waitMove(50);
- end
- setCompass(inttostr(randomrange(265, 285)));
- if (getRunEnergy >= (1 + random(99))) and not isUsingRun then
- toggleRunning(true);
- wait(randomrange(1400, 1900));
- inc(lapcount);
- end;
- procedure walkToWallD;
- var
- T: Timer;
- begin
- draw('Walking to Wall');
- myplayer.blindwalkMM(Point(3104, 3279), 1);
- while not myplayer.ismoving do
- begin
- T.start;
- if T.timeelapsed > 2500 then
- Break;
- Wait(150);
- end;
- breakhandler();
- end;
- procedure theWallF;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- Reflect.Compass.MakePitch(4 + Random(2));
- setCompass(inttostr(randomrange(350, 360)));
- if R_InteractTile(Point(3036, 3342), 'Climb Rough wall', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- draw('Climbing wall');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3036, 3342)) < 1) or (T.timeElapsed > 10000);
- end
- end
- end;
- procedure rope1F;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3040, 3343), 'Cross Tightrope', 0, 0, 10) then
- begin
- if DidRedClick then
- begin
- draw('Crossing Rope 1');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3047, 3344)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3040, 3343), 'Cross Tightrope', 3, 3, 3) then
- begin
- reflect.Compass.Make('random');
- end
- end;
- procedure holdsF;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3050, 3351), 'Cross Hand holds', 3, 8, 3) then
- begin
- if DidRedClick then
- begin
- draw('Crossing Hand Holds');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3050, 3357)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3050, 3351), 'Cross Hand holds', 3, 8, 3) then
- begin
- myplayer.blindwalkMM(Point(3050, 3349), 1);
- waitMove(50);
- reflect.Compass.Make('random');
- end
- end;
- procedure gap1F;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- reflect.Tiles.RotateCameraToTile(Point(3048, 3360));
- if R_InteractTile(Point(3048, 3360), 'Jump Gap', 3, 5, 3) then
- begin
- if DidRedClick then
- begin
- draw('Jumping Gap 1');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3048, 3361)) < 1) or (T.timeElapsed > 10000);
- end
- end
- end;
- procedure gap2F;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- setCompass(inttostr(randomrange(305, 325)));
- if R_InteractTile(Point(3041, 3362), 'Jump Gap', 3, 8, 3) then
- begin
- if DidRedClick then
- begin
- draw('Jumping Gap 1');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3041, 3361)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3041, 3362), 'Cross Tightrope', 3, 3, 3) then
- begin
- Reflect.Compass.MakePitch(2 + Random(4));
- end
- end;
- procedure rope2F;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3034, 3362), 'Cross Tightrope', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- draw('Crossing Rope 2');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3028, 3354)) < 1) or (T.timeElapsed > 10000);
- end
- end
- end;
- procedure rope3F;
- var
- T: Timer;
- begin
- reflect.Compass.MakePitch(5);
- reflect.Tiles.RotateCameraToTile(Point(3025, 3353));
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3025, 3353), 'Cross Tightrope', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- draw('Crossing Rope 3');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3020, 3353)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3025, 3353), 'Cross Tightrope', 3, 3, 3) then
- begin
- reflect.Tiles.RotateCameraToTile(Point(3025, 3353));
- end
- end;
- procedure gap3F;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3017, 3353), 'Jump Gap', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- draw('Crossing Gap 3');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3018, 3349)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3017, 3353), 'Jump Gap', 3, 3, 3) then
- begin
- reflect.Compass.Make('random');
- end
- end;
- procedure ledge1F;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3016, 3346), 'Jump Ledge', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- draw('Jumping Ledge 1');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3014, 3346)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3016, 3346), 'Jump Ledge', 3, 3, 3) then
- begin
- reflect.Tiles.RotateCameraToTile(Point(3016, 3346));
- end
- end;
- procedure ledge2F;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3012, 3343), 'Jump Ledge', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- setCompass(inttostr(randomrange(135, 180)));
- draw('Jumping Ledge 2');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3013, 3342)) < 1) or (T.timeElapsed > 10000);
- end
- Reflect.Compass.MakePitch(3 + Random(4));
- end
- end;
- procedure ledge3F;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3012, 3335), 'Jump Ledge', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- draw('Jumping Ledge 3');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3013, 3333)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3012, 3335), 'Jump Ledge', 3, 3, 3) then
- begin
- reflect.Tiles.RotateCameraToTile(Point(3012, 3335));
- lootMark();
- end
- end;
- procedure ledge4F;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3018, 3333), 'Jump Ledge', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- setCompass(inttostr(randomrange(350, 360)));
- draw('Jumping Ledge 4');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3019, 3333)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3018, 3333), 'Jump Ledge', 3, 3, 3) then
- begin
- reflect.Compass.Make('random');
- lootMark();
- end
- end;
- procedure edge1F;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(3023, 3334), 'Jump Edge', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- reflect.Tiles.RotateCameraToTile(Point(3018, 3333));
- draw('Jumping Off Edge 1');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3027, 3333)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(3023, 3334), 'Jump Edge', 3, 3, 3) then
- begin
- reflect.Tiles.RotateCameraToTile(Point(3023, 3334));
- end
- wait(randomrange(1400, 1900));
- if (getRunEnergy >= (1 + random(99))) and not isUsingRun then
- toggleRunning(true);
- inc(lapcount);
- end;
- procedure walkToWallF;
- var
- T: Timer;
- begin
- draw('Walking to Wall');
- myplayer.blindwalkMM(Point(3036, 3340));
- while not myplayer.ismoving do
- begin
- T.start;
- if T.timeelapsed > 2500 then
- Break;
- Wait(150);
- end;
- breakhandler();
- end;
- procedure theWallS;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- Reflect.Compass.MakePitch(4 + Random(2));
- setCompass(inttostr(randomrange(350, 360)));
- if R_InteractTile(Point(2729, 3489), 'Climb-up Wall', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- draw('Climbing wall');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(2729, 3491)) < 1) or (T.timeElapsed > 10000);
- end
- end
- else if not R_InteractTile(Point(2729, 3489), 'Climb-up Wall', 3, 3, 3) then
- begin
- Reflect.Compass.MakePitch(4 + Random(2));
- reflect.Tiles.RotateCameraToTile(Point(2729, 3489));
- end
- end;
- procedure walkToWallS;
- var
- T: Timer;
- begin
- draw('Walking to Wall');
- if getCurrentHealth() < EATAT then
- eatFood;
- myplayer.blindwalkMM(Point(2729, 3488));
- while not myplayer.ismoving do
- begin
- T.start;
- if T.timeelapsed > 2500 then
- Break;
- Wait(150);
- end;
- breakhandler();
- end;
- procedure gap1S;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- setCompass(inttostr(randomrange(310, 340)));
- Reflect.Compass.MakePitch(2 + Random(1));
- if gap1.Find(objGame, 11374, 20) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Jump', 'Gap'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Jumping Gap 1');
- wait(randomrange(500, 4000));
- setCompass(inttostr(randomrange(210, 230)));
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(2713, 3494)) < 1) or (T.timeElapsed > 5000);
- end
- end
- end
- else if not (waitUptextMulti(['Jump', 'Gap'], 250)) then
- begin
- end;
- end;
- procedure rope1S;
- var
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- if R_InteractTile(Point(2710, 3489), 'Cross Tightrope', 3, 3, 3) then
- begin
- if DidRedClick then
- begin
- draw('Crossing Rope 1');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(2710, 3480)) < 1) or (T.timeElapsed > 5000);
- end
- end
- else if not R_InteractTile(Point(2710, 3489), 'Cross Tightrope', 3, 3, 3) then
- begin
- reflect.Tiles.RotateCameraToTile(Point(2710, 3489));
- end
- end;
- procedure gap2S;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- if gap1.Find(objGame, 11375, 20) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Jump', 'Gap'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Jumping Gap 2');
- T.start;
- repeat
- wait(150);
- until (reflect.tiles.getplane = 3) or (T.timeElapsed > 5000);
- end
- end
- else if not (waitUptextMulti(['Jump', 'Gap'], 250)) then
- begin
- setCompass(inttostr(randomrange(210, 230)));
- Reflect.Compass.MakePitch(1 + Random(2));
- end
- end
- end
- procedure gap3S;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- setCompass(inttostr(randomrange(210, 230)));
- if gap1.Find(objGame, 11376, 20) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Jump', 'Gap'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Jumping Gap 3');
- T.start;
- repeat
- wait(150);
- until (reflect.tiles.getplane = 2) or (T.timeElapsed > 5000);
- end
- end
- else if not (waitUptextMulti(['Jump', 'Gap'], 250)) then
- begin
- setCompass(inttostr(randomrange(210, 230)));
- Reflect.Compass.MakePitch(1 + Random(2));
- end
- end
- end
- procedure edgeS;
- var
- edge: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- if edge.Find(objGame, 11377, 20) then
- begin
- pnt := edge.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(edge.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Jump', 'Edge'], 250)) then
- begin
- fastClick(Mouse_left);
- begin
- if DidRedClick then
- begin
- draw('Jumping Off Edge');
- case random(10) of
- 0..7: setCompass(inttostr(randomrange(340, 360)));
- 8..10: setCompass(inttostr(randomrange(1, 30)));
- end
- T.start;
- repeat
- wait(150);
- until (reflect.tiles.getplane = 0) or (T.timeElapsed > 10000);
- end
- end
- end
- else if not (waitUptextMulti(['Jump', 'Edge'], 250)) then
- begin
- setCompass(inttostr(randomrange(135, 160)));
- Reflect.Compass.MakePitch(3 + Random(2));
- end;
- wait(randomrange(1400, 1900));
- if (getRunEnergy >= (1 + random(99))) and not isUsingRun then
- toggleRunning(true);
- inc(lapcount);
- end
- end
- procedure thewallV();
- var
- obj_Wall: TMSObject;
- Pnt: TPoint;
- T: Timer;
- begin
- lootMark();
- dismissAllRandoms();
- Reflect.Compass.MakePitch(2 + Random(2));
- if R_InteractTile(Point(3220, 3414), 'Climb Rough wall', 3, 3, 2) then
- begin
- if DidRedClick then
- begin
- draw('Climbing Rough Wall');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3219, 3414)) < 1) or (T.timeElapsed > 5000);
- end
- end
- else if not R_InteractTile(Point(3220, 3414), 'Climb Rough wall', 3, 3, 3) then
- begin
- Reflect.Compass.MakePitch(5 + Random(2));
- setCompass(inttostr(randomrange(260, 290)));
- end
- end;
- procedure clotheslineV;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- if gap1.Find(objGame, 10587, 20) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Cross', 'Clothes line'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Jumping Gap 3');
- wait(randomrange(500, 1700));
- Reflect.Compass.MakePitch(1 + Random(3));
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3208, 3414)) < 1) or (T.timeElapsed > 5000);
- end
- end
- else if not (waitUptextMulti(['Cross', 'Clothes line'], 250)) then
- begin
- setCompass(inttostr(randomrange(250, 290)));
- Reflect.Compass.MakePitch(4 + Random(2));
- end
- end
- end
- procedure gap1V;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- if gap1.Find(objGame, 10642, 20) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Leap', 'Gap'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Jumping Gap 1');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3197, 3416)) < 1) or (T.timeElapsed > 5000);
- end
- end
- else if not (waitUptextMulti(['Leap', 'Gap'], 250)) then
- begin
- setCompass(inttostr(randomrange(250, 290)));
- Reflect.Compass.MakePitch(4 + Random(2));
- end
- end
- end
- procedure wall1V;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- if gap1.Find(objGame, 10777, 20) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Balance', 'Wall'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Balancing on wall');
- wait(randomrange(500, 3000));
- setCompass(inttostr(randomrange(95, 230)));
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.DistanceFromTile(Point(3197, 3416)) < 1) or (T.timeElapsed > 5000);
- end
- end
- else if not (waitUptextMulti(['Balance', 'Wall'], 250)) then
- begin
- setCompass(inttostr(randomrange(250, 290)));
- Reflect.Compass.MakePitch(4 + Random(2));
- end
- end
- end
- function At5V: boolean;
- var
- CorrectBox := inttobox (3182, 3382, 3208, 3403);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- procedure gap2V;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- if gap1.Find(objGame, 10778, 20) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Leap', 'Gap'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Jumping gap 2');
- wait(randomrange(500, 3000));
- setCompass(inttostr(randomrange(60, 130)));
- Reflect.Compass.MakePitch(1);
- T.start;
- repeat
- wait(150);
- until (At5V) or (T.timeElapsed > 5000);
- end
- end
- else if not (waitUptextMulti(['Leap', 'Gap'], 250)) then
- begin
- setCompass(inttostr(randomrange(95, 230)));
- Reflect.Compass.MakePitch(4 + Random(2));
- end
- end
- end
- function At6V: boolean;
- var
- CorrectBox := inttobox (3218, 3393, 3232, 3403);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- procedure gap3V;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- if gap1.Find(objGame, 10779, 50) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Leap', 'Gap'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Jumping gap 3');
- T.start;
- repeat
- wait(150);
- until (At6V) or (T.timeElapsed > 5000);
- end
- end
- else if not (waitUptextMulti(['Leap', 'Gap'], 250)) then
- begin
- draw('Walking to gap');
- myplayer.blindwalkMM(Point(3208, 3399), 3);
- setCompass(inttostr(randomrange(60, 130)));
- Reflect.Compass.MakePitch(3 + Random(3));
- end
- end
- end
- function At7V: boolean;
- var
- CorrectBox := inttobox (3236, 3403, 3240, 3408);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- procedure gap4V;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- myplayer.blindwalkMM(Point(3230, 3402), 3);
- if gap1.Find(objGame, 10780, 20) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Leap', 'Gap'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Leaping gap');
- Reflect.Compass.MakePitch(2 + Random(2));
- T.start;
- repeat
- wait(150);
- until (At7V) or (T.timeElapsed > 5000);
- end
- end
- else if not (waitUptextMulti(['Leap', 'Gap'], 250)) then
- begin
- draw('Walking to gap');
- setCompass(inttostr(randomrange(80, 110)));
- Reflect.Compass.MakePitch(2 + Random(4));
- end
- end
- end
- function At8V: boolean;
- var
- CorrectBox := inttobox (3236, 3410, 3240, 3415);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- procedure ledgeV;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- if gap1.Find(objGame, 10781, 20) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Hurdle', 'Ledge'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Climbing up');
- wait(randomrange(500, 3000));
- Reflect.Compass.MakePitch(6 + Random(2));
- setCompass(inttostr(randomrange(280, 350)));
- T.start;
- repeat
- wait(150);
- until (At8V) or (T.timeElapsed > 5000);
- end
- end
- else if not (waitUptextMulti(['Hurdle', 'Ledge'], 250)) then
- begin
- setCompass(inttostr(randomrange(315, 359)));
- Reflect.Compass.MakePitch(5 + Random(2));
- end
- end
- if (getRunEnergy >= (1 + random(99))) and not isUsingRun then
- toggleRunning(true);
- wait(randomrange(1400, 1900));
- inc(lapcount);
- end
- procedure edgeV;
- var
- gap1: TReflectObject;
- T: Timer;
- pnt: tpoint;
- begin
- lootMark();
- dismissAllRandoms();
- if gap1.Find(objGame, 10817, 20) then
- begin
- pnt := gap1.GetMSPoint;
- if (pnt.x > 0) and (pnt.y > 0) and (pnt.x < cW) and (pnt.y < cH) then
- Reflect.Mouse.Move(gap1.GetMSPoint, 3, 3);
- if (waitUptextMulti(['Jump-off', 'Edge'], 250)) then
- begin
- fastClick(Mouse_left);
- if DidRedClick then
- begin
- draw('Climbing down');
- T.start;
- repeat
- wait(150);
- until (reflect.Tiles.getplane = 0) or (T.timeElapsed > 5000);
- end
- end
- else if not (waitUptextMulti(['Jump-off', 'Edge'], 250)) then
- begin
- setCompass(inttostr(randomrange(280, 350)));
- Reflect.Compass.MakePitch(6 + Random(2));
- end
- end
- end
- procedure walkToWallV;
- var
- T: Timer;
- begin
- draw('Walking to Wall');
- if getCurrentHealth() < EATAT then
- eatFood;
- myplayer.blindwalkMM(Point(3222, 3414), 2);
- while not myplayer.ismoving do
- begin
- T.start;
- if T.timeelapsed > 2500 then
- Break;
- Wait(150);
- end;
- breakhandler();
- end;
- function At1V: boolean;
- var
- CorrectBox := inttobox (3214, 3410, 3219, 3419);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At2V: boolean;
- var
- CorrectBox := inttobox (3201, 3413, 3208, 3417);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At3V: boolean;
- var
- CorrectBox := inttobox (3194, 3416, 3197, 3416);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At4V: boolean;
- var
- CorrectBox := inttobox (3192, 3402, 3198, 3406);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At1D: boolean;
- var
- CorrectBox := inttobox (3097, 3277, 3102, 3281);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At2D: boolean;
- var
- CorrectBox := inttobox (3088, 3273, 3091, 3276);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At3D: boolean;
- var
- CorrectBox := inttobox (3089, 3265, 3094, 3267);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At4D: boolean;
- var
- CorrectBox := inttobox (3088, 3257, 3088, 3261);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At5D: boolean;
- var
- CorrectBox := inttobox (3087, 3254, 3094, 3255);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At6D: boolean;
- var
- CorrectBox := inttobox (3096, 3256, 3101, 3261);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At1F: boolean;
- var
- CorrectBox := inttobox (3036, 3342, 3040, 3343);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At2F: boolean;
- var
- CorrectBox := inttobox (3045, 3341, 3051, 3349);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At3F: boolean;
- var
- CorrectBox := inttobox (3048, 3357, 3050, 3358);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At4F: boolean;
- var
- CorrectBox := inttobox (3045, 3361, 3048, 3367);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At5F: boolean;
- var
- CorrectBox := inttobox (3034, 3361, 3041, 3364);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At6F: boolean;
- var
- CorrectBox := inttobox (3026, 3352, 3029, 3355);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At7F: boolean;
- var
- CorrectBox := inttobox (3009, 3353, 3021, 3358);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At8F: boolean;
- var
- CorrectBox := inttobox (3016, 3343, 3022, 3349);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At9F: boolean;
- var
- CorrectBox := inttobox (3011, 3344, 3014, 3346);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At10F: boolean;
- var
- CorrectBox := inttobox (3009, 3335, 3013, 3342);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At11F: boolean;
- var
- CorrectBox := inttobox (3012, 3331, 3017, 3334);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At12F: boolean;
- var
- CorrectBox := inttobox (3019, 3332, 3024, 3335);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At1S: boolean;
- var
- CorrectBox := inttobox (2721, 2730, 3490, 3497);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At2S: boolean;
- var
- CorrectBox := inttobox (2705, 3488, 2713, 3495);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At3S: boolean;
- var
- CorrectBox := inttobox (2710, 3477, 2715, 3481);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At4S: boolean;
- var
- CorrectBox := inttobox (2700, 3470, 2715, 3475);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At5S: boolean;
- var
- CorrectBox := inttobox (2698, 3460, 2702, 3465);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function At6S: boolean;
- var
- CorrectBox := inttobox (3019, 3332, 3024, 3335);
- MyCurrentTile: tpoint;
- begin
- MyCurrentTile := treflectiontiles.getglobaltile();
- result := pointinbox(MyCurrentTile, CorrectBox);
- end;
- function getStateV(): Integer;
- begin
- if not isLoggedIn() then
- exit(1);
- if lootMark() then
- exit(2);
- if (reflect.Tiles.NearTile(Point(3221, 3414), 5)) and (reflect.Tiles.getplane = 0) then
- exit(3);
- if At1V then
- exit(4);
- if At2V then
- exit(5);
- if At3V then
- exit(6);
- if At4V then
- exit(7);
- if At5V then
- exit(8);
- if At6V then
- exit(9);
- if At7V then
- exit(10);
- if At8V then
- exit(11);
- if reflect.Tiles.getplane = 0 then
- exit(12);
- end;
- procedure executeStateV(State: Integer);
- begin
- case (State) of
- 1: HandleLogin();
- 2: lootMark();
- 3: theWallV();
- 4: clotheslineV();
- 5: gap1V();
- 6: wall1V();
- 7: gap2V();
- 8: gap3V();
- 9: gap4V();
- 10: ledgeV();
- 11: edgeV();
- 12: walkToWallV();
- end;
- wait(randomrange(75, 175));
- end;
- function getStateS(): Integer;
- begin
- if not isLoggedIn() then
- exit(1);
- if lootMark() then
- exit(2);
- if (reflect.Tiles.NearTile(Point(2729, 3488), 10)) and (reflect.Tiles.getplane = 0) then
- exit(3);
- if At1S then
- exit(4);
- if At2S then
- exit(5);
- if At3S then
- exit(6);
- if At4S then
- exit(7);
- if At5S then
- exit(8);
- if reflect.Tiles.getplane = 0 then
- exit(9);
- end;
- procedure executeStateS(State: Integer);
- begin
- case (State) of
- 1: HandleLogin();
- 2: lootMark();
- 3: theWallS();
- 4: gap1S();
- 5: rope1S();
- 6: gap2S();
- 7: gap3S();
- 8: edgeS();
- 9: walkToWallS();
- end;
- wait(randomrange(75, 175));
- end;
- function getStateF(): Integer;
- begin
- if not isLoggedIn() then
- exit(1);
- if lootMark() then
- exit(2);
- if (reflect.Tiles.NearTile(Point(3036, 3341), 3)) and (reflect.Tiles.getplane = 0) then
- exit(3);
- if At1F then
- exit(4);
- if At2F then
- exit(5);
- if At3F then
- exit(6);
- if At4F then
- exit(7);
- if At5F then
- exit(8);
- if At6F then
- exit(9);
- if At7F then
- exit(10);
- if At8F then
- exit(11);
- if At9F then
- exit(12);
- if At10F then
- exit(13);
- if At11F then
- exit(14);
- if At12F then
- exit(15);
- if reflect.Tiles.getplane = 0 then
- exit(16);
- end;
- procedure executeStateF(State: Integer);
- begin
- case (State) of
- 1: HandleLogin();
- 2: lootMark();
- 3: thewallF();
- 4: rope1F();
- 5: holdsF();
- 6: gap1F();
- 7: gap2F();
- 8: rope2F();
- 9: rope3F();
- 10: gap3F();
- 11: ledge1F();
- 12: ledge2F();
- 13: ledge3F();
- 14: ledge4F();
- 15: edge1F();
- 16: walkToWallF();
- end;
- wait(randomrange(75, 175));
- end;
- function getStateD(): Integer;
- begin
- if not isLoggedIn() then
- exit(1);
- if lootMark() then
- exit(2);
- if (reflect.Tiles.NearTile(Point(3104, 3279), 3)) and (reflect.Tiles.getplane = 0) then
- exit(3);
- if At1D then
- exit(4);
- if At2D then
- exit(5);
- if At3D then
- exit(6);
- if At4D then
- exit(7);
- if At5D then
- exit(8);
- if At6D then
- exit(9);
- if reflect.Tiles.getplane = 0 then
- exit(10);
- end;
- procedure executeStateD(State: Integer);
- begin
- case (State) of
- 1: HandleLogin();
- 2: lootMark();
- 3: thewallD();
- 4: rope1D();
- 5: rope2D();
- 6: nwallD();
- 7: jwallD();
- 8: gapD();
- 9: crateD();
- 10: walkToWallD();
- end;
- wait(randomrange(75, 175));
- end;
- begin
- initAL();
- Reflect.Setup();
- myplayer.Create;
- cH := (reflect.Smart.Height - 5);
- cW := (reflect.Smart.Width - 5);
- setupBreak(cBREAK_IN, cBREAK_FOR, cR_BREAK_IN, cR_BREAK_FOR);
- Reflect.Compass.MakePitch(4 + Random(2));
- repeat
- if (Course = 'Draynor') then
- begin
- executeStateD(getStateD());
- end
- else if (Course = 'Falador') then
- begin
- executeStateF(getStateF());
- end
- else if (Course = 'Seers') then
- begin
- executeStateS(getStateS());
- end
- else if (Course = 'Varrock') then
- begin
- executeStateV(getStateV());
- end
- until (false);
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement