Lance
2009-05-13 11:42:35
4 Year(s)
Are you affilated in anyway with Jagex LTD?
no
Were you Referred to SRL?
oo00o
What is your general programming knowledge?
Flash Actionscript
Are you a member of any other communities?
nope
Tell us about yourself…
From: lancerawks
Hello im Lance, i like scripting. since ive discovered srl its been my #1 hobby haha. I did just enter an application, but Hobbit gave me permision to fix it up and enter it again in a weeks time
Please show us one (or multiple) of your scripts.program YewChopAndBank;
{.Include SRL/SRL/Misc/SMART.SCAR}
{.include SRL\SRL.Scar}
{
.____ ____ ____ __ _____.___.
| | _____ ____ ____ ____ ______ \ \ / /____ ______________ ____ ____ | | __ \__ | | ______ _ __
| | \__ \ / \_/ ___\/ __ \ / ___/ \ Y /\__ \\_ __ \_ __ \/ _ \_/ ___\| |/ / / | |/ __ \ \/ \/ /
| |___ / __ \| | \ \__\ ___/ \___ \ \ / / __ \| | \/| | \( <_> ) \___| < \____ \ ___/\ /
|_______ (____ /___| /\___ >___ >____ > \___/ (____ /__| |__| \____/ \___ >__|_ \ / ______|\___ >\/\_/
\/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/
_________ .__
\_ ___ \| |__ ____ ______ ______ ____ ___________
/ \ \/| | \ / _ \\____ \\____ \ / _ \_/ __ \_ __ \
\ \___| Y ( <_> ) |_> > |_> > <_> ) ___/| | \/
\______ /___| /\____/| __/| __/ \____/ \___ >__|
\/ \/ |__| |__| \/
.=========================================================================.
| Instructions: |
`=========================================================================`
| |
| Make sure your axe is either Equipted or in your 1st Inventory Slot |
| |
| Setup all your charictures in between the two yew trees |
|_______________________________________________________________________|
.=========================================================================.
| Thanks To: |
`=========================================================================`
| |
| SmarterChild - for adding me to MSN and teaching me how to script |
| |
| All the people who voted yes - for being so generous |
| |
| All the people who voted no - for showing me how i can improve |
| |
| All the guys on IRC - for putting up with my nooby questions |
|_______________________________________________________________________|
}
const
world = 160;
chance = 90{%}; //The persent chance of doing antiban.
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name :='';
Players[0].Pass :='';
Players[0].Nick :='';
Players[0].Active := True;
Players[0].Integers[0] := 2; // Fight style to use
{
Players[1].Name :='';
Players[1].Pass :='';
Players[1].Nick :='';
Players[1].Active := True;
Players[1].Integers[0] := 2;
}
{
Players[2].Name :='';
Players[2].Pass :='';
Players[2].Nick :='';
Players[2].Active := True;
Players[2].Integers[0] := 2;
}
{
Players[3].Name :='';
Players[3].Pass :='';
Players[3].Nick :='';
Players[3].Active := True;
Players[3].Integers[0] := 2;
}
end;
var
PathColor, time, loads, waitTree, count : Integer;
AntibanChance : Extended;
Side : String;
AxeEquipted, waiting : Boolean;
waitTime : LongInt;
{Miscellaneous Functions}
procedure SetupSmart;
begin
SMARTSetupEx(world, False, True, False);
Wait(5000);
SetTargetDC(SmartGetDC);
repeat
wait(100);
until(SmartGetColor(253, 233)<>1118604);
end;
function Terminate(reason : String) : Boolean;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
if not AllPlayersInactive then
begin
Writeln('Logging out, and starting with your next player. Reason: ' + reason);
LogOut;
NextPlayer(false);
Result := True;
Exit;
end else
begin
Writeln('No more active players, Script Terminated. Reason: ' + reason);
LogOut;
TerminateScript;
Result := True;
Exit;
end;
end;
function RanInt(magnitude : Integer) : Integer;
var
product : Integer;
begin
product := Random(magnitude+1) - Random(magnitude+1);
if(product=0) then
Result := Random(magnitude) - Random(magnitude)
else Result := product;
end;
procedure Report;
begin
time := GetTimeRunning;
ClearDebug;
Writeln('.=============================================.');
Writeln('|.::Lancerawks Varrock Yew Chopper & Banker::.|');
Writeln('`=============================================`');
Writeln('Script has ran for: ' + TimeRunning);
Writeln('Script has banked: ' + IntToStr(loads) + ' loads');
Writeln('=============================================');
end;
procedure AntiBan;
var
ChanceInt : Integer;
begin
if not LoggedIn then Exit;
FindNormalRandoms
ChanceInt := Round(AntibanChance);
Writeln('Performing Antiban: ' + IntToStr(chance) + '% - ' + IntToStr(ChanceInt) + '/8');
case Random(ChanceInt) of
0: begin
HoverSkill('Random', False);
Wait(1000+RanInt(200));
end;
1: begin
HoverSkill('Woodcutting', False);
Wait(1000+RanInt(200));
end;
2: begin
RandomRClick;
Wait(200+RanInt(50));
end;
3: case Random(3) of
0: begin
MakeCompass('E');
Wait(10+RanInt(5));
MakeCompass('S');
SetAngle(false);
Wait(10+RanInt(5));
MakeCompass('N');
SetAngle(true);
Wait(10+RanInt(5));
end;
1: begin
MakeCompass('W');
Wait(10+RanInt(5));
MakeCompass('E');
SetAngle(false);
Wait(10+RanInt(5));
MakeCompass('N');
SetAngle(true);
Wait(10+RanInt(5));
end;
2: begin
MakeCompass('S');
Wait(10+RanInt(5));
MakeCompass('W');
SetAngle(false);
Wait(10+RanInt(5));
MakeCompass('N');
SetAngle(true);
Wait(10+RanInt(50));
end;
end;
4: begin
SetAngle(false);
Wait(50+RanInt(10));
SetAngle(true);
end;
5: case Random(3) of
0: SleepAndMoveMouse(4000 + RanInt(2000));
1: SleepAndMoveMouse(1000 + Random(1000) + RanInt(80));
2: SleepAndMoveMouse(30000 + Random(10000) + RanInt(2000));
end;
6: PickUpMouse;
7: BoredHuman;
8: RandomMovement;
end;
end;
procedure NPCChatCheck;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
if FindNPCChatText('lations', ClickLeft) then
Writeln('Congratz, you just gained a Woodcutting Level!');
if FindNPCChatText('ntinue', ClickLeft) then
Writeln('Found NPC Chat: "Click to continue", and clicked to continue');
end;
function AxeCheck : Boolean;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
GameTab(4);
if (GetColor(583, 219) <> 3424328) then
begin
case Random(3) of
0: MMouse(583 + RanInt(3), 219 + RanInt(3), 2, 2);
1: MMouse(573 + RanInt(3), 232 + RanInt(3), 2, 2);
2: MMouse(584 + RanInt(3), 225 + RanInt(3), 2, 2);
end;
Wait(500+RanInt(100));
if IsUpText('chet') then
begin
Writeln('Axe Found in: Inventory');
AxeEquipted := False;
Result := True;
Exit;
end;
end;
begin
GameTab(5);
MMouse(587 + RanInt(5), 303 + RanInt(5), 2, 2);
Wait(500+Random(300));
if IsUpText('chet') then
begin
Writeln('Axe Found in: Equipted');
AxeEquipted := True;
Result := True;
Exit;
end;
end;
end;
function FindBirdsNest : Boolean; {this function needs to be tested before I include it in the script. Due to birdsnests being rare and every time one apears someone grabs it, i havent had the chance to test it yet.}
var
TPA : TPointArray;
MyPoint : TPoint;
x, y, i : Integer;
begin
if InvFull or not LoggedIn then Exit;
FindNormalRandoms;
if FindColorsTolerance(TPA, 3952984, MSX1, MSY1, MSX2, MSY2, 7) then
begin
for i := 0 to High(TPA) do
begin
MyPoint := TPA[i];
if FindColorsTolerance(TPA, 1713706, MyPoint.x - 10, MyPoint.y - 10, MyPoint.x + 10, MyPoint.y + 10, 7) then
begin
for i := 0 to High(TPA) do
begin
MyPoint := TPA[i];
if FindColorsTolerance(TPA, 1581604, MyPoint.x - 20, MyPoint.y - 20, MyPoint.x + 20, MyPoint.y + 20, 7) then
begin
MMouse(MyPoint.x, MyPoint.y, 2, 2);
if IsUpText('nest') then
begin
GetMousePos(x, y)
Mouse(x, y, 0, 0, False);
ChooseOption('take');
Result := true;
Exit;
end;
end;
end;
end;
end;
end;
end;
{Tree Cutting Functions}
function ChangeYew : String;
var
x, y : Integer;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
if FindSymbolIn(x, y, 'tree', 650, MMY1, MMX2, 126) then
begin
Mouse(x + RanInt(5), y + 10 + RanInt(2), 2, 2, true);
FFlag(10);
Result := 'RIGHT';
Side := 'RIGHT';
Report;
Writeln('Walking to the: ' + Result);
Exit;
end;
if FindSymbolIn(x, y, 'tree', 557, MMY1, 610, 126) then
begin
Mouse(x - 10 + RanInt(2), y + RanInt(4), 2, 2, true);
FFlag(10);
Result := 'LEFT';
Side := 'LEFT';
Report;
Writeln('Walking to the: ' + Result);
Exit;
end;
end;
function CutYew: Boolean;
var
x, y, count, i : integer;
Color: TIntegerArray;
Switch : Boolean;
begin
if(InvFull or not LoggedIn) then Exit;
FindNormalRandoms;
Result := False;
Color := [4820866, 2648669, 3240805, 4359803, 1987656, 3109735, 5544845, 2907218, 2583903, 5412233, 3439984, 4950398, 3440241];
for i := 0 to 12 do
begin
if(FindObjTPA(x, y, Color[i], 7, -1, 30, 30, 4, ['ew', 'Yew'])) then
begin
waiting := false;
Wait(500+RanInt(100));
MMouse(x, y, 3, 3);
if IsUpText('ew') then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
Switch := True;
Result := true;
Exit;
end;
end else
begin
inc(count);
Wait(500+Random(300));
Report
Writeln('Timer Till Yew Switch: ' + IntToStr(count) + '/10');
if(count >= 10) then
begin
ChangeYew;
count := 0;
waiting := true;
Exit;
end;
end;
end;
end;
{Path Walking Functions}
function PathDTM: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [1..6] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 688;
dtmMainPoint.y := 114;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := PathColor;
dtmMainPoint.Tolerance := 0;
dtmSubPoints[1].x := 696;
dtmSubPoints[1].y := 98;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := PathColor;
dtmSubPoints[1].Tolerance := 0;
dtmSubPoints[2].x := 697;
dtmSubPoints[2].y := 133;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := PathColor;
dtmSubPoints[2].Tolerance := 0;
dtmSubPoints[3].x := 693;
dtmSubPoints[3].y := 85;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := PathColor;
dtmSubPoints[3].Tolerance := 0;
dtmSubPoints[4].x := 655;
dtmSubPoints[4].y := 110;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := PathColor;
dtmSubPoints[4].Tolerance := 0;
dtmSubPoints[5].x := 677;
dtmSubPoints[5].y := 109;
dtmSubPoints[5].AreaSize := 0;
dtmSubPoints[5].AreaShape := 0;
dtmSubPoints[5].Color := PathColor;
dtmSubPoints[5].Tolerance := 0;
dtmSubPoints[6].x := 677;
dtmSubPoints[6].y := 116;
dtmSubPoints[6].AreaSize := 0;
dtmSubPoints[6].AreaShape := 0;
dtmSubPoints[6].Color := PathColor;
dtmSubPoints[6].Tolerance := 0;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
function GrandExchangeDTM(tol: Integer): Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [1..8] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 620;
dtmMainPoint.y := 110;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 7305079;
dtmMainPoint.Tolerance := tol+5;
dtmSubPoints[1].x := 618;
dtmSubPoints[1].y := 104;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 195836;
dtmSubPoints[1].Tolerance := tol;
dtmSubPoints[2].x := 622;
dtmSubPoints[2].y := 104;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 195836;
dtmSubPoints[2].Tolerance := tol;
dtmSubPoints[3].x := 626;
dtmSubPoints[3].y := 107;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 195836;
dtmSubPoints[3].Tolerance := tol;
dtmSubPoints[4].x := 626;
dtmSubPoints[4].y := 112;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 195836;
dtmSubPoints[4].Tolerance := tol;
dtmSubPoints[5].x := 621;
dtmSubPoints[5].y := 117;
dtmSubPoints[5].AreaSize := 0;
dtmSubPoints[5].AreaShape := 0;
dtmSubPoints[5].Color := 195836;
dtmSubPoints[5].Tolerance := tol;
dtmSubPoints[6].x := 617;
dtmSubPoints[6].y := 116;
dtmSubPoints[6].AreaSize := 0;
dtmSubPoints[6].AreaShape := 0;
dtmSubPoints[6].Color := 195836;
dtmSubPoints[6].Tolerance := tol;
dtmSubPoints[7].x := 613;
dtmSubPoints[7].y := 107;
dtmSubPoints[7].AreaSize := 0;
dtmSubPoints[7].AreaShape := 0;
dtmSubPoints[7].Color := 195836;
dtmSubPoints[7].Tolerance := tol;
dtmSubPoints[8].x := 613;
dtmSubPoints[8].y := 112;
dtmSubPoints[8].AreaSize := 0;
dtmSubPoints[8].AreaShape := 0;
dtmSubPoints[8].Color := 195836;
dtmSubPoints[8].Tolerance := tol;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
Function FindPathColor(PathType : String) : Integer;
var
Color : TIntegerArray;
TPA : TPointArray;
Position : TPoint;
i, tol : Integer;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
tol := 15 ;
if PathType = 'dirt' then Color := [6060935, 6653078, 5931140, 5732736];
if PathType = 'stone' then Color := [7568253];
if (PathType <> 'stone') and (PathType <> 'dirt') then
begin
Writeln('FindPathColor function was called improperly');
Logout;
TerminateScript;
end;
for i := 0 to 3 do
repeat
if FindColorsTolerance(TPA, Color[i], 627, 40, 685, 102, tol) then
begin
for i := 0 to High(TPA) do
begin
Position := TPA[i];
Result := GetColor(Position.x, Position.y);
Writeln('PathColor(' + IntToStr(Position.x) + ', ' + IntToStr(Position.y) + '): ' + IntToStr(Result));
Writeln('Tolerance: ' + IntToStr(tol));
Exit;
end;
end else
begin
tol := tol + 10;
end;
until(tol >= 50);
Writeln('Could Not Find PathColor');
end;
function FindPath : Boolean;
var
x, y : Integer;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
repeat
if DTMRotated(PathDTM, x, y, 627, 40, MMX2, MMY2) then
begin
while (GetColor(x, y) <> PathColor) do x := x - 5;
Mouse(x, y, 2, 2, True);
Wait(1000+RanInt(300));
FFlag(10);
Report;
Writeln('PathDTM Found');
FreeDTM(PathDTM);
Result := True;
Exit;
end;
inc(count);
Wait(3000+RanInt(500));
until(count > 5);
FreeDTM(PathDTM);
end;
function FindGE(click : Boolean) : Boolean;
var
x, y, tol : Integer;
DTM : Integer;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
tol := 35;
repeat
DTM := GrandExchangeDTM(tol);
if DTMRotated(DTM, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
Mouse(x+10, y, 2, 2, True);
Wait(1000+RanInt(500));
FFlag(10);
Report;
Writeln('Grand Exchange Found');
FreeDTM(DTM);
Result := True;
Exit;
end;
if not DTMRotated(GrandExchangeDTM(tol), x, y, MMX1, MMY1, MMX2, MMY2) then
begin
tol := tol + 5;
Report;
Writeln('Repeating Grand Exchange surch with' + IntToStr(tol) + ' tolerance');
end;
until(tol >= 60);
FreeDTM(DTM);
end;
function WalkPath(step : Integer) : Boolean;//Steps 1, 2, 3 are walking To the GE. Steps 4, 5, 6 are walking back.
var
x, y, count : Integer;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
count := 0;
Writeln('Preforming Step ' + IntToStr(step) + ' of Path Walking');
case step of
1: begin
if FindSymbolIn(x, y, 'water', MMX1, MMY1, 670, MMY2) then
begin
Writeln('Walking Left');
RadialRoadWalk(PathColor, 265, 285, 45, 1, -1);
if FindSymbolIn(x, y, 'water', MMX1, MMY1, 670, MMY2) then
begin
Writeln('Found Tree Symbol');
Mouse(x-10, y, 2, 2, true);
end;
end;
repeat
if RadialRoadWalk(PathColor, 180, 270, 65, 1, -1) then
begin
FFlag(10);
Result := True;
Writeln('Step ' + IntToStr(step) + ' was sucsessful');
Exit;
end else
begin
inc(count);
PathColor := FindPathColor('dirt');
Writeln('Pathwalking Unsucsessful: Repeating try ' + intToStr(count));
end;
until(count>4);
end;
2: begin
repeat
if RadialRoadWalk(PathColor, 265, 280, 65, 1, 0) then
begin
FFlag(10);
Result := True;
Writeln('Step ' + IntToStr(step) + ' was sucsessful');
Exit;
end else
begin
inc(count);
PathColor := FindPathColor('dirt');
Writeln('Pathwalking Unsucsessful: Repeating try ' + intToStr(count));
end;
until(count>4);
end;
3: begin
if GetColor(575, 80) <> FindPathColor('stone') then
begin
Mouse(570, 80, 2, 2, True);
Wait(1000+RanInt(200));
FFlag(20);
end else
begin
Mouse(575, 80, 2, 2, True);
Wait(1000+RanInt(200));
FFlag(20);
end;
end;
4: begin
repeat
if RadialRoadWalk(PathColor, 92, 88, 65, -1, 0) then
begin
FFlag(10);
Result := True;
Writeln('Step ' + IntToStr(step) + ' was sucsessful');
Exit;
end else
begin
inc(count);
PathColor := FindPathColor('dirt');
Writeln('Pathwalking Unsucsessful: Repeating try ' + intToStr(count));
end;
until(count>4);
end;
5: begin
Wait(500+RanInt(100));
repeat
if FindPath then Exit;
Inc(count)
until(count > 5);
repeat
if RadialRoadWalk(PathColor, 90, 88, 65, -1, 0) then
begin
FFlag(10);
Result := True;
Writeln('Step ' + IntToStr(step) + ' was sucsessful');
Exit;
end else
begin
inc(count);
PathColor := FindPathColor('dirt');
Writeln('Pathwalking Unsucsessful: Repeating try ' + intToStr(count));
end;
until(count>4);
end;
6: begin
repeat
if RadialRoadWalk(PathColor, 50, 0, 68, -1, 0) then
begin
FFlag(10);
Result := True;
Writeln('Step ' + IntToStr(step) + ' was sucsessful');
Exit;
end else
begin
inc(count);
PathColor := FindPathColor('dirt');
Writeln('Pathwalking Unsucsessful: Repeating try ' + intToStr(count));
end;
until(count>4);
end;
end;
end;
function WalkToGE : Boolean;
var
x, y : Integer;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
if(Side = 'RIGHT') then ChangeYew;
Wait(2000+RanInt(200));
FFlag(20);
if FindSymbol(x, y, 'tree') then
begin
if WalkPath(1) then
if WalkPath(2) then
if WalkPath(3) then
begin
FindGE(true);
Wait(1000+RanInt(200));
FFlag(10);
Result := True;
Exit;
end;
end;
end;
function WalkToYews : Boolean;
var
x, y : Integer;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
WalkPath(4);
WalkPath(5);
WalkPath(6);
if FindSymbol(x, y, 'tree') then
begin
Result := True;
Exit;
end;
end;
function DepositYews: Boolean;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
Wait(500+RanInt(100));
if AxeEquipted then Deposit(1, 28, True);
if not AxeEquipted then Deposit(2, 28, True);
if(not InvFull) then
begin
Inc(loads);
Result := True;
end;
end;
function OpenGEBank : Boolean;
var
TPA : TPointArray;
Position : TPoint;
HairColor, SkinColor : TIntegerArray;
i, H, x, y : Integer;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
HairColor := [404534, 1342114, 335911, 1275292];
SkinColor := [7107701, 4870224, 2895663];
Writeln('Opening Bank');
Wait(2000+RanInt(500));
MMouse(214, 169, 5, 5);
Wait(200+RanInt(20));
if IsUpText('anker') then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, False);
Wait(100+RanInt(30));
ChooseOption('Bank Banker');
Wait(1000+RanInt(300));
if BankScreen then
begin
Result := True;
Exit;
end;
end;
for i := 0 to 3 do
begin
if FindColorsTolerance(TPA, HairColor[i], 226, 121, 259, 256, 50) then
begin
Position := TPA[i];
x := Position.x
y := Position.y
for i := 0 to 2 do
begin
if FindColorsTolerance(TPA, SkinColor[i], x-10, y-10, x+10, y+10, 50) then
begin
H := High(TPA);
for i := 0 to H do
begin
Position := TPA[i];
MMouse(Position.x, Position.y, 2, 2);
Wait(50+RanInt(10));
if IsUpText('anker') then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, False);
Wait(100+RanInt(30));
ChooseOption('Bank Banker');
Wait(1000+RanInt(300));
if BankScreen then
begin
Result := True;
Exit;
end;
end;
end;
end;
end;
end;
end;
end;
function BankingLoop : Boolean;
var
count : Integer;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
AntiBan;
if(FindGE(false)) then
begin
Writeln('begining banking procedure');
repeat
Wait(1000+RanInt(500));
Inc(count);
until(OpenGEBank or (count > 10));
DepositYews;
CloseBank;
if not AxeEquipted and (GetColor(585, 220) <> 3424328) then
Terminate('The axe has been banked.');
end else
begin
if FindPath then
begin
WalkPath(6);
Wait(500+RanInt(200));
FFlag(10);
Exit;
end else
Terminate('you were not standing close to the grand exchange while the banking procedure took place');
end;
if InvFull then Terminate('Banking Procedure didnt work');
end;
procedure ScriptSetup;
begin
ClearDebug;
Writeln('.____ ____ ____ __ _____.___.');
Writeln('| | _____ ____ ____ ____ ______ \ \ / /____ ______________ ____ ____ | | __ \__ | | ______ _ __');
Writeln('| | \__ \ / \_/ ___\/ __ \ / ___/ \ Y /\__ \\_ __ \_ __ \/ _ \_/ ___\| |/ / / | |/ __ \ \/ \/ /');
Writeln('| |___ / __ \| | \ \__\ ___/ \___ \ \ / / __ \| | \/| | \( <_> ) \___| < \____ \ ___/\ /');
Writeln('|_______ (____ /___| /\___ >___ >____ > \___/ (____ /__| |__| \____/ \___ >__|_ \ / ______|\___ >\/\_/');
Writeln(' \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/');
Writeln(' _________ .__');
Writeln(' \_ ___ \| |__ ____ ______ ______ ____ ___________');
Writeln(' / \ \/| | \ / _ \\____ \\____ \ / _ \_/ __ \_ __ \');
Writeln(' \ \___| Y ( <_> ) |_> > |_> > <_> ) ___/| | \/');
Writeln(' \______ /___| /\____/| __/| __/ \____/ \___ >__|');
Writeln(' \/ \/ |__| |__| ');
Wait(1000);
ClearDebug;
SetupSRL;
SetupSmart;
ActivateClient;
DeclarePlayers;
if not LoggedIn then LogInPlayer;
SetAngle(true);
MakeCompass('N');
SetRun(true);
if not AxeCheck then Terminate('Could not find Axe');
waitTree := 0;
{Setting Fixed Variables}
PathColor := FindPathColor('dirt');
AntibanChance := ((8 / chance) * 100);
end;
procedure MainLoop;
begin
repeat
repeat
repeat
Report;
CutYew;
MarkTime(waitTime);
repeat
//FindBirdsNest;
FindNormalRandoms;
Wait(1000+RanInt(100));
NPCChatCheck;
if(TimeFromMark(waitTime) >= (60000 + Random(30000))) then Antiban; // if idle for up to 90 milliseconds ~ 1.5 min then perform antiban to keep yourself from logging out.
until((not IsUpText('hop')) or InvFull);
until(InvFull);
WalkToGE;
BankingLoop;
WalkToYews;
until(not LoggedIn);
NextPlayer(false);
until(AllPlayersInactive);
TerminateScript;
end;
begin
ScriptSetup;
MainLoop;
end.