mounty
2012-11-23 11:23:05
How Long have You Played Runescape?
5 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
Bit of C,C++, Pascal (Simba)
Are you a member of any other communities?
No
Tell us about yourself…
Please show us one (or multiple) of your scripts.
5 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
Bit of C,C++, Pascal (Simba)
Are you a member of any other communities?
No
Tell us about yourself…
From: mounty
I'm a 21 year old guy from the UK. Currently at uni studying engineering. Interested in sports, play some guitar and most things computing (even built my own pc last year :)). Started playing RS at school for a few years. Came back to it a couple times over the past few years but mainly using bots. Was initially a member here in 2008 and tried to script but wasnt very good so ended up paying for a couple scripts off another site, sorry. I've tried scripting again and have found it much easier and enjoyable (due to learning the basics of other languages i think). Would love to be a full member and continue learning from you all and writing many more scripts. Cheers
Please show us one (or multiple) of your scripts.
program AlkaCook v1.3 Pre-Release;
{$DEFINE SMART}
{$i srl/srl.simba}
var TFish,TSpaces,BSpaces,GSpaces,CSpaces,XPSpaces: String;
FishDTM,BFishDTM,CFishDTM,RunCount,FishCooked,FishBurnt,XPGained,Startlvl,StartXP,XPPer: integer;
CurrentXP, CurrentLvl,LvlsGained: Extended;
FishinBank,TeleStart,Lost: Boolean;
//////////Setup\\\\\\\\\\
Procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name :=''; //Enter Username here
Players[0].Pass :=''; //Enter Password here
Players[0].Nick :=''; //Enter a couple letters of your name
Players[0].Active :=True;
TFish:=('Lobster'); //Enter Type of fish to Cook (supports 'Trout', 'Salmon','Tuna' and 'Lobster' for now)
TeleStart := False ; //Set True to start by teleporting to Al Kharid or False if starting in sight of Al Kharid bank.
end;
//////////DO NOT EDIT ANYTHIG BELOW\\\\\\\\\\
Procedure ResetCompass;
var CompAng: Extended;
begin
CompAng:=rs_GetCompassAngleDegrees;
if not (CompAng = 0) then
begin
MakeCompass(0.0);
wait(100+random(500));
KeyDown(VK_UP);
Wait(950 + Random(100));
KeyUp(VK_UP);
Writeln('Compass Reset to North.');
end;
end;
Procedure TeleportStart;
var x,y,MagicSectionDTM1,MagicSectionDTM2,HomeTeleDTM,AKTeleDTM,WalkDTM1,WalkDTM2: integer;
begin
MagicSectionDTM1 := DTMFromString('mbQAAAHicY2VgYLjDxsBwC4gvA/EjNgh/FSMDwwYg3gjES4F4JxCrujYwLO2xYZBwns8gLiHBICwszMAP1I+OGbFgMAAAnxEL+g==');
MagicSectionDTM2 := DTMFromString('mggAAAHicY2NgYLjNxsBwA4rvQ/FzIL7MyMBwHYjPQTGIfQ+Ibz18x7B2z0uGb99/gjGILSQkxMAPNAsbZsSBIQAA3KQYCw==');
HomeTeleDTM := DTMFromString('mwQAAAHic42RgYGhmY2Coh+I2KO4H4h4gLgTiEiD+y8jAwMjEwPCDEYJBbDYg/gBkvwVibiD71sN3DGv3vGT49v0nGIPYDpb6YOxkZcDgam/EwA+0jxBmJALDAQCGRRoS');
AKTeleDTM := DTMFromString('mlwAAAHicY2dgYFjPysCwCIiXAPEWIN4KZS8E4nWMDAxrgHgpFG8G4m1AvAGIt/TaM+wSF2YQWdvJIJjqyGDJzsrAb67HcLLHhoEfaC4uzIgHQwEArbEQsQ==');
WalkDTM1 := DTMFromString('mWAAAAHicY2FgYDjMwsCwB4g1WCFYlYmBwRqIrYDYF4jnd+YwdAaqwTE/UA8yZkTDIAAArAkHqQ==');
WalkDTM2 := DTMFromString('mWAAAAHicY2FgYJjDxsCwFog3QrEjEwODCxBrAbEUEM/vzGHoDFRjKPXQAtP8QD3ImBENgwAA4hQIVA==');
if (TeleStart=true) then
begin
Gametab(tab_magic);
wait(100+random(700));
if FindDTM(MagicSectionDTM1,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
Mouse(x,y,5,5,True);
wait(200+random(300));
if FindDTM(MagicSectionDTM2,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
Mouse(x,y,5,5,True);
Wait(200+random(300));
if FindDTM(HomeTeleDTM,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
Mouse(x,y,5,5,True);
Wait(1000+Random(2000));
If FindDTM(AKTeleDTM,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Mouse(x,y,5,5,True);
Wait(18000+random(5000));
if FindDTM(WalkDTM1,x,y,MMX1,MMY1,MMX2,MMY2) then
begin
Mouse(x,y,3,3,True);
wait(1000);
Flag;
wait(3000);
if FindDTM(WalkDTM2,x,y,MMX1,MMY1,MMX2,MMY2) then
begin
Mouse(x,y,3,3,True);
wait(1000);
Flag;
end;
end;
end;
end;
end;
end;
GameTab(tab_inv);
end;
MakeCompass('N');
wait(100+random(500));
KeyDown(VK_UP);
Wait(950 + Random(100));
KeyUp(VK_UP);
Writeln('Compass Reset to North.');
FreedTM(MagicSectionDTM1);
FreedTM(MagicSectionDTM2);
FreedTM(HomeTeleDTM);
FreedTM(AKTeleDTM);
FreedTM(WalkDTM1);
FreedTM(WalkDTM2);
end;
Procedure FishSetup;
begin
MakeCompass('N');
Runcount :=0
KeyDown(VK_UP);
Wait(950 + Random(100));
KeyUp(VK_UP);
SetRun(true);
ExitSquealOfFortune();
StartLvl := GetSkillInfo(7, false);
StartXp := GetXp(7);
wait(200+random(800));
Gametab(tab_inv);
FishinBank := True;
Lost:=False;
case TFish of
'Trout':
begin
FishDTM := DTMFromString('mrAAAAHic42BgYJgKxHOAeCYQTwbiLiDuBOI+IF4AxM+g+BUQvwPiD0D8GoifAvFDIO5pawOSTDgxP5DEhxkJYBgAAAnvDhI=');
BFishDTM := DTMFromString('mrAAAAHic42BgYOABYnEgZmWAAEYg5gJiASAWRhJngYrzAzEvEHNC5VwdHYEkE07MD9WDCzMSwDAAAMbNAfE=');
CFishDTM := DTMFromString('mrAAAAHic42BgYOABYnEgZmWAAEYg5gJiASAWRhJngYrzAzEvEHNC5XIjw4EkE07MD9WDCzMSwDAAAOl5Akc=');
TSpaces := ' ';
XPPer := 70;
end;
'Salmon':
begin
FishDTM := DTMFromString('mlwAAAHicY2dgYOABYnEGCGAEYi4gFgBiYSBmhYqDxPiBmBeIOaHijYEeQJIJKxaBqseGGfFgKAAAxFICLQ==');
BFishDTM := DTMFromString('mrAAAAHic42BgYOABYnEgZmWAAEYg5gJiASAWRhJngYrzAzEvEHNC5VwdHYEkE07MD9WDCzMSwDAAAMbNAfE=');
CFishDTM := DTMFromString('mlwAAAHicY2dgYOABYmEgFgBiLiBmZIAAcSBmhWJOIOYFYn6oGhDYaCkFJJmwYhGoWmyYEQ+GAgC92AIX');TSpaces := ' ';
XPPer := 90;
end;
'Lobster':
begin
FishDTM := DTMFromString('mrAAAAHic42BgYPBiZGBwBGIXIHYHYj8gDgRiGyC2AuJJQDwdiGcD8UIgXgDEM4C4H4hnAnGCuSzQFCY45uXlReHzA0l8mJEAhgEAGUgIcA==');
BFishDTM := DTMFromString('mrAAAAHic42BgYBAAYnYg5gJiXiAWAWJxIGZigABmIOYAYh4gFgJiQSDmhMqB9Hi4ukBVQzAvLy8Knx9I4sOMBDAMAADjmAI1');
CFishDTM := DTMFromString('mrAAAAHic42BgYBBggAAmIBYHYhEg5gViLiBmB2JmKBsEOIFYEIiFgJgHiDmAeGWIBFQ3BPPy8qLw+YEkPsxIAMMAAP3RAnk=');
TSpaces := ' ';
XPPer := 120;
end;
'Tuna':
begin
FishDTM := DTMFromString('mrAAAAHic42BgYDjPyMCwD4iPAvE5IL4MxAeB+BYQHwPiGUA8D4gXAvF8IJ4JxNOgeC6IP3ky0BQmrJiXl5eBH8jChxkJYBgAAAu1Dbc=');
BFishDTM := DTMFromString('mrAAAAHic42BgYDjPyMCwD4iPAvE5IL4MxAeB+BYQHwPiGUA8D4gXAvF8IJ4JxNOgeC4QW5iZAU1hwop5eXkZ+IEsfJiRAIYBAJnFDJw=');
CFishDTM := DTMFromString('mrAAAAHic42BgYDjPyMCwD4iPAvE5IL4MxAeB+BYQHwPiGUA8D4gXAvF8IJ4JxNOgeC4Qp0dHAk1hwop5eXkZ+IEsfJiRAIYBAMmyDRM=');
TSpaces := ' ';
XPPer := 100;
end;
end;
end;
//////////Report\\\\\\\\\\
Procedure ReportPro;
var
NSpaces: string;
begin
case FishCooked of
0..9: NSpaces := ' ';
10..99: NSpaces := ' ';
100..999: NSpaces := ' ';
1000..9999: NSpaces := ' ';
10000..99999: NSpaces := ' ';
100000..999999: NSpaces := ' ';
end;
case FishBurnt of
0..9: BSpaces := ' ';
10..99: BSpaces := ' ';
100..999: BSpaces := ' ';
1000..9999: BSpaces := ' ';
10000..99999: BSpaces := ' ';
100000..999999: BSpaces := ' ';
end;
case XPGained of
0..9: XPSpaces := ' ';
10..99: XPSpaces := ' ';
100..999: XPSpaces := ' ';
1000..9999: XPSpaces := ' ';
10000..99999: XPSpaces := ' ';
1000000..9999999: XPSpaces := ' ';
10000000..99999999: XPSpaces := ' ';
100000000..999999999: XPSpaces := ' ';
1000000000..9999999999: XPSpaces := ' ';
10000000000..99999999999: XPSpaces := ' ';
100000000000..999999999999: XPSpaces := '';
end;
case LvlsGained of
0..9: GSpaces := ' ';
10..99: GSpaces := ' ';
end;
case CurrentLvl of
0..9: CSpaces := ' ';
10..99: CSpaces := ' ';
end;
///WriteReport\\\
writeln('/////////////\\\\\\\\\\\\\');
Writeln('// AlkaCookv1.0 \\');
Writeln('// \\');
Writeln('//Time Running: ' + TimeRunning + ' \\');
Writeln('//Fish Type: ' + TFish + Tspaces + '\\');
Writeln('//Number Cooked: ' + inttostr(FishCooked) + Nspaces + '\\');
Writeln('//Number Burnt: ' + inttostr(FishBurnt) + Bspaces + ' \\');
Writeln('//XP Gained: ' + inttostr(XPGained) + XPSpaces + '\\');
Writeln('//Levels Gained: ' + floattostr(lvlsGained) + GSpaces + '\\');
Writeln('//Current Level: ' + floattostr(CurrentLvl) + CSpaces + '\\');
writeln('/////////////\\\\\\\\\\\\\');
end;
//////////Antibans\\\\\\\\\\
procedure MMRandom(WaitPer, TimeOut:integer);
var
x, y, fx, fy, t, w, h:integer;
begin
MouseSpeed := RandomRange(5, 15);
MarkTime(t);
GetMousePos(x, y);
GetClientDimensions(w, h);
repeat
fx := x + randomrange(0, w-x);
fy := y + randomrange(0, h-y);
wait(WaitPer);
MMouse(fx, fy, 5, 5);
until (TimeFromMark(t) >= TimeOut);
end;
Procedure OffMM(Dir, TimeOut: Integer);
Var
w, h, rx, ry: Integer;
Begin
GetClientDimensions(w, h);
rx := RandomRange(0, w);
ry := RandomRange(0, h+50);
Case (Dir) Of
0..1: MMouse(w, RandomRange(-10,-50), rx, 0);
2: MMouse(w, h+RandomRange(10,50), rx, 0);
3: MMouse(RandomRange(-10,-50), h, 0, ry);
4: MMouse(w+RandomRange(10,50), h, 0, ry);
End;
Wait(TimeOut);
End;
procedure AntiBan;
var x,y,CookxpDTM: integer;
begin
if(not(LoggedIn))then
Exit;
case Random(48) of
0:
begin
wait(random(3000));
{HoverSkill('Cooking', false);
wait(4453+Random(3302));
gametab(tab_Inv); }
end;
1: PickUpMouse;
2:
begin
offMM(random(4),3000+random(2500));
end;
3:
begin
MakeCompass('N');
end;
4:
begin
MMRandom(1000+random(1000), 2000+random(1000));
end;
5:
begin
keydown(VK_down);
wait(300+random(900));
keyup(VK_Down);
Wait(500+random(2000));
keydown(VK_UP);
wait(randomrange(1300, 1750));
keyup(VK_UP);
end;
6:
begin
CookxpDTM := DTMFromString('mggAAAHicY2NgYHBlZWCwBWJ3ILYBYk8gdgHiC0C5y0B8FYjvQ/ELIP4Vocnw0ZSPob44jaEsxZ+hLiuY4fstRgZ+oBw2zIgDQwAA1IoPcg==');
if FindDTM(CookxpDTM,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
MMouse(x,y,15,15);
wait(2000+random(3000));
MMRandom(1000+random(1000), 2000+random(1000));
end;
FreedTM(CookxpDTM);
end;
end;
end;
//////////Walking\\\\\\\\\\
Procedure WalktoBank;
var w,x,y,BankDTM1,BankDTM2: integer;
begin
BankDTM1 := DTMFromString('mQwAAAHicY2ZgYLjCxMBwDYgvA7EuIwODJhBrAPGng9pwzA9UB8OMSBgIAHH/CNI=');
BankDTM2 := DTMFromString('mWAAAAHicY2FgYOBmhmB+IGYH4lOMDAzHgfg0FH86qA3GCxYsYDhw4AADP1APMmZEwyAAAD9sC4Q=');
if not (loggedin) then exit;
ResetCompass;
if not RunEnergy(40) then
begin
restuntil(100)
writeln('rested')
end;
setrun(true);
if FindDTM(BankDTM1,x,y,MMX1,MMY1,MMX2,MMY2) then
Begin
Mouse(x,y,4,4,True);
Writeln('On the way to the bank')
end else
begin
Writeln('Couldnt find BankDTM1. Trying BankDTM2.');
if FindDTM(BankDTM2,x,y,MMX1,MMY1,MMX2,MMY2) then
Begin
Mouse(x,y,4,4,True);
Writeln('On the way to the bank')
end else
begin
if w<6 then
begin
ResetCompass;
inc(w);
WalktoBank;
end else Lost:=True;
end;
w:=0
end;
Wait(3000+(random(200)));
flagEx(8,false);
Wait(1400+(random(200)));
writeln('At Bank');
FreeDTM(BankDTM1);
FreeDTM(BankDTM2);
end;
Procedure WalktoKShop;
var x,y,KShopDTM1,KShopDTM2: integer;
begin
KShopDTM1 := DTMFromString('mbQAAAHicY2VgYDjGxMBwhglCHwTiA0B8Gih+AiQHxKeA+CwQr/ZVBZKMKJgfSKJjRiwYDAD+3wlK');
KShopDTM2 := DTMFromString('mWAAAAHicY2FgYDjMxMBwgglCHwDiyUCxKUA8jQHC5u7kYFjeEcEwMcEWzOYHiiFjRjQMAgA7PgmY');
if not (loggedin) then exit;
if (Lost = True) then exit;
if not RunEnergy(40) then
begin
restuntil(100)
writeln('rested')
end;
ResetCompass;
if FindDTM(KShopDTM1,x,y,MMX1,MMY1,MMX2,MMY2) then
Begin
Mouse(x,y,4,4,True);
Writeln('On the way to the Kebab Shop');
end else
begin
Writeln('Couldnt find KShopDTM1. Trying KShopDTM2.');
if FindDTM(KShopDTM2,x,y,MMX1,MMY1,MMX2,MMY2) then
Begin
Mouse(x,y,4,4,True);
Writeln('On the way to the Kebab Shop')
end else
begin
Writeln('Couldnt find KShopDTM2. Reverting to failsafe');
ResetCompass;
wait(1000+random(1000));
WalktoKShop;
end;
end;
Wait(4000+(random(200)));
Flag;
wait(1000+random(400));
FreeDTM(KShopDTM1);
FreeDTM(KShopDTM2);
end;
//////////Banking\\\\\\\\\\
Procedure LoadCount;
var Bload,Cload: integer;
begin
Cload := CountItems('DTM', CFishDTM, [])
Bload := CountItems('DTM', BFishDTM, [])
incEx(FishCooked,Cload);
IncEx(FishBurnt,Bload);
end;
procedure LevelCalc;
var Q: Extended;
begin
XPGained := XPPer*FishCooked;
CurrentXP := StartXP + XPGained;
Q := ((0.104089/75)*CurrentXP)-1;
CurrentLvl := floor(7*(logn(2,Q)));
LvlsGained := Floor(Currentlvl - StartLvl);
end;
procedure BankActions;
var x,y:integer;
begin
wait(500+random(200));
if bankscreen then
begin
Writeln('Bank screen open.');
Wait(500+random(400));
DepositAll;
if FindDTM(FishDTM,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Writeln('found FishDTM');
Mouse(x,y,7,7,false);
wait(200+random(200));
ChooseOption('ll');
end else
begin
Writeln('No fish in bank. Logging out.')
FishinBank:=False;
logout;
end;
end else
begin
writeln('No bank screen');
end;
LevelCalc;
ReportPro;
end;
Procedure BankPro;
var x,y,BankerDTM,BankDTM: integer;
begin
BankerDTM := DTMFromString('mWAAAAHicY2FgYOACYlYGCBACYl4gFgNiTiBmB+KNKzcyyDprMVSXmDGUF5owSALFkDEjGgYBAAK0BZc=');
BankDTM := DTMFromString('mggAAAHicY2NgYLBnZGDwBmIjIHYAYl0gDgJiDSBWAmIFIBYGYh0g1gbiS6t7GIw1lRiczXTAdG5cMBiLAM3ChhlxYAgAAKa/CMY=');
if not (loggedin) then exit;
wait(700+random(500));
if FindDTM(BankerDTM,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Mouse(x,y,5,7,false);
wait(100+random(400));
ChooseOption('ank Ban');
wait(500+random(300));
BankActions;
end else
begin
if FindDTM(BankDTM,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Mouse(x,y,5,7,false);
wait(100+random(400));
ChooseOption('ank Ban');
wait(500+random(300));
BankActions;
end else
begin
Writeln('couldnt open bank. Trying BankNPC');
if OpenBankNPC then
begin
BankActions;
end else
begin
writeln('Couldnt find bank.');
WalktoBank;
wait(500+random(2000));
BankPro;
end;
end;
end;
FreedTM(BankerDTM);
end;
//////////Cooking\\\\\\\\\\
Procedure SelectCookOptions;
var x,y,CookDTM,StopCookDTM: integer;
begin
CookDTM := DTMFromString('mrAAAAHic42BgYJBgYmDghmIOIOYCYj4gNgBiQyBWAWJFIJYFYmUgVgdiNSBWgLI5SxYwqCvx48QiQDvwYUYCGAYAbFoGHg==');
StopCookDTM := DTMFromString('mwQAAAHic42RgYFjLyMAwB4hnAfF8IN4OxHuB+CQQn4PSU4F4EhBPB+IZQDwTiPuh7NlAPAGIT7OyMqgr8ePFIkD7CGFGIjAcAADC+BAF');
if FindDTM(CookDTM,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Writeln('Cook Menu is up.');
Mouse(x,y,50,20,true);
wait(1000+random(700));
while FindDTM(StopCookDTM,x,y,MSX1,MSY1,MSX2,MSY2) do
begin
wait(1000+random(1000));
antiban;
end;
end else
begin
writeln('couldnt find cook menu. waiting');
wait(2000+random(700));
if FindDTM(CookDTM,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Writeln('Cook Menu is up.');
Mouse(x,y,50,20,true);
wait(1000+random(700));
while FindDTM(StopCookDTM,x,y,MSX1,MSY1,MSX2,MSY2) do
begin
wait(1000+random(3000));
antiban;
end;
end else
begin
writeln('Couldnt find cook menu on second attempt');
wait(5000+random(700));
if FindDTM(CookDTM,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Writeln('Cook Menu is up.');
Mouse(x,y,50,20,true);
wait(1000+random(700));
while FindDTM(StopCookDTM,x,y,MSX1,MSY1,MSX2,MSY2) do
begin
wait(1000+random(4000));
antiban;
end;
end else
begin
writeln('Couldnt find cook menu on third attempt');
wait(3000+random(2000));
if FindDTM(CookDTM,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Writeln('Cook Menu is up.');
Mouse(x,y,50,20,true);
wait(1000+random(700));
while FindDTM(StopCookDTM,x,y,MSX1,MSY1,MSX2,MSY2) do
begin
wait(1000+random(4000));
antiban;
end;
end else
begin
Writeln('No Cook Menu. Trying again.');
end;
end;
end;
end;
FreeDTM(CookDTM);
FreeDTM(StopCookDTM);
end;
Procedure CookFish;
var x,y,RangeDTM1,RangeDTM2,RangeDTM3,RangeDTM4: integer;
begin
RangeDTM1 := DTMFromString('mbQAAAHicY2VgYJjDyMCwC4i3AvEqIF4ExJlAnADEHkCcDOXv2bCYYfe6hQxxEYEMrk5ODBXGqgz8QP3IWASIGbFgMAAAbVIMUg==');
RangeDTM2 := DTMFromString('mQwAAAHicY2ZgYLgFxJeA+BgQ/wfiv0D8G4jNTU0ZTkc5Muxav5BBBMiHYUYkDAQAp+IJvQ==');
RangeDTM3 := DTMFromString('mQwAAAHicY2ZgYDjIysBwE4jPATErEwMDExCzA/HudQsZrC0sGF6meDCIANXBMCMSBgIAL84HGA==');
RangeDTM4 := DTMFromString('mWAAAAHicY2FgYJjGyMAwD4g3AfE2IG4D4h4grofS21bNZXiW7A6mQZgfqAcZcwExIxIGAQCsWQyW');
if not (loggedin) then exit;
if (Lost=True) then exit;
ResetCompass;
wait(500+random(500));
if FindDTM(FishDTM,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
Mouse(x,y,7,7,true);
wait(300+random(200));
if FindDTM(RangeDTM1,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Writeln('Found Range.');
Mouse(x,y,10,10,false);
ChooseOption('> Range');
wait(800+random(500));
SelectCookOptions;
If FindDTM(FishDTM,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
Cookfish;
end;
end else
begin
Writeln('couldnt find RangeDTM1. Trying Range DTM2');
if FindDTM(RangeDTM2,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Writeln('Found Range.');
Mouse(x,y,10,10,false);
ChooseOption('> Range');
wait(800+random(500));
SelectCookOptions;
If FindDTM(FishDTM,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
Cookfish;
end;
end else
begin
Writeln('couldnt find RangeDTM2. Trying Range DTM3');
if FindDTM(RangeDTM3,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Writeln('Found Range.');
Mouse(x,y,10,10,false);
ChooseOption('> Range');
wait(800+random(500));
SelectCookOptions;
If FindDTM(FishDTM,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
Cookfish;
end;
end else
begin
Writeln('couldnt find RangeDTM3. Trying Range DTM4');
if FindDTM(RangeDTM4,x,y,MSX1,MSY1,MSX2,MSY2) then
begin
Writeln('Found Range.');
Mouse(x,y,10,10,false);
ChooseOption('> Range');
wait(800+random(500));
SelectCookOptions;
If FindDTM(FishDTM,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
Cookfish;
end;
end else
begin
Writeln('couldnt find range.')
WalktoKShop;
CookFish;
If FindDTM(FishDTM,x,y,MIX1,MIY1,MIX2,MIY2) then
begin
Cookfish;
end;
end;
end;
end;
end;
end;
FreedTM(RangeDTM1);
FreeDTM(RangeDTM2);
FreeDTM(RangeDTM3);
FreeDTM(RangeDTM4);
end;
begin
SetUpSRL;
ActivateClient;
DeclarePlayers;
LoginPlayer;
FishSetup;
if (TeleStart=True) then TeleportStart;
Repeat
Mousespeed:=20
if not (loggedin) then exit;
if (Lost=True) then TeleportStart;
WalktoBank;
BankPro;
WalktoKShop;
CookFish;
LoadCount;
Until(FishinBank=False);
end.