SRL Archive - Archive

Spiker - SRL Member Application


Spiker

2012-03-08 20:23:07

How Long have You Played Runescape?
7 Year(s)


Are you affilated in anyway with Jagex LTD?
No

Were you Referred to SRL?
No


What is your general programming knowledge?
Java, Pascal, Scar/Simba, SRL


Are you a member of any other communities?
No


Tell us about yourself…
From: Spiker
My name is Lee. I'm an avid gamer, both console and PC. I'm 18, and should be going to Texas Tech university this upcoming Fall to major in computer engineering. I'm a nice guy, a fast learner, and a helpful member of any community that I'm in.



Please show us one (or multiple) of your scripts.
Program Spiker_Fruitfaller;
{$DEFINE SMART}
{$i SRL/srl.simba}

{==============================================================================}
{========== INSTRUCTIONS ==========}
{==============================================================================}
{========== Spiker Fruitfaller V1.0 by Spiker ==========}
{==============================================================================}
{========== 1. Fill out all information below. ==========}
{========== 2. Start inside the Al-Kharid bank. ==========}
{========== 3. Pots/Scrolls/Pouches visible in bank. ==========}
{========== 4. Bat's special bar should be full. ==========}
{========== 5. Post proggies and buggies please. ==========}
{==============================================================================}

Const
PapPrice = 2077; //current price of papayas
OraPrice = 965; //current price of oranges
BanPrice = 271; //current price of bananas
LimPrice = 74; //current price of limes
LemPrice = 86; //current price of lemons
PinPrice = 45; //current price of pineapples
BoBPrice = 900; //average price of bob items received
ScrollPrice = 258; //current price of fruitfall scrolls
FBPouchPrice = 2269; //current price of fruit bat pouches
SumPotPrice = 1171; //current price of 1 dose of summoning potion
Version = '1.0'; //current version

SRLStats_Username = ''; //SRL Stats Username
SRLStats_Password = ''; //SRL Stats Password

World = 0; //0 for random (Best to pick a low-populated world.)
Members = True; //do not change
Signed = True;

AntibanAmount = 2; //Amount of antibans (0 = None, 1 = Below Average, 2 = Average, 3 = Above Average, 4 = Extremely High, 5 = Every Trip)

//Create a text file on your deskop and fill out the correct path below. (An example is given.)
ProgressReports = 'C:\Users\Oval\Desktop\FruitfallerProggies.txt'; //Text file that stores a progress report every 5 minutes.

Var
ScrollsUsed, PouchesUsed, Profit, FinalProfit, Trips, Papayas, Oranges,
Pineapples, Lemons, Limes, Bananas, TotalFruits, SumBut, BankExit, FbPouch,
FfScroll, EmptyInv, DepositBoBItems, SpecMove, ConBut, BoB, TT, SumPotsUsed,
Papaya, OutsideA, InsideA, InsideB, InsideC, Randoms, Sum1, Sum2, Sum3, Sum4,
AntibanCount: Integer;

Procedure DeclarePlayers; //Declares all of your players' stats/info.
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers)
CurrentPlayer := 0;
with Players[0] do
begin
Name := ''; //Runescape Username
Pass := ''; //Runescape Password
Pin := ''; //Bank Pin
Nick := ''; //3-4 lowercase letters from username; used for random event detection
Member := True; //do not change
BoxRewards := ['XP','xp','lamp'];
LampSkill := Skill_Summoning;
Active := True; //Set to true if you want to use Player 0
end;
end;

Procedure SetVars; //Sets needed variables to 0 before starting script for accurate progress reports.
begin
Randoms := 0;
AntibanCount := 0;
ScrollsUsed := 0;
PouchesUsed := 0;
Trips := 0;
Papayas := 0;
Oranges := 0;
Pineapples := 0;
Lemons := 0;
Limes := 0;
Bananas := 0;
end;

