SCAR Code:
////////////////////////////////////////////////////////////////
// //
// ***** ***** ** ** ** *** ** **** ***** //
// ** ** ** ** ** * ** ** **** ** ** ** ** ** //
// ** ** ***** ****** *** ** **** ** ** ***** //
// ** ** ** ** ** ** ** ** *** ** ** ** ** //
// ***** ** ** ** ** ** ** ** **** ** **//
// //
// ***** ** **** ** ** ***** ***** //
// ** ** ** ** ** ** ** ** //
// ***** ** **** ******* ***** ***** //
// ** ** ** ** ** ** ** ** //
// ** ** **** ** ** ***** ** ** //
// //
// ** *** ** ***** //
// ** * **** ** ** ** //
// ****** ** **** ** ** //
// ** ** ** *** ** ** //
// ** ** ** ** ***** //
// //
// ***** ** *** ** ** ** ***** ***** //
// ** ** ** * **** ** ** ** ** ** ** //
// ***** ****** ** **** **** ***** ***** //
// ** ** ** ** ** *** ** ** ** ** ** //
// ***** ** ** ** ** ** ** ***** ** ** //
// //
////////////////////////////////////////////////////////////////
// Description //
////////////////////////////////////////////////////////////////
// //
// This is fisher will catch fish until the inventory is //
// full. After it filled the inventory with fish it will //
// walk to the bank and desposit it all. //
// This works for both net and bait fishing. //
// //
// It contains AntiRandom, AntiBan, and it will notice if //
// there is a whirlpool. //
// //
////////////////////////////////////////////////////////////////
// Instructions //
////////////////////////////////////////////////////////////////
// //
// MAKE SURE THAT YOU WILL... //
// Start in Draynor Village... with you fishing equipment //
// in you first slot of your inventory, and your bait (if //
// bait fishing) in the second one. //
// and that your inventory is not full, and that the //
// fishinggspot icon appears on the map. //
// //
// Write the data into the procedure of the DeclarePlayers //
// pocedure. further instrunctions out there. //
// //
////////////////////////////////////////////////////////////////
// Script created by: Phoenix13nl and Joelster134 //
////////////////////////////////////////////////////////////////
program DraynorFisherAndBanker;
{.include SRL/SRL.Scar}
var
x, y, LoopCount, FishCount, xf, yf, NetDTM : integer;
const
//SRL STATS
YourID = 'blah'; // Your stats id here
YourPW = 'extra blah'; //Your stats pw here
procedure DeclarePlayers;
begin
howmanyplayers:=1;
numberofplayers(howmanyplayers);
players[0].name:='WriteUsernameHere';
players[0].pass:='WritePasswordHere';
players[0].nick:='WriteNicknameHEre'; //Just write 3-4 letters of your username, use correct capitals.
players[0].pin :=''; //Leave blank if no pin.
players[0].Integers[0]:=270; //Amount of fish to catch (About 27 fish per load when using net)
players[0].active:=true;
players[0].worked:=0;
end;
procedure Init;
begin
NetDTM := DTMFromString('78DA63B465666078C0C8800A189148206D0D5' +
'47395801A5DA09A2704D47802D5DC25A0C68C0835CE40356F09A8' +
'7107AA798C5F0D0051850803');
end;
procedure AntiRandoms;
begin
FindNormalRandoms;
if not(LoggedIn)then Exit;
if not findnormalrandoms then
begin
findtalk;
end;
if findfight=true then runaway('E',true,1,4000+random(2000));
end;
procedure AntiBan;
begin
if(not(LoggedIn))then Exit;
case random(4) of
0: PickUpMouse;
1: RandomMovement;
2: RandomRClick;
3: case random(4) of
0: HoverSkill('Fishing', false);
1: HoverSkill('Cooking', false);
2: HoverSkill('Woodcutting', false);
3: HoverSkill('Firemaking', false);
end;
end;
end;
procedure WalkFish;
begin
if not LoggedIn then exit;
KeyDown(VK_UP);
wait(1500+random(500));
KeyUp(VK_UP);
wait(500+random(500));
writeln('Angle set.');
if (InvFull = True) then exit;
wait(1500+random(500))
if(FindSymbol(x,y,'fish'))then
begin
SetRun(True)
writeln('Walking to fishing spot.');
AntiRandoms;
MMouse(x, y, 5, 5);
wait(100+random(50));
Mouse(x, y, 1, 1, true);
wait(3000+random(1000))
Antiban;
AntiRandoms;
wait(2000+random(500))
end;
end;
Procedure CatchFish;
begin
if (InvFull = true) or (LoggedIn = false) then exit;
repeat
AntiRandoms;
AntiBan;
wait(500+random(500))
if not FindObjCustom(x, y, ['Net','et F','t Fi'], [12828090, 11182231], 3) then exit;
repeat
if not(FindDTM(NetDTM,x,y,550,205,735,255))then
begin
writeln('Cant find net in inventory.')
if not FindObjCustom(x, y, ['Small', 'all f', 'ng net'], [1053978, 1185564, 1844268], 3) then exit;
wait(1500+random(500));
Mouse(x, y, 1, 1, true);
writeln('Found net on ground.')
if not(FindDTM(NetDTM,x,y,550,205,735,255))then exit;
writeln('Net sucsesfully picked up.')
end;
wait(1500+random(500)) //Dont not remove/move this line! will slow down RS by searching the ObjCustom before being able to find.
if FindObjCustom(xf, yf, [], [10591393, 11052199], 3) then
begin
runaway('E',true,1,200+random(200));
writeln('Whirlpool spotted!')
wait(2000+random(500));
AntiRandoms;
AntiBan;
wait(7500+random(500));
end;
if FindObjCustom(x, y, ['Net','et F','t Fi'], [12828090, 11182231], 3) then
begin
writeln('Net fishing spot spotted.');
wait(100+random(50));
Mouse(x, y, 1, 1, true);
writeln('Fishing...');
wait(5000+random(2500));
if HPpercent<25 then runaway('E',true,1,4000+random(2000));
if FindObjCustom(xf, yf, [], [10591393, 11052199], 3) then
begin
runaway('E',true,1,200+random(200));
writeln('Whirlpool spotted!')
wait(2000+random(500));
AntiRandoms;
AntiBan;
wait(7500+random(500));
end;
AntiRandoms;
AntiBan;
if HPpercent<25 then runaway('E',true,1,4000+random(2000));
wait(3000+random(2500));
if HPpercent<25 then runaway('E',true,1,4000+random(2000));
end;
until(InvFull = true);
until(InvFull = true);
FishCount:=FishCount+1;
MMouse(648,57,4,4);
wait(100+random(50));
Mouse(648,57,1,1,true);
wait(2000+random(1000))
end;
procedure WalkBank;
begin
if not LoggedIn then exit;
if not (InvFull = true) then exit;
wait(1000+random(500))
if(FindSymbol(x,y,'bank'))then
begin
Writeln('Bank found.');
MMouse(x, y, 5, 5);
wait(100+random(50));
Mouse(x, y, 1, 1, true);
wait(5000+random(1000));
AntiBan;
AntiRandoms;
wait(4500+random(1000));
end;
end;
procedure Bank;
begin
if not LoggedIn then exit;
if not (InvFull = true) then exit;
repeat
if FindObjCustom(x, y, ['se Ba', 'ank b', 'oth'], [605264, 3685438, 2313826, 6192526], 3) then
begin
MMouse(x,y,5,5);
wait(100+random(50));
Mouse(x,y,1,1,False);
wait(1000+random(500))
if ChooseOption('se-q') then
begin
wait(3500+random(500));
deposit(3,28,true);
wait(1500+random(500));
MMouse(489,33,4,4);
wait(100+random(50));
Mouse(489,33,1,1,true);
wait(1500+random(500));
MMouse(609,129,4,4);
wait(100+random(50));
Mouse(609,129,1,1,true);
AntiBan;
wait(6000+random(2000));
end;
end;
until(InvFull = false)
end;
procedure ProgressReport;
begin
writeLn('###################################################################');
writeLn(' Draynor Fisher v1.2 ');
writeLn(' Ran for: ' + TimeRunning);
writeLn(' Loads done: ' + IntToStr(FishCount));
Writeln(' Fish caught: ' + IntToStr(FishCount * 27) + ' out of ' + IntToStr(Players[CurrentPlayer].Integers[0]) + ' fish caught.');
writeLn('###################################################################');
end;
begin
cleardebug;
init;
setupsrl;
lampskill:='fishing'; //Change into any skill... make sure its written corretly!
declareplayers;
currentplayer:=0;
logout;
closefile(rewritefile('C:\WINDOWS\.jagex_cache_32\uid.dat',true));
loginplayer;
Repeat
if not loggedin then exit;
WalkFish;
CatchFish;
WalkBank;
Bank;
if (InvFull = True) then break;
Cleardebug;
LoopCount:=LoopCount+1;
ProgressReport;
Until(FishCount * 27>= Players[CurrentPlayer].Integers[0]);
logout;
end.