SCAR Code:
program MrCooker;
{.include srl/srl.scar}
{.include srl/srl/skill/Cooking.scar}
var
i,x,y,Tries,HowManyLoads,Banked,Cooked : integer;
Food: Array[0..6] of Integer;
const
LoadsToDo = 10;
Procedure DeclarePlayers;
begin
HowManyPlayers := 4;
numberOfPlayers(howManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; // Username
Players[0].Pass := ''; // Password
Players[0].Nick := ''; // 3-4 letters of your Username
Players[0].Active := True; // are u going to use this player ?
Players[1].Name := '';
Players[1].Pass := '';
Players[1].Nick := '';
Players[1].Active := False;
Players[2].Name := '';
Players[2].Pass := '';
Players[2].Nick := '';
Players[2].Active := False;
Players[3].Name := '';
Players[3].Pass := '';
Players[3].Nick := '';
Players[3].Active := False;
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
end;
procedure DTMS;
begin
Food[0] := DTMFromString('78DA632C656260B8C0C8800CCCF4D5C1344C9' +
'4B103A8E631AA1A0F3B635435ED40351751D5E4E575A3AA01D9F5' +
'00558DB8B81C8A1A00A2F5086A');
Food[1] := DTMFromString('78DA632C65626038C7C8800A18914820DD055' +
'4F300558D879D31A69A8BA86AD64FEF4255538169CEF4E60A1435' +
'0088520991');
Food[2] := DTMFromString('78DA632C676260B8CCC8800C3C1D4CC0344C9' +
'4B115A8E63EAA1A375B235435CD40355750D5349497A1AAA902AA' +
'B98BAAE6C2A993286A00D9CA0AB3');
Food[3] := DTMFromString('78DA63AC606260B8C2C8800CDC6C8DC0344C9' +
'4B10DA8E601AA1A0F3B635435AD40355751D52C488D4255530D54' +
'731755CDAEFE76143500CF2F0A16');
Food[4] := DTMFromString('78DA632C616260B8C0C8800C3C1D4CC0344C9' +
'4B11BA8E631AA1A0F3B6354355D40359751D5484A48A0AAA900AA' +
'7988AAE6E6E5CB286A00A54909BB');
Food[5] := DTMFromString('78DA632C62626038C7C8800C3CEC8CC1344C9' +
'4B11BA8E609AA1A4F071354359D40351750D5C064E16ACA806A1E' +
'A0AA71B335425103007855079F');
Food[6] := DTMFromString('78DA632C66626038C3C8800C3CEC8CC1344C9' +
'4B107A8E61101355D40351751D5783A98A0AA2907AAB987AA66D7' +
'9CFDA86ADA806A2EA3AA9994311B450D0052640CA9');
end;
function FindFastRandoms: Boolean; //By WT-Fakawi.
var
i: Integer;
begin
if(not(LoggedIn))then
Exit;
for i := 1 to 8 do
begin
case I of
1: if FindDead then
Result := True;
2: if FindMod then
Result := True;
3: if FindMime then
Result := True;
4: if FindMaze then
Result := True;
5: if FindQuiz then
Result := True;
6: if FindDemon then
Result := True;
7: begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
7: begin
if InBlack then
begin
Result := True;
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
end;
8: RC;
end;
wait(1);
end;
end;
///////////////////////////////////////////////////////////////////////////
procedure FindRandoms;
begin
if(not(LoggedIn))then
Exit;
FindFastRandoms;
FindNormalRandoms;
end;
procedure AntiBannage;
begin
if(not(LoggedIn))then
Exit;
case Random(13) of
0: TypeSend('lol');
1: begin
GetSkillInfo('Fishing', false);
wait(2000+random(1000));
GameTab(4);
end;
2: begin
GetSkillInfo('Cooking', false);
wait(2000+random(1000));
GameTab(4);
end;
3: TypeSend('i want a phat lol');
4: TypeSend('ty');
5: BoredHuman;
6: PickUpMouse;
7: TypeSend('Cooking lvls?');
8: begin
GameTab(1 + Random(12));
wait(1000+random(1000));
GameTab(4);
end;
9: begin
case random(4) of
0: TypeSend('Fishing lvls?');
1: TypeSend('Fishing levels');
2: TypeSend('Cooking lvls');
3: TypeSend('Cooking levels');
end;
end;
10: MouseBox(MSX1,MMY1,MMX2,MMY2,3);
11: Mouse(500,216,547,20,false);
12: SleepAndMoveMouse(600000+random(300000));
end;
end;
procedure Starting;
begin
if(not(LoggedIn))then
Exit;
GameTab(1)
wait(3000+random(421))
GameTab(4)
wait(1000+random(526))
MakeCompass('E');
end;
Procedure OpenTheBank;
begin
if (not(LoggedIn))then
Exit;
begin
SetAngle(????)// what should i putif i want the highest angle
MakeCompass('W');
OpenBankQuiet('akb');
wait(1000+random(548))
FixBank;
Withdraw(1,1,28)
Writeln('Yeah i found the food');
wait(1205+random(632))
CloseBank;
end;
end;
procedure ToTheStoveAndCook;
var
a,b,x1, y1, x2, y2: Integer;
begin
if(not(LoggedIn))then
Exit;
SymbolAccuracy := 0.8;
if (FindSymbol(x,y,'cook'))then
begin
Writeln('Found Symbol');
Mouse(x,y,3,3,True);
Wait(1500+random(11))
Flag;
FindRandoms;
FindRange(x,y, x1, y1, x2, y2 );
repeat
for i:= 0 to 7 do
begin
if (FindDTM(Food[i],a,b,MIX1,MIY1,MIX2,MIY2))then
begin
Writeln('Found food');
Mouse(a,b,3,3,true);
AntiBannage;
FindRandoms;
wait(2050+random(487))
Mouse(x,y,3,3,true);
ClickOption(Raw, 3);
Cooked := Cooked+1
until (not(FindDTM(Food[i],a,b,MIX1,MIY1,MIX2,MIY2)
end;
end;
end;
procedure ToTheBank;
begin
SymbolAccuracy := 0.8;
if (FindSymbol(x,y,'bank')then
begin
Writeln('Found Symbol');
Mouse(x,y,3,3,True);
Wait(1500+random(11))
Flag;
FindRandoms;
SetAngle(Low:Boolean) // ????
MakeCompass('W');
wait (999+random(999))
OpenBankQuiet('akb');
wait(1000+random(548))
FixBank;
DepositAll;
Writeln('Depositing Food')
wait(4000+random(632))
Withdraw(1,1,28)
Writeln('Yeah i found the food');
wait(1205+random(632))
CloseBank;
Banked := Banked +1
end;
end;
Procedure Proggy;
begin
if(not(LoggedIn))then
Exit;
ClearDebug;
Writeln('___________________________________________');
Writeln('-------------------------------------------');
Writeln(' Maybe Cooked '+IntToStr(Cooked)+);
Writeln(' Worked for: ' + TimeRunning +' ');
Writeln(' Banked: ' + IntToStr(Banked)+ ' times ');
Writeln('___________________________________________');
Writeln('-------------------------------------------');
Writeln('|||||||||||||||||||||||||||||||||||||||||||');
Writeln('|||||||||||||||||||||||||||||||||||||||||||');
end;
begin
ActivateClient;
ClearDebug;
if(not(LoggedIn))then
LoginPlayer;
repeat
if(not(LggedIn))then NextPlayer(False);
Starting;
OpenTheBank;
FindRandoms;
AntiBannage;
ToTheStoveAndCook;
ToTheBank;
until (HowManyLoads >= LoadsToDo )
Next Player(True);
Proggy;
end;