Procedure SetDTMs; //Declares all DTMs used in the script.
begin
BankExit := DTMFromString('mbQAAAHicY2VgYHjJyMDwBoifItHKQHF5KFaDYi0VWQZRYUEwNtRSAmN+oDg6ZsSCwQAAYfMHag==');
ConBut := DTMFromString('mQwAAAHicY2ZgYKhlYmCIA+KVQHyEEYIPAfH/MwwMieFODNmJHgz8QHUwzIiEgQAAUnYH5A==');
DepositBoBItems := DTMFromString('mbQAAAHicY2VgYDjAyMCwHog3AfFxRgjfFIgtgVgPiHWB2AKIZ647zuBw25UhNcITjMu6FjDwA/WjY0YsGAwAU1MMIw==');
EmptyInv := DTMFromString('mbQAAAHicY2VgYChjZGCoBuJ0IK6D0qZAbADEVkBsDmUrCfEyzI1RZHC47crAz8fLkBrhycAP1I+OGbFgMAAAE0EHjg==');
FbPouch := DTMFromString('mbQAAAHicY2VgYDAGYksgtgdiFyB2BuJ8IM4B4nQgLgTiLCCu32DG0HvYhmHfziVAHhMY8wNJGIYBRiwYDABNuQiX');
FfScroll := DTMFromString('mbQAAAHicY2VgYIgD4lwozgDiTCDOAeJ0IM4D4mwgLgTilm0WQJIJjKffk2eIil7AwA/koWNGLBgMAGVgCNs=');
InsideA := DTMFromString('mWAAAAHicY2FgYNjAwsCwFIiXAPFZIJ7GyMDQC8QLgHgKEKf58TJ8fcTO8P8tO4NXsQnDF6AYPwMCM6JhEAAAkOML3w==');
InsideB := DTMFromString('mWAAAAHicY2FgYFjPwsAwH4jfAPFGIJ7OyMDQCcTlQLwKiD8d1GJ4zsbI8Baotr8wgOELUIyfAYEZ0TAIAACGJwtz');
InsideC := DTMFromString('mWAAAAHicY2FgYNjIwsAwD4i3A/FZIJ7OyMCwCohrgXgKEM+fP5+hvzCAoSXDk8Gr2IThC1CMnwGBGdEwCAAAkM4Ltw==');
OutsideA := DTMFromString('mggAAAHicY2NgYDjGwsBwE4gXAPEtID4NxI+BeAkjA8MsIN4AxLuAeAoQzwTiic0JDIbJIgwNBe4MjslSDF7FJgybe1IY+IFmYcOMODAEAABmTw/G');
Papaya := DTMFromString('mggAAAHicY2NgYLBlY2BwBWIHKHYGYkcgnsnIwDAFiBcC8Swgng7EfUDcPlMUqIsJjMtahRlCE3jBbH4giQ0z4sAQAADv+giv');
SpecMove := DTMFromString('mQwAAAHicY2ZgYIhjYmDwBOIdQCzAyMBwGyh2D4j/z5Bn+H+GAYz5GRCYEQkDAQBdowiv');
SumBut := DTMFromString('mbQAAAHicY2VgYDjMxMBwDIj3QfERIJ4AFO8E4ilA3Aulpy9dz3Dz7V0wnZiVwdA8Yx4DP1AcHTNiwWAAAG3PEFw=');
Sum1 := DTMFromString('mbQAAAHicY2VgYDjOxMBwCIj3AfFBID4KxK8ZIPgdEH8G4qdA7OTkypCVlc/Q/uw9kMcExvxAEh0zYsFgAADnzA01');
Sum2 := DTMFromString('mlwAAAHicY2dgYJjMBMFTgHg6EM+H0nOA+DlQ/hUQvwfiz0D8BogfA/ELIG46cYGh/c1XBrlrd4E8JjDOyMgB0/xAEhdmxIOhAAB14RKo');
Sum3 := DTMFromString('mWAAAAHicY2FgYMhmYmDIAuICIC4G4kdAsWdA/AmIXwBxRWUdg9y1u0AWExjzA0lkzIiGQQAAEKkI6w==');
Sum4 := DTMFromString('mWAAAAHicY2FgYHBiYmBwA2JvIHYB4odAsZtA/BaIPwOx3LW7QJIJjvmBJDJmRMMgAACb8wbV');
end;

Procedure FreeDTMs; //Frees all DTMs at the end of the script as to avoid memory leakage, etc.
begin
FreeDTM(BankExit);
FreeDTM(ConBut);
FreeDTM(DepositBoBItems);
FreeDTM(EmptyInv);
FreeDTM(FbPouch);
FreeDTM(FfScroll);
FreeDTM(InsideA);
FreeDTM(InsideB);
FreeDTM(InsideC);
FreeDTM(OutsideA);
FreeDTM(Papaya);
FreeDTM(SpecMove);
FreeDTM(SumBut);
FreeDTM(Sum1);
FreeDTM(Sum2);
FreeDTM(Sum3);
FreeDTM(Sum4);
end;

Procedure Setup; //Sets up the player before running the script.
begin
Smart_Server := World;
Smart_Members := Members;
Smart_Signed := Signed;
SMART_SuperDetail := False;
ClearDebug;
SetupSRL;
SetupSRLStats(578, SRLStats_Username, SRLStats_Password);
DeclarePlayers;
SetVars;
SetDTMs;
AddOnTerminate('Progress');
If Not (LoggedIn) Then
LoginPlayer;
end;

Procedure StatsCommit; //Commits your SRL stats to villavu.com.
begin
Writeln('Committing Your Stats.');
stats_IncVariable('Fruit Fall Scrolls Used', ScrollsUsed);
stats_IncVariable('Fruits Picked Up', TotalFruits);
stats_IncVariable('Papayas Picked Up', Papayas);
stats_IncVariable('Total Trips', Trips);
stats_IncVariable('Total Profit', FinalProfit);
Stats_Commit;
MarkTime(TT);
end;

Procedure Antiban; //Helps keep you from becoming banned.
Var
i:Integer;
begin
Case AntibanAmount Of
0: i := 10000;
1: i := 60;
2: i := 30;
3: i := 15;
4: i := 9;
5: i := 6;
end;
Case Random(i) Of
0: begin Writeln('Antiban.') GameTab(tab_Stats) HoverSkill('Summoning', False); Wait(2000+Random(500)); GameTab(25); Inc(AntibanCount); end;
1: begin Writeln('Antiban.') SleepAndMoveMouse(7000+Random(500)); Inc(AntibanCount); end;
2: begin Writeln('Antiban.') ExamineInv; Wait(1500+Random(500)); Inc(AntibanCount); PickUpMouse; end;
3: begin Writeln('Antiban.') GameTab(tab_Stats); Wait(3000+Random(500)); GameTab(25); Inc(AntibanCount); end;
4: begin Writeln('Antiban.') PickUpMouse; Wait(1500+Random(500)); PickUpMouse; Inc(AntibanCount); end;
5: begin Writeln('Antiban.') MMouse(1200, 900, 10, 10); Wait(7000+Random(500)); Inc(AntibanCount); end;
end;
end;

{*******************************************************************************
Function UsingFamiliar: Boolean;
By: Flight
Description: Returns if we currently have a Summoning familiar.
*******************************************************************************}
Function UsingFamiliar: Boolean;
Var
X,Y: Integer;
begin
Result := FindColorTolerance(X, Y, 11192179, 695, 130, 720, 155, 20);
end;

{*******************************************************************************
Procedure HumanMMouse(eX, eY: Integer);
By: Flight
Description: Human-like miss-and-correct mouse movement
*******************************************************************************}
Procedure HumanMMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed:Extended;
X, Y, X2, Y2, A, Dist, MP:Integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
If MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 9.0, 3.0, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
end;

Procedure HumanMouse(eX, eY, ranX, ranY: Integer; LeftClick: Boolean); //Wrapper for HumanMMouse (It lets you right or left click as well.)
Var
x, y:Integer;
begin
HumanMMouse(eX, eY, ranX, ranY);
GetMousePos(x, y);
Mouse(x, y, 0, 0, LeftClick);
end;

Function FamVanish:Boolean; //Returns whether or not your familiar is about to vanish.
begin
If FindChatBoxText('before your familiar vanishes', 8, 127) Then
begin
Result := True;
end
else
Result := False;
end;

Function SpecialMoveCheck:Boolean; //Sets your left-click setting for your familiar to special move and returns whether or not it was successful.
Var
c, d, e, i, x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
Gametab(25);
Wait(300+Random(50));
Writeln('Checking Special Move Selection.')
repeat
If FindDTM(SumBut, x, y, 680, 120, 755, 170) Then
begin
repeat
HumanMouse(x, y, 2, 2, False);
Wait(300+Random(100));
If OptionsExist(['S'], false) Then
begin
ChooseOption('S');
Wait(1000+Random(100));
repeat
If FindDTM(SpecMove, x, y, 550, 210, 740, 465) Then
begin
HumanMouse(x, y, 1, 1, True);
Wait(200+Random(100));
repeat
If FindDTM(ConBut, x, y, 550, 210, 740, 465) Then
begin
HumanMouse(x, y, 1, 1, True);
Wait(200+Random(100));
GameTab(25);
Result := true;
end
else
begin
Inc(e);
end;
until(e > 5) or (Result)
end
else
Inc(d);
until(d > 5) or (Result)
end
else
begin
Inc(c);
end;
until(c > 5) or (Result)
end
else
begin
Inc(i);
end;
until(i > 5) or (Result)
If i > 5 Then
begin
Writeln('Could Not Set The Left-Click Setting For Your Familiar To Special Move.');
Logout;
end;
Wait(100+Random(100));
end;

Function ScrollAndSpecialCheck:Boolean; //Returns whether or not you are out of fruitfall scrolls or your familiar's special bar is diminished.
begin
If FindChatBoxText('pecial', 8, 0) Or FindChatBoxText('nough scro', 8, 0) Then
begin
Result := True;
end
else
Result := False;
end;

Function BanksColor(var rx, ry: Integer): Boolean; //Searches for the bank booth color and returns its location if it finds it.
Var
TPA:TPointArray;
ATPA:T2DPointArray;
CTS, i:Integer;
o:TPoint;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.03, 0.56);
FindColorsTolerance(TPA, 6190982, MSX1, MSY1, (MSX2/2)-25, MSY2, 9);
ColorToleranceSpeed(CTS);
SetColorSpeed2Modifiers(0.2, 0.2);
If(Length(TPA) = 0) then
begin
Exit;
end;
SortTPAFrom(TPA, Point(MSCX, MSCY));
ATPA := TPAToATPA(TPA, 15);
for i := 0 to High(ATPA) do
begin
o := MiddleTPA(ATPA[i]);
HumanMMouse(o.x, o.y, 3, 3);
If(WaitUptextMulti(['ank Ban', 'ank boo'], 250+Random(500))) then
begin
Result := True;
GetMousePos(rx, ry);
Exit;
end;
end;
end;

Function PapayaColor(var rx, ry: Integer): Boolean; //Searches for the papaya color and returns its location if it finds it.
Var
TPA:TPointArray;
ATPA:T2DPointArray;
CTS, i:Integer;
o:TPoint;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.58, 2.90);
FindColorsTolerance(TPA, 2268797, 160, 100, 350, 280, 9);
ColorToleranceSpeed(CTS);
SetColorSpeed2Modifiers(0.2, 0.2);
If(Length(TPA) = 0) then
begin
Exit;
end;
SortTPAFrom(TPA, Point(MSCX, MSCY));
ATPA := TPAToATPA(TPA, 15);
for i := 0 to High(ATPA) do
begin
o := MiddleTPA(ATPA[i]);
HumanMMouse(o.x, o.y, 3, 3);
If(WaitUptextMulti(['ke', 'Ta', 'ak', 'Fru', 'it', 'act', 'at'], 2250+Random(250))) then
begin
Result := True;
GetMousePos(rx, ry);
Exit;
end;
end;
end;

Function PineappleColor(var rx, ry: Integer): Boolean; //Searches for the pineapple color and returns its location if it finds it.
Var
TPA:TPointArray;
ATPA:T2DPointArray;
CTS, i:Integer;
o:TPoint;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(1.04, 6.13);
FindColorsTolerance(TPA, 2321176, 160, 100, 350, 280, 2);
ColorToleranceSpeed(CTS);
SetColorSpeed2Modifiers(0.2, 0.2);
If(Length(TPA) = 0) then
begin
Exit;
end;
SortTPAFrom(TPA, Point(MSCX, MSCY));
ATPA := TPAToATPA(TPA, 15);
for i := 0 to High(ATPA) do
begin
o := MiddleTPA(ATPA[i]);
HumanMMouse(o.x, o.y, 3, 3);
If(WaitUptextMulti(['ke', 'Ta', 'ak', 'Fru', 'it', 'act', 'at'], 2250+Random(250))) then
begin
Result := True;
GetMousePos(rx, ry);
Exit;
end;
end;
end;

Function WalkNearBank:Boolean; //Walks to the bank and returns whether or not it was successful.
Var
InsideCheck, x, y:Integer;
aFound:Extended;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
MarkTime(InsideCheck);
repeat
If FindDTMRotated(InsideA, x, y, MMX1, MMY1, MMX2, MMY2, -Pi, Pi, Pi/30, aFound)
or FindDTMRotated(InsideB, x, y, MMX1, MMY1, MMX2, MMY2, -Pi, Pi, Pi/30, aFound)
or FindDTMRotated(InsideC, x, y, MMX1, MMY1, MMX2, MMY2, -Pi, Pi, Pi/30, aFound) Then
begin
Writeln('Found Bank.');
HumanMouse(x, y, 2, 2, True);
Wait(500+Random(100));
repeat
Writeln('Still Walking.');
Wait(100+Random(50));
until(not IsMoving)
Writeln('Stopped Walking.');
Wait(100+Random(50));
Result := True;
Exit;
end;
until(TimeFromMark(InsideCheck) >= 8000)
If TimeFromMark(InsideCheck) >= 8000 Then
begin
Writeln('Could Not Find Bank.');
Logout;
end;
end;

Function WalkOutside:Boolean; //Walks outside the bank to where you will use fruitfall and returns whether or not it was successful.
Var
OutsideCheck, x, y:Integer;
aFound:Extended;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
MarkTime(OutsideCheck);
repeat
If FindDTMRotated(OutsideA, x, y, MMX1, MMY1, MMX2, MMY2, -Pi, Pi, Pi/30, aFound) Then
begin
Writeln('Found Outside Spot.');
HumanMouse(x, y, 2, 2, True);
Wait(500+Random(100));
repeat
Writeln('Still Walking.');
Wait(100+Random(50));
until(not IsMoving)
Writeln('Stopped Walking.');
Wait(100+Random(50));
Result := True;
Exit;
end;
until(TimeFromMark(OutsideCheck) > 8000)
If TimeFromMark(OutsideCheck) > 8000 Then
begin
Writeln('Could Not Find Outside Spot.');
Logout;
end;
end;

Function DepositBoB:Boolean; //Deposits all the items that your bat is holding and returns whether or not it was successful.
Var
i, x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
Writeln('Depositing BoB Items.');
repeat
If FindDTM(DepositBoBItems, x, y, MSX1, MSY1, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Result := True;
end
else
begin
Inc(i);
end;
until(i > 5) or (Result);
If i > 5 Then
begin
Writeln('Could Not Find The Deposit Beast Of Burden Button.');
Logout;
end;
Wait(200+Random(100));
end;

Function DepositInv:Boolean; //Deposits your inventory and returns whether or not it was successful.
Var
i, x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
Writeln('Depositing Inventory.');
repeat
If FindDTM(EmptyInv, x, y, MSX1, MSY1, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Result := True;
end
else
begin
Inc(i);
end;
until(i > 5) or (Result);
If i > 5 Then
begin
Writeln('Could Not Find The Deposit Inventory Button.');
Logout;
end;
Wait(200+Random(100));
end;

Function ClickBank:Boolean; //Clicks on the bank booth or banker and types in your bank pin if necessary and returns whether or not it was successful.
Var
i, x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
Writeln('Trying To Bank.')
If BanksColor(x, y) Then
begin
Case Random(2) Of
0: HumanMouse(x, y, 2, 2, True);
1: begin
HumanMouse(x, y, 2, 2, False);
WaitOption('ank Ban', 500);
end;
end;
end;
repeat
Wait(100+Random(50));
until(Not IsMoving)
Wait(1500+Random(100));
If PinScreen Then
begin
i := 0;
repeat
Writeln('Entering Pin.');
InPin(Players[CurrentPlayer].Pin);
Inc(i);
until (BankScreen) or (i > 5)
If (i > 5) then
begin
Writeln('Bank Pin Failed.');
Exit;
end;
Writeln('Bank Pin Successful.');
Result := True;
end;
WaitFunc(@BankScreen, 25 + Random(25), 1500);
If Not BankScreen Or PinScreen Then
begin
Writeln('Failed To Bank, Trying Again.')
WalkNearBank;
Wait(200+Random(50));
ClickBank;
end
else
begin
Result := True;
end;
Writeln('Banking.');
Wait(500+Random(100));
end;

Function WithdrawScrolls:Boolean; //Withdraws 17 fruitfall scrolls from the bank and returns whether or not it was successful.
Var
i, x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
Writeln('Withdrawing Fruitfall Scrolls.');
repeat
If FindDTM(FfScroll, x, y, MSX1, MSY1+85, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, False);
If OptionsExist(['-17 F'], False) Then
begin
ChooseOption('-17 F');
Result := True;
end
else
begin
ChooseOption('-X');
Wait(1000+Random(100));
TypeSend('17');
Wait(300+Random(100));
If FindChatBoxText('17', 8, 0) Then
WithdrawScrolls;
Result := True;
end;
end
else
begin
Inc(i);
end;
until Result or (i > 5)
If i > 5 Then
begin
Writeln('Could Not Find Fruitfall Scrolls.');
Logout;
end;
Wait(300+Random(100));
end;

Function WithdrawBatPouch:Boolean; //Withdraws bat pouch from the bank and returns whether or not it was successful.
Var
i, x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
repeat
If FindDTM(FbPouch, x, y, MSX1, MSY1+85, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(300+Random(100));
Inc(i);
end;
until(FindDTM(FbPouch, x, y, MIX1, MIY1, MIX2, MIY2)) or (i > 5);
If i > 5 Then
begin
Writeln('Could Not Find Fruit Bat Pouch.');
Logout;
end;
i := 0;
repeat
If FindDTM(BankExit, x, y, 477, 18, 500, 43) Then
HumanMouse(x, y, 2, 2, True);
Wait(300+Random(100));
Inc(i);
until Not BankScreen or (i > 5);
If i > 5 Then
begin
Writeln('Could Not Find Bank Exit Button.');
Logout;
end;
Result := True;
end;

Function RenewBat:Boolean; //Renews or summons new bat and returns whether or not it was successful.
Var
i, x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
repeat
If FindDTM(SumBut, x, y, 680, 120, 755, 170) Then
begin
HumanMouse(x, y, 2, 2, False);
If OptionsExist(['enew'], False) Then
begin
ChooseOption('enew');
Result := True;
end
else
begin
FindDTM(FbPouch, x, y, MIX1, MIY1, MIX2, MIY2);
HumanMouse(x, y, 2, 2, False);
WaitOption('S', 300);
Result := True;
end;
end
else
begin
Inc(i);
end;
until Result or (i > 5)
If i > 5 Then
begin
Writeln('Could Not Renew/Summon Bat.');
Logout;
end;
Wait(300+Random(100));
Inc(PouchesUsed);
end;

Function WithdrawAndRenewBat:Boolean; //Banks, withdraws new bat pouch, and summons or renews your bat and returns whether or not it was successful.
Var
i:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
Writeln('Renewing Bat.');
repeat
If WalkNearBank Then
If ClickBank Then
If WithdrawBatPouch Then
If RenewBat Then
Result := True;
Inc(i);
until Result or (i > 5)
If i > 5 Then
begin
Writeln('Could Not Renew/Summon Bat.');
Logout;
end;
end;

Procedure CheckFeet; //Checks under your feet for more fruit and picks it up. If your inventory becomes full, it will bank and return to pick up the rest of the fruit if there are any left.
Var
c, i, x, y:Integer;
Coords:TPoint;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
If FamVanish Or Not UsingFamiliar Then
begin
WalkNearBank;
ClickBank;
If InvFull Then
begin
If FindDTM(Papaya, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
HumanMouse(x, y, 3, 3, False);
WaitOption('t-A', 1000);
end
else
begin
If ExistsItem(3) Then
begin
Coords := itemCoords(3);
HumanMouse(Coords.x, Coords.y, 3, 3, False);
WaitOption('sit', 1000);
end;
end;
end;
WithdrawBatPouch;
RenewBat;
WalkOutside;
end;
c := InvCount + 1;
If(Not InvFull) Then
begin
HumanMouse(259, 174, 0, 0, False);
If OptionsExist(['ake Pap'], False) Then
begin
ChooseOption('ake Pap');
MarkTime(i);
repeat
Wait(10+Random(15));
until(TimeFromMark(i) > 3000) or (ExistsItem(c));
If ExistsItem(c) Then
begin
Writeln('Picked Up Papaya.');
Inc(Papayas);
end;
CheckFeet;
end
else If OptionsExist(['ake Ora'], False) Then
begin
ChooseOption('ake Ora');
MarkTime(i);
repeat
Wait(10+Random(15));
until(TimeFromMark(i) > 3000) or (ExistsItem(c));
If ExistsItem(c) Then
begin
Writeln('Picked Up Orange.');
Inc(Oranges);
end;
CheckFeet;
end
else If OptionsExist(['ake Ban'], False) Then
begin
ChooseOption('ake Ban');
MarkTime(i);
repeat
Wait(10+Random(15));
until(TimeFromMark(i) > 3000) or (ExistsItem(c));
If ExistsItem(c) Then
begin
Writeln('Picked Up Banana.');
Inc(Bananas);
end;
CheckFeet;
end
else If OptionsExist(['ake Pin'], False) Then
begin
ChooseOption('ake Pin');
MarkTime(i);
repeat
Wait(10+Random(15));
until(TimeFromMark(i) > 3000) or (ExistsItem(c));
If ExistsItem(c) Then
begin
Writeln('Picked Up Pineapple.');
Inc(Pineapples);
end;
CheckFeet;
end
else If OptionsExist(['ake Lem'], False) Then
begin
ChooseOption('ake Lem');
MarkTime(i);
repeat
Wait(10+Random(15));
until(TimeFromMark(i) > 3000) or (ExistsItem(c));
If ExistsItem(c) Then
begin
Writeln('Picked Up Lemon.');
Inc(Lemons);
end;
CheckFeet;
end
else
begin
Writeln('There Is No More Fruit Under You.');
Case Random(8) Of
0: HumanMMouse(90, 90, 10, 10);
1: HumanMMouse(300, 50, 10, 10);
2: HumanMMouse(480, 60, 10, 10);
3: HumanMMouse(450, 220, 10, 10);
4: HumanMMouse(440, 310, 10, 10);
5: HumanMMouse(180, 315, 10, 10);
6: HumanMMouse(60, 240, 10, 10);
7: HumanMMouse(50, 180, 10, 10);
end;
end;
end
else
begin
If PapayaColor(x, y) Or PineappleColor(x, y) Then
begin
Writeln('Inventory Is Full And There Is More Fruit On Ground - Banking Then Returning.');
WalkNearBank;
ClickBank;
DepositInv;
WalkOutside;
end
else
begin
Writeln('Inventory Is Full And There Is No More Fruit On Ground - Banking.');
Exit;
end;
end;
end;

Procedure ClickFruit(var x, y: Integer); //Right-clicks the fruit and chooses the most expensive ones first.
Var
c, i:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
c := InvCount + 1;
HumanMouse(x, y, 0, 0, False);
If OptionsExist(['ake Pap'], False) Then
begin
ChooseOption('ake Pap');
MarkTime(i);
repeat
Wait(10+Random(15));
until(TimeFromMark(i) > 3000) or (ExistsItem(c));
If ExistsItem(c) Then
begin
Writeln('Picked Up Papaya.');
Inc(Papayas);
end;
Wait(500+Random(100));
CheckFeet;
end
else If OptionsExist(['ake Ora'], False) Then
begin
ChooseOption('ake Ora');
MarkTime(i);
repeat
Wait(10+Random(15));
until(TimeFromMark(i) > 3000) or (ExistsItem(c));
If ExistsItem(c) Then
begin
Writeln('Picked Up Orange.');
Inc(Oranges);
end;
Wait(500+Random(100));
CheckFeet;
end
else If OptionsExist(['ake Pin'], False) Then
begin
ChooseOption('ake Pin');
MarkTime(i);
repeat
Wait(10+Random(15));
until(TimeFromMark(i) > 3000) or (ExistsItem(c));
If ExistsItem(c) Then
begin
Writeln('Picked Up Pineapple.');
Inc(Pineapples);
end;
Wait(500+Random(100));
CheckFeet;
end
else If OptionsExist(['ake Lem'], False) Then
begin
ChooseOption('ake Lem');
MarkTime(i);
repeat
Wait(10+Random(15));
until(TimeFromMark(i) > 3000) or (ExistsItem(c));
If ExistsItem(c) Then
begin
Writeln('Picked Up Lemon.');
Inc(Lemons);
end;
Wait(500+Random(100));
CheckFeet;
end
else If OptionsExist(['ake Ban'], False) Then
begin
ChooseOption('ake Ban');
MarkTime(i);
repeat
Wait(10+Random(15));
until(TimeFromMark(i) > 3000) or (ExistsItem(c));
If ExistsItem(c) Then
begin
Writeln('Picked Up Banana.');
Inc(Bananas);
end;
Wait(500+Random(100));
CheckFeet;
end
else If OptionsExist(['ake Lim'], False) Then
begin
ChooseOption('ake Lim');
MarkTime(i);
repeat
Wait(10+Random(15));
until(TimeFromMark(i) > 3000) or (ExistsItem(c));
If ExistsItem(c) Then
begin
Writeln('Picked Up Lime.');
Inc(Limes);
end;
Wait(500+Random(100));
CheckFeet;
end
else
begin
Writeln('Could Not Find Fruit.');
Case Random(8) Of
0: HumanMMouse(90, 90, 10, 10);
1: HumanMMouse(300, 50, 10, 10);
2: HumanMMouse(480, 60, 10, 10);
3: HumanMMouse(450, 220, 10, 10);
4: HumanMMouse(440, 310, 10, 10);
5: HumanMMouse(180, 315, 10, 10);
6: HumanMMouse(60, 240, 10, 10);
7: HumanMMouse(50, 180, 10, 10);
end;
end;
end;

Function WithdrawAndDrinkPot:Boolean; //Withdraws and drinks a summoning potion once at the end of a complete trip, then deposits inventory, and returns whether or not it was successful.
Var
i, ii, x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
Writeln('Withdrawing And Drinking Summoning Potion.');
If FindDTM(Sum1, x, y, MSX1, MSY1+85, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(300+Random(100));
MarkTime(i);
repeat
If FindDTM(BankExit, x, y, 477, 18, 500, 43) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(700+Random(100));
FindDTM(Sum1, x, y, MIX1, MIY1, MIX2, MIY2);
HumanMouse(x, y, 2, 2, True);
Wait(300+Random(100));
ClickBank;
MarkTime(ii);
repeat
If FindDTM(EmptyInv, x, y, MSX1, MSY1, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Result := True;
end;
until Result or (TimeFromMark(ii) > 8000);
end;
until Result or (TimeFromMark(i) > 8000);
If TimeFromMark(i) > 8000 Then
begin
Writeln('Problem Withdrawing, Drinking, And/Or Depositing Summoning Potion.');
Logout;
end;
end
else If FindDTM(Sum2, x, y, MSX1, MSY1+85, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(300+Random(100));
MarkTime(i);
repeat
If FindDTM(BankExit, x, y, 477, 18, 500, 43) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(700+Random(100));
FindDTM(Sum2, x, y, MIX1, MIY1, MIX2, MIY2);
HumanMouse(x, y, 2, 2, True);
Wait(300+Random(100));
ClickBank;
MarkTime(ii);
repeat
If FindDTM(EmptyInv, x, y, MSX1, MSY1, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Result := True;
end;
until Result or (TimeFromMark(ii) > 8000);
end;
until Result or (TimeFromMark(i) > 8000);
If TimeFromMark(i) > 8000 Then
begin
Writeln('Problem Withdrawing, Drinking, And/Or Depositing Summoning Potion.');
Logout;
end;
end
else If FindDTM(Sum3, x, y, MSX1, MSY1+85, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(300+Random(100));
MarkTime(i);
repeat
If FindDTM(BankExit, x, y, 477, 18, 500, 43) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(700+Random(100));
FindDTM(Sum3, x, y, MIX1, MIY1, MIX2, MIY2);
HumanMouse(x, y, 2, 2, True);
Wait(300+Random(100));
ClickBank;
MarkTime(ii);
repeat
If FindDTM(EmptyInv, x, y, MSX1, MSY1, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Result := True;
end;
until Result or (TimeFromMark(ii) > 8000);
end;
until Result or (TimeFromMark(i) > 8000);
If TimeFromMark(i) > 8000 Then
begin
Writeln('Problem Withdrawing, Drinking, And/Or Depositing Summoning Potion.');
Logout;
end;
end
else If FindDTM(Sum4, x, y, MSX1, MSY1+85, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(300+Random(100));
MarkTime(i);
repeat
If FindDTM(BankExit, x, y, 477, 18, 500, 43) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(700+Random(100));
FindDTM(Sum4, x, y, MIX1, MIY1, MIX2, MIY2);
HumanMouse(x, y, 2, 2, True);
Wait(300+Random(100));
ClickBank;
MarkTime(ii);
repeat
If FindDTM(EmptyInv, x, y, MSX1, MSY1, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Result := True;
end;
until Result or (TimeFromMark(ii) > 8000);
end;
until Result or (TimeFromMark(i) > 8000);
If TimeFromMark(i) > 8000 Then
begin
Writeln('Problem Withdrawing, Drinking, And/Or Depositing Summoning Potion.');
Logout;
end;
end
else
begin
Writeln('Could Not Find Summoning Potion.');
Logout;
end;
Wait(100+Random(100));
end;

Function WithdrawPotForOutside:Boolean; //Withdraws a summoning potion(2), (3), or (4) or it withdraws 2 summoning potion(1)s to drink outside and returns whether or not it was successful.
Var
x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
Writeln('Withdrawing Summoning Potion For Use Outside.');
If FindDTM(Sum2, x, y, MSX1, MSY1+85, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
end
else If FindDTM(Sum3, x, y, MSX1, MSY1+85, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
end
else If FindDTM(Sum4, x, y, MSX1, MSY1+85, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
end
else If FindDTM(Sum1, x, y, MSX1, MSY1+85, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(400+Random(100));
If FindDTM(Sum1, x, y, MSX1, MSY1+85, MSX2, MSY2) Then
begin
HumanMouse(x, y, 2, 2, True);
end
else
begin
FindDTM(Sum1, x, y, MIX1, MIY1, MIX2, MIY2);
HumanMouse(x, y, 2, 2, True);
Writeln('Only Have 1 Summoning Potion(1) Left.');
Logout;
end;
end
else
begin
Writeln('Could Not Find Summoning Potion.');
Logout;
end;
Result := True;
Wait(200+Random(100));
end;

Function DrinkPotInInv:Boolean; //Drinks 2 doses of your summoning potion(s) and returns whether or not it was successful.
Var
x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
Writeln('Drinking Summoning Potion.');
If FindDTM(Sum2, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(1000+Random(100));
HumanMouse(x, y, 2, 2, True);
end
else If FindDTM(Sum3, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(1000+Random(100));
HumanMouse(x, y, 2, 2, True);
end
else If FindDTM(Sum4, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(1000+Random(100));
HumanMouse(x, y, 2, 2, True);
end
else If FindDTM(Sum1, x, y, MIX1, MIY1, MIX2, MIY2) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(1000+Random(100));
FindDTM(Sum1, x, y, MIX1, MIY1, MIX2, MIY2);
HumanMouse(x, y, 2, 2, True);
end
else
begin
Writeln('Could Not Find The Summoning Potion That You Just Withdrew. WTF?!');
Logout;
end;
Result := True;
Wait(500+Random(100));
end;

Function FruitFall:Boolean; //Casts fruitfall and returns whether or not it was successful.
Var
i, x, y:integer;
b:TBox;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
repeat
If FindDTM(SumBut, x, y, 680, 120, 755, 170) Then
begin
HumanMouse(x, y, 2, 2, True);
Wait(125+Random(75));
Result := True;
end;
until Result;
If GetInvItemBounds(1, b) Then
begin
i := GetAmountBox(b);
If i < 17 Then
begin
Writeln('Fruitfall #'+IntToStr(17-i));
end;
end;
end;

Procedure PickUpFruit; //Picks up fruit on ground and banks/returns to pick up more fruit if your inventory becomes full.
Var
x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
If InvFull Then
begin
If PapayaColor(x, y) Or PineappleColor(x, y) Then
begin
Writeln('Inventory Is Full.');
WalkNearBank;
ClickBank;
DepositInv;
WalkOutside;
PickUpFruit;
end
else
begin
Exit;
end;
end
else If FamVanish Or Not UsingFamiliar Then
begin
WithdrawBatPouch;
RenewBat;
WalkOutside;
end
else
begin
Writeln('Searching For Fruit.');
If(Not InvFull) Then
begin
If PapayaColor(x, y) Then
begin
Writeln('Found Fruit.');
ClickFruit(x, y);
PickUpFruit;
end
else If PineappleColor(x, y) Then
begin
Writeln('Found Pineapple.');
ClickFruit(x, y);
PickUpFruit;
end
else
begin
Writeln('No Fruit Left.');
Exit;
end;
end;
end;
end;

Procedure FruitfallPickUpLoop; //Entire loop for fruitfalling, etc. while outside.
Var
x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
repeat
If FamVanish Or Not UsingFamiliar Then
begin
WithdrawAndRenewBat;
WalkOutside;
end;
FruitFall;
until(ScrollAndSpecialCheck or not ExistsItemDTM(FfScroll, x, y))
Wait(500+Random(100));
If Not DrinkPotInInv Then
Logout;
repeat
If FamVanish Or Not UsingFamiliar Then
begin
If WithdrawAndRenewBat Then
WalkOutside;
end;
FruitFall;
until(not ExistsItemDTM(FfScroll, x, y))
Wait(1000+Random(100));
PickUpFruit;
end;

Function InitialLoop:Boolean; //Runs initial loop/setup before starting the progress report and fruitfalling and returns whether or not it was successful.
Var
i, x, y:Integer;
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
If Not FileExists(ProgressReports) Then
begin
Writeln('Your ProgressReports File Path Is Incorrect Or It Does Not Exist.');
Logout;
end;
If Not SetChat('off', 2) Then
SetChat('off', 2);
ClickNorth(SRL_ANGLE_HIGH);
If Not UsingFamiliar Then
WithdrawAndRenewBat;
If Not FindSymbol(x, y, 'quest') or Not FindSymbol(x, y, 'short cut') or Not FindSymbol(x, y, 'kebab shop') Then
WalkNearBank;
If SpecialMoveCheck Then
begin
MarkTime(i);
repeat
If ClickBank Then
If DepositInv Then
Result := True;
until Result or (TimeFromMark(i) >= 15000);
end;
If TimeFromMark(i) >= 15000 Then
begin
Writeln('Could Not Setup Initial Loop.');
Logout;
end;
Writeln('Successfully Setup Initial Loop.');
MarkTime(TT);
end;

Procedure MainLoop; //Main loop which runs over and over. (Brain of the script)
begin
If Not LoggedIn Then Exit;
If FindNormalRandoms Then Begin Inc(Randoms); Exit; End;
If FamVanish Or Not UsingFamiliar Then
begin
WithdrawBatPouch;
RenewBat;
ClickBank;
end;
WithdrawScrolls;
WithdrawPotForOutside;
WalkOutside;
If FamVanish Or Not UsingFamiliar Then
begin
WithdrawBatPouch;
RenewBat;
ClickBank;
end;
Antiban;
FruitfallPickUpLoop;
WalkNearBank;
ClickBank;
DepositBoB;
DepositInv;
If FamVanish Or Not UsingFamiliar Then
begin
WithdrawBatPouch;
RenewBat;
ClickBank;
end;
WithdrawAndDrinkPot;
Inc(Trips);
end;

Procedure Progress; //Displays progress report after every trip, and writes your progress report to a file every 5 minutes.
Var
i, Proggies:Integer;
begin
If(i >= 5) Then
begin
ClearDebug;
i := 0;
end;
Inc(i);
Writeln('Trip '+IntToStr(Trips)+' Complete.');
ScrollsUsed := Trips*15;
SumPotsUsed := Trips*3;
BoB := Trips;
TotalFruits := Papayas+Pineapples+Bananas+Lemons+Limes+Oranges;
Profit := ((Papayas*PapPrice)+(Oranges*OraPrice)+(Pineapples*PinPrice)+(BoBPrice * BoB)+
(Bananas*BanPrice)+(Lemons*LemPrice)+(Limes*LimPrice)-
(ScrollsUsed*ScrollPrice)-(SumPotsUsed*SumPotPrice)-(PouchesUsed*FBPouchPrice));
FinalProfit := (Profit*60/((GetTimeRunning/60000)+1));
Writeln(' '+TheDate(1)+' ');
Writeln('====================================================');
Writeln('===== Spiker Fruitfaller V'+Version+' by Spiker =====');
Writeln('====================================================');
Writeln('= Time Running: '+TimeRunning+' =');
Writeln('===== Total Trips: '+IntToStr(Trips)+' =====');
Writeln('===== Antibans: '+IntToStr(AntibanCount)+' =====');
Writeln('===== Random Events: '+IntToStr(Randoms)+' =====');
Writeln('===== Total Fruits Gathered: '+IntToStr(TotalFruits)+' =====');
Writeln('===== Total Papaya Gathered: '+IntToStr(Papayas)+' =====');
Writeln('===== Profit Made: '+IntToStr(Profit)+'gp =====');
Writeln('===== Profit/Hour: '+IntToStr(FinalProfit)+'gp =====');
Writeln('====================================================');
If TimeFromMark(TT) >= 300000 Then
begin
StatsCommit;
AppendFile(ProgressReports);
WriteFileString(Proggies, TheDate(1));
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '====================================================');
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '===== Spiker Fruitfaller V'+Version+' by Spiker =====');
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '====================================================');
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '= Time Running: '+TimeRunning+' =');
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '===== Total Trips: '+IntToStr(Trips)+' =====');
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '===== Antibans: '+IntToStr(AntibanCount)+' =====');
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '===== Random Events: '+IntToStr(Randoms)+' =====');
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '===== Total Fruits Gathered: '+IntToStr(TotalFruits)+' =====');
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '===== Total Papaya Gathered: '+IntToStr(Papayas)+' =====');
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '===== Profit Made: '+IntToStr(Profit)+'gp =====');
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '===== Profit/Hour: '+IntToStr(FinalProfit)+'gp =====');
WriteFileString(Proggies, #13);
WriteFileString(Proggies, '====================================================');
WriteFileString(Proggies, #10#13);
CloseFile(Proggies);
end;
end;

begin; //Main method, runs entire script (with multiple users).
repeat
Setup;
InitialLoop;
repeat
MainLoop;
Progress;
until (Not LoggedIn)
FreeDTMs;
NextPlayer(Players[CurrentPlayer].Active);
until False;
end.

Thanks to anyone who reviews my application. I spent many weeks on my script. Went through many RS updates in the process. Cheers

'Toxin

2012-03-09 09:30:41

Minimal use of TPA's, functions that aren't yours, high use of DTM's… sorry but that's a no for me. Script may run well, and you have have spent 'weeks' on the script I do not doubt that one bit or your capabilities, but it's no where near enough from my perspective, may be from others.

Sorry.

Jagex_Fagex

2012-03-10 00:36:54

Sorry, you only joined in January and have minimal activity. Being an SRL member is about being a part of the community, not just being able to script. For further information, please see here: http://villavu.com/forum/showthread.php?t=74195

nielsie95

2012-03-24 06:27:48

Looks like you're not getting in this time.
You may try again in two weeks, keep it up!