bobng
2008-07-02 18:00:36
So, I made this willow cutter and banker. Start at draynor bank, and it will cut down all the willows it finds, then bank them.
Not 100% perfect, but it does work well.
Any tips would be appreciated.
Not 100% perfect, but it does work well.
Any tips would be appreciated.
program New;
{.include Srl\Srl.Scar}
//{.include SRL\SRL\Core\Inventory.scar}
{.include SRL\SRL\Skill\WoodCutting.scar}
//FindColorSpiralTolerance(x, y, color, MSX1, MSY1, MSX2, MSY2, 3)
var
x :Integer;
y :Integer;
const
fishcolor = 16740896;
willowcolor = 2850671; //3891047;
procedure setup;
begin
activateclient;
wait(1000)
setupsrl
MouseSpeed := 10
Writeln('Draynor Village Willow Whipper')
Writeln('Setting up script...')
MakeCompass('n')
SetAngle(True)
SetRun(True)
wait(200)
if GetSkillInfo('woodcutting', False) < 30 then
begin
writeln('Error! Your woodcutting level must be higher than 30 to cut willows!')
TerminateScript;
end;
end;
procedure gotobank;
begin
SetRun(false)
if FindColorSpiral(x,y,1890556,MMX1,MMY1,MMX2,MMY2) then
begin
writeln('Found bank. Moving towards it')
Mouse(x,y,0,0,True)
end else
begin
Mouse(649, 36,0,0,True);
end;
end;
procedure gototrees;
begin
SetRun(True)
if FindColorSpiral(x,y,fishcolor,MMX1,MMY1,MMX2,MMY2) then
begin
writeln('Found fish colour. Moving to it')
Mouse(x, y, 0, 0,True)
end else
begin
writeln('Have not found fish colour! Using "blind" co-ordinate based location technique')
writeln('This is not very acurate')
Mouse(591,132,0,0,True)
end;
end;
begin
setup
repeat
//if FindColor(x, y, fishcolor, MSX1, MSY1, MSX2, MSY2) then
gototrees ;
repeat
wait(100)
until(FlagDistance < 1)
//until()
FindObj(x, y, 'willow',willowcolor, 2)
Mouse(x,y,0,0,True)
repeat
SolveNonTalkingRandoms;
//SolveTalkingRandom()
if FindEnt(x, y, False) then
begin
// Run 2 t3h b4nk!!!
gotobank;
wait(10000)
boredhuman;
wait(30000)
RandomRClick;
wait(20000)
gototrees;
end;
FindObj(x, y, 'willow',willowcolor, 2)
Mouse(x,y,0,0,True)
if FindFight then
begin
gotobank
wait(10000)
boredhuman;
wait(30000)
RandomRClick;
wait(20000)
gototrees;
end;
wait (1000+random(1000)+random(2000)+random(4000)+random(4000))
if (random(100) = 100) then
begin
BoredHuman;
end;
until(InvFull)
gotobank;
repeat
wait(100)
until(FlagDistance < 1)
//FindObj(x,y,'bank booth',5001555,5)
//Mouse(x,y,0,0,True)
OpenBankQuiet('db')
DepositAll;
CloseBank;
until(False)
end.