program RoguesDenCooker;
{$DEFINE SMART8}
{$I SRL-OSR/SRL.simba}
{$I SRL/SRL/Misc/Debug.Simba}
{$I SRL-OSR/SRL/Misc/SmartGraphics.Simba}
const
BankNick = 'merald';
BankColor1 = 7049917;
BankColor2 = 5007496;
FireColor1 = 3519463;
FireColor2 = 3317181;
var
banked, t, x, y: Integer;
const
default = 'Tahoma';
procedure DeclarePlayer;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := 'Username';
Players[0].Pass := 'Password';
Players[0].Nick := 'Nickname';
Players[0].Active:=True;
end;
procedure openBankScreen;
var x, y: Integer;
begin
writeln('Looking for Bank');
repeat
FindNormalRandoms;
repeat
wait(50 + random(80))
until FindObjCustom(x,y, ['alk-to', BankNick], [BankColor1, BankColor2], 5)
wait(randomRange(200,600));
ClickMouse2(mouse_right);
wait(randomRange(200,600));
ChooseOptionMulti(['Bank']);
wait(randomRange(800,1600));
until (BankScreen = True);
writeln('Found BankScreen');
end;
Procedure withdrawBank;
begin
repeat
Deposit(1,28,True);
Wait(RandomRange(210,410));
until (InvCount < 1);
wait(randomRange(300, 600))
Withdraw(0,0,28);
Wait(randomRange(800,1000));
if (InvCount < 28) then
withdrawBank;
CloseBank;
FindNormalRandoms;
end;
procedure startCook;
begin
FindNormalRandoms;
MarkTime(t);
repeat
repeat
MouseItem(28,mouse_left);
Wait(50+random(50));
until FindObjCustom(x,y, ['Use'], [FireColor1, FireColor2], 5)
wait(100+random(200));
ClickMouse2(mouse_right);
wait(randomRange (100, 500));
ChooseOptionMulti(['Fire']);
wait(randomRange (1500, 2000));
FindNormalRandoms;
MoveMouse(259, 407);
Wait(randomRange(100,200))
Clickmouse2(mouse_right);
Wait(randomRange(100,200));
FindNormalRandoms;
until chooseOptionMulti(['All']) or (TimeFromMark(t)>20000);
Wait(RandomRange(900, 1100));
FindNormalRandoms;
MarkTime(t);
repeat
sleep(500);
if FindNPCChatText('gratu', Nothing) then
begin
writeln('Leveled up');
openbankscreen;
withdrawBank;
startCook;
end;
FindNormalRandoms;
until TimeFromMark(t) > 62000;
end;
Procedure antiBan;
begin
Case Random(50) Of
1: HoverSkill(SKILL_COOKING, False);
2: BoredHuman;
3: Wait(1500 + random(2500));
4: PickUpMouse;
5: ExamineInv;
6: RandomRClick;
7: MakeCompass('random');
8: MMouseOffClient('random');
end;
end;
procedure Prog;
var
Sec: Integer;
begin
Sec := GetTimeRunning/1000;
Writeln('Total Cooked : ' + IntToStr(Banked));
Writeln('Time Ran : ' + TimeRunning);
end;
begin
SetupSRL();
DeclarePlayer;
SetScreenName(Players[0].Nick);
ActivateClient;
Wait(2000);
If (Not LoggedIn) Then
begin
LogInPlayer;
end;
begin
repeat
openBankScreen;
withdrawBank;
IncEx(Banked, 28);
startCook;
Prog;
antiBan;
until(not LoggedIn);
end;
end.
Working pretty well now.. Ill post a proggy before i go to sleep or when it fails :)
Total Cooked : 1652
Time Ran : 1 Hours, 26 Minutes and 53 Seconds
At the end someone spammed alot of firemaking around me so it slowed me down quite a bit.. but ran nicely for 1h 27min :)