Well this isn't my first script at all, still I post it in this part of the forum because its of a very low level and the script doesn't contains any anti-ban nor anti-random.
PHP Code:
program draynorFisher;
{.include SRL/SRL/Misc/SMART.scar}
{.include SRL/SRL.scar}
{.include SRL/SRL/Reflection/Reflection.simba}
Procedure DeclarePlayers;
begin
NumberOfPlayers(1);
CurrentPlayer := 0;
Players[0].Name := ' ';
Players[0].Pass := ' ';
Players[0].Nick := ' '; // 3 or four letters form your character's name
Players[0].Active := true;
end;
procedure WaitForFish;
var
fails:Integer;
begin
repeat
wait(200);
if(GetAnimation = -1) then
fails := fails +1;
until(fails > 4);
end;
procedure FindFish;
var
i,j:Integer;
AllNPCs:array of TNPC;
ClickingPoint:TPoint;
begin
AllNPCs := GetNPCs;
for i := 0 to (length(AllNPCs)-1) do
begin
if(AllNPCs[i].Name = 'Fishing spot') then
begin
ClickingPoint := TileToMs(AllNPCs[i].NPCTile,0);
Mouse(ClickingPoint.x,ClickingPoint.y,10,10,False);
wait(1500+random(1000));
R_ChooseOption('ait');
Exit;
end;
end;
end;
procedure Bank;
var
ClickingPoint:TPoint;
begin
wait(2000+random(2000));
ClickingPoint := TileToMs(Tile(3091,3245),0);
Mouse(ClickingPoint.x,ClickingPoint.y,10,10,False);
wait(1500+random(1000));
R_ChooseOption('uick');
wait(2500+random(1000));
Deposit(3,20,True);
wait(500+random(500));
CloseBank;
end;
procedure WalkToBank;
var
ThePoint:TPoint;
begin
ThePoint := TileToMM(Tile(3087, 3237));
Mouse(ThePoint.x, ThePoint.y, 9, 9, true);
wait(500+random(500));
R_FFlag(1);
ThePoint := TileToMM(Tile(3092, 3245));
Mouse(ThePoint.x, ThePoint.y, 4, 4, true);
wait(500+random(500));
R_FFlag(1);
R_Flag;
end;
procedure WalkToFish;
var
ClickingPoint:TPoint;
begin
ClickingPoint := TileToMM(Tile(3087, 3237));
Mouse(ClickingPoint.x, ClickingPoint.y, 9, 9, true);
wait(500+random(500));
R_FFlag(1);
ClickingPoint := TileToMM(Tile(3086,3230));
Mouse(ClickingPoint.x, ClickingPoint.y, 2, 2, true);
wait(500+random(500));
R_FFlag(1);
wait(1000+random(1000));
end;
procedure MainLoop;
begin
repeat
repeat
FindFish;
wait(1500+random(1000));
WaitForFish;
until InvFull;
WalkToBank;
Bank;
WalkToFish;
until false
end;
Procedure SetupProc;
begin
Smart_Server := 38;
Smart_Members := False;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
SmartSetupEx(Smart_Server, Smart_Members, Smart_Signed, Smart_SuperDetail);
DeclarePlayers;
ActivateClient;
LoginPlayer;
Wait(2000 + random(500));
SetAngle(true);
end;
begin
SetupProc;
MainLoop;
end.
This script is 90% reflection and it runs for hours! The only thing that can stop this scripts are the randoms. Still I recommend to not use this script for over 30 minutes because it doesn't contain anti-ban.
I created this script within 30 minutes just to get the feeling of reflection back, my next script will be an oak cutter! This one will contain other features and will be much more flexible.
To run this script:
- Place your character at the fishing spot
- Place a fishing rod and fishing bait in the first 2 inventory slots
If you want to net fish you have to change line number 40 and 43 to:
PHP Code:
Mouse(ClickingPoint.x,ClickingPoint.y,10,10,true);
Don't forget the fishing net!