Ekarma
2013-02-28 23:12:29
Welcome to EWillows v1.3
Features
____________
Login Player
Chop Logs
Drop Logs
Bank logs
Anti-Ban
Features
____________
Login Player
Chop Logs
Drop Logs
Bank logs
Anti-Ban
Future Updates
______________
Advanced Tree Detection
Progress report
Failsafes
GUI
Program EWillowChopper;
{$DEFINE SMART}
{$i srl/srl.simba}
{$i sps/sps.simba}
Var
XPGain, LoadsDone, TimeGone, Logs: Integer;
XPPerHour, LoadsPerHour, LogsPerHour, CurrentXP, OriginalXP: Integer;
// How to change between banking & Dropping
// Go down to mainloop to enable banking
// Also in procedure "woodcut" add "//" infront of "droplogs;"
// Edit User info below!
// Script by : Ekarma
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Member := False;
Players[0].Active := True;
Players[0].Pin := '';
end;
Procedure DropLogs;
var
i: Integer;
begin
Writeln('Inventory full! Dropping logs!');
if(InvFull) then
for i := 1 to 28 do
begin
if ExistsItem(i) then
DropItem(i);
wait(50+random(50));
Logs := Logs + 28
end;
end;
function IsWoodcutting: Boolean;
var
PBox: TBox;
begin
PBox := IntToBox(245, 130, 285, 195);
Result := (AveragePixelShift(PBox, 250, 500) > 750);
end;
Procedure BankItems;
begin;
Writeln('Banking Items...');
Depositall;
Mouse(488, 42, 0, 0, true);
wait(250+random(250));
end;
Procedure Welcome;
begin;
Writeln('Welcome to EWillows v1.2 by Ekarma!');
Writeln('If you have any issues please report them here:');
Writeln('http://villavu.com/forum/showthread.php?t=97292&p=1181017&posted=1#post1181017');
Writeln('________________________________________________');
end;
procedure AntiBan;
begin
if(not(LoggedIn))then
Exit;
FindNormalRandoms;
case Random(100) of
0:
begin
HoverSkill('Woodcutting', false);
wait(2400+Random(572));
end;
1: BoredHuman;
2:
begin
MakeCompass('E');
wait(100+random(125));
MakeCompass('S');
wait(50+random(133));
MakeCompass('N');
wait(50+random(123));
MakeCompass('W');
end;
end;
end;
Procedure Woodcut;
var x, y: integer;
begin;
MakeCompass('E');
SetAngle(SRL_ANGLE_LOW);
Writeln('Chopping willows!');
Repeat
if(not(LoggedIn))then
Exit;
wait(500+random(500));
FindNormalRandoms;
// if (InvFull) then // delete "//" to drop logs!
// Droplogs; //delete "//" to drop logs! ***NOTE** Also DISABLE the banking feature at the bottem...
While IsWoodcutting Do Wait(750+random(250));
if FindObj (x, y, 'illow', 3359298, 10) then
begin
Mouse(x, y, 2, 2, false);
ChooseOption('hop down');
end;
Repeat
Antiban;
wait(500+random(1000));
Until not IsUpText('illow') or (InvFull);
Until(InvFull);
end;
Procedure WalkToTrees;
Var
myPath:TPointArray;
begin
Writeln('Walking to willows!');
SPS_Setup(RUNESCAPE_SURFACE,['10_9','10_8']);
myPath := [Point(4164, 3625), Point(4164, 3613),
Point(4153, 3611), Point(4141, 3611), Point(4140, 3622),
Point(4140, 3629), Point(4140, 3637), Point(4137, 3643),
Point(4136, 3649), Point(4135, 3659), Point(4139, 3666)];
SPS_WalkPath(myPath);
end;
Procedure WalkToBank;
Var
myPath:TPointArray;
begin
Writeln('Inventory full! Walking to bank!');
SPS_Setup(RUNESCAPE_SURFACE,['10_9','10_8']);
myPath := [Point(4144, 3665), Point(4144, 3658),
Point(4142, 3651), Point(4141, 3645), Point(4141, 3638),
Point(4141, 3627), Point(4141, 3615), Point(4148, 3609),
Point(4158, 3610), Point(4167, 3613), Point(4164, 3621),
Point(4162, 3630)];
SPS_WalkPath(myPath);
end;
Procedure ClickBanker;
var x, y: integer;
begin;
MakeCompass('W');
if FindObj (x, y, 'ank', 4873312, 5) then
begin
Mouse(x, y, 2, 2, false);
ChooseOption('ank');
wait(3000+random(1500));
end;
end;
procedure Progress;
begin
ClearDebug;
TimeGone := (GetTimeRunning/1000);
CurrentXP := GetXPBar(1);
XPGain := (CurrentXP - OriginalXP);
XPPerhour :=(3600*(XPGain))/((TimeGone));
LoadsPerhour :=(3600*(LoadsDone))/((TimeGone));
LogsPerHour := (3600*(Logs))/((TimeGone));
begin
Writeln('----- EWillow Progress report -----');
Writeln('We have done: ' + IntToStr(LoadsDone) + ' Loads / Thats ' + IntToStr(LoadsPerHour) + ' loads per hour');
Writeln('We have gained: ' + IntToStr(XPGain) + ' xp / Thats ' + IntToStr(XPPerHour) + ' xp per hour');
Writeln('We have chopped ' + IntToStr(Logs) + ' Logs / Thats ' + IntToStr(LogsPerHour) + ' Logs Per Hour');
end;
end;
Procedure Bank;
begin;
WalkToBank;
ClickBanker;
BankItems;
WalkToTrees;
end;
Procedure Mainloop;
begin;
repeat
WoodCut;
//Progress; <--- DOES NOT WORK!
Bank; // <--- add this infront to disable
until(false);
end;
begin //Don't Touch this...
SetupSRL;
DeclarePlayers;
LoginPlayer;
ClearDebug;
Welcome;
Mainloop;
end. **Please note this is my first script**Constructive criticism and suggestions are welcome :)