xtrapsp
2012-02-24 15:54:28
hey guys,
I've been trying to add nest picking up for a while now and I'm genuinly getting a mental block on what to do… I've tried ACA. I've tried DTM's ( Wont work due to multiple angles ).
If anyone would mind looking into this script I'd really appreciate it
Thanks guys. Literally pulling my hair out
I've been trying to add nest picking up for a while now and I'm genuinly getting a mental block on what to do… I've tried ACA. I've tried DTM's ( Wont work due to multiple angles ).
If anyone would mind looking into this script I'd really appreciate it
program xtraivy;
{$DEFINE SMART}
{$i SRL\SRL.simba}
{$i SRL/SRL/skill/woodcutting.simba}
{include SPS/SPS.simba}
Var
Gained: Integer;
{♠===================================================================♠
♠XtraIVY♠ CrushPrice := GetGEPrice(6693);
♠Release Date♠: 17/02/2012
♠Author♠: xtrapsp
♠Support♠: [url]http://villavu.com/forum/showthread.php?t=75528[/url]
Changelog:
23/02/2012 - Changed around with the Nest Settings
20/02/2012 - Cleaned up script a bit + Setup script for addons
17/02/2012 - Chopping done.
18/02/2012 - Added Various antiban.
19/02/2012 - Added elements which aren't in use yet.
♠===================================================================♠}
Const
SRLStats_Username = '';
SRLStats_Password = '';
NumbOfPlayers= 1;
StartPlayer= 0;
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
begin
Name := '';
Pass := '';
Nick := '';
Pin := '';
BoxRewards := ['Xp', 'mote', 'ostume', 'ssence'];
Member := True;
Active := True;
end;
end;
procedure CheckSRLStats;
begin
if ((SRLStats_Username= '') and (SRLStats_Password = '')) then
begin
case MessageBox('No Stats account entered, would you like to register?','SRL Stats',mbYesNoCancel) of
mrYes:
begin
OpenWebPage('http://stats.villavu.com/register');
TerminateScript;
end;
mrNo:
begin
SetupSRLStats(837, 'Anonymous', 'anon1337');
Exit;
end;
mrCancel: TerminateScript;
end;
end else
SetupSRLStats(837, SRLStats_Username, SRLStats_Password);
end;
procedure x_Stats_Commit;
begin
stats_IncVariable('Woodcutting EXP (Gained)', 4725);
Stats_Commit;
Writeln('Updated SRL Stats')
end;
Procedure ProgressReport;
var
startEXP, newExp, Gained : Integer;
begin
startExp := Players[CurrentPlayer].Integers[0];
newExp := GetXPBarTotal;
Gained := newExp - startExp;
WriteLn('Exp gained: ' + ToStr(Gained));
x_Stats_Commit;
end;
{♠===================================================================♠}
////////////////////////////////////////////////////////////////////////////////
////////////AutoColour Feature (I'm British I spell it like Colour)/////////////
function IVYColour: Integer;
var
arP: TPointArray;
arC: TIntegerArray;
tmpCTS, i, arL: Integer;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.03, 0.08);
if not (FindColorsTolerance(arP, 4619873, MSX1, MSY1, MSX2, MSY2, 10)) then
begin
Writeln('Failed to find the color, no result.');
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
ClearSameIntegers(arC);
arL := High(arC);
for i := 0 to arL do
begin
Result := arC[i];
Writeln('AutoColor = ' + IntToStr(arC[i]));
Break;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
if (i = arL + 1) then
Writeln('AutoColor failed in finding the color.');
end;
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
function Nestcolour: Integer;
var
arP: TPointArray;
arC: TIntegerArray;
tmpCTS, i, arL: Integer;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.39, 0.74);
if not (FindColorsTolerance(arP, 2964028, MSX1, MSY1, MSX2, MSY2, 10)) then
begin
Writeln('Failed to find the nest, cannot pickup.');
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
ClearSameIntegers(arC);
arL := High(arC);
for i := 0 to arL do
begin
Result := arC[i];
Writeln('AutoColor = ' + IntToStr(arC[i]));
Break;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
if (i = arL + 1) then
Writeln('Failed to find the nest, cannot pickup.');
end;
procedure Chop;
var
X, Y: Integer;
begin
if not LoggedIn then
Exit;
FindNormalRandoms;
SetColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.02, 0.07);
if FindObj(X, Y, 'Iv', 4619873, 8) then
begin
mouse( x, y, 2, 2, true);
wait(687 + random(15000))
MMouse( x, y, 10, 10);
end;
If Not FindObj (X, Y, 'Iv', 4619873, 8) then
begin
Chop;
end;
(* We revert back to the defaults here. *)
SetColorSpeed2Modifiers(0.2, 0.2);
SetColorToleranceSpeed(1);
end;
Procedure StatsGuise(wat:String); // Thanks YoHoJo
Begin
Status(wat);
Disguise(wat);
End;
Procedure Antiban_Upgrade;
var
I: Integer;
CurrentCompassDegree: Extended;
begin
I := Random(1000);
StatsGuise('AntiBan');
case (I) of
0..99 :
begin
GameTab(tab_Stats);
HoverSkill('Woodcutting', False);
GameTab(28);
end;
100..200 :
begin
SleepAndMoveMouse(7000 + Random(500));
MakeCompass(CurrentCompassDegree-18+Random(32));
end;
200..210 :
begin
GameTab(Tab_Stats);
MakeCompass(CurrentCompassDegree-2+Random(34));
Wait(3000 + Random(500));
GameTab(28);
end;
211..220 :
begin
BoredHuman;
MakeCompass('N')
end;
221..300 :
begin
GameTab(Tab_Stats);
Wait(100 + Random(1000));
end;
end;
end;
Procedure AFK;
begin
if not loggedIn then Exit;
Case Random (100) Of
1..15 : Wait(1000 + Random (3050));
16..24 : Wait (1340 + Random (1093));
25..45: Wait (1211 + Random (6000));
46..47: Wait (20000 + Random (10000)); // This looks like you've gone to get a drink
end;
end;
Procedure FindNest_old;
var
X, Y: Integer;
Begin
if not LoggedIn then
Exit;
FindNormalRandoms;
If FindObjCustom(x, y, ['Ne', 'st'], [3290938,3883332], 5) Then
begin
Mouse( x, y, 2, 2, True);
Writeln('Found a nest... Attempting to pickup');
MakeCompass(10 + random(50));
end;
End;
Procedure X_FindNest; ///FINISH THIS WHEN YOU HAVE A NEST
var
X, Y, Colour: Integer;
begin
if not LoggedIn then
Exit;
FindNormalRandoms;
Colour := NestColour;
if FindObj(X, Y, 'Nes', NestColour, 10) then
begin
mouse( x, y, 2, 2, true);
end;
If Not FindObj (X, Y, 'Nes', NestColour, 10) then
begin
Chop;
end;
end;
Procedure FindEmptyNest; //Probably not needed. It's a procedure incase the script drops a nest randomly?
var
X, Y, EmptyNest: Integer;
Begin
if not LoggedIn then
Exit;
FindNormalRandoms;
EmptyNest := DTMFromString('mlwAAAHicY2dgYMhmZGDIAuI4IE4B4nwgLgfiIiCew8TAsByIFwDxDCCeDsTzoGKeHhYMjo4WDN7ejkC2PYObmxmDjY0Gg56eBgM+wIgHQwEA+fEMeg==')
If FindDTM(EmptyNest, X, Y, MSX1, MSY1, MSX2, MSY2) Then
Begin
Writeln('Found a nest... Attempting to pickup');
MMouse (x, y, 5, 5);
MakeCompass(0 + random(50));
If IsUpText('nes') Then
Mouse(x, y, 0, 0, True);
End;
FreeDTM(EmptyNest);
End;
Procedure X_CrushNest;
var
X, Y, CrushNest: Integer;
Begin
if not LoggedIn then
Exit;
FindNormalRandoms;
CrushNest := DTMFromString('mggAAAHicY2NgYOADYiEgFgNiGSDmZYAATijNCGULQWkTAw0gyYSBuRiwA0YcGAIAboABOg==')
If FindDTM(CrushNest, X, Y, MIX1, MIY1, MIX2, MIY2) Then
Begin
Writeln('Found a nest inside Inventory, Attempting to crush');
MMouse (x, y, 5, 5);
If IsUpText('cru') Then
Mouse(x, y, 0, 0, True);
End;
FreeDTM(CrushNest);
End;
Procedure Joincommunity;
begin
case MessageBox('While the bot is running, would you like to browse our other scripts?','Community Site',mbYesNoCancel) of
mrYes:
begin
OpenWebPage('http://bot.lizardguru.com');
end;
mrNo:
begin
Exit;
end;
mrCancel: TerminateScript;
end;
end;
begin
SetupSRL;
Joincommunity;
DeclarePlayers;
CheckSRLStats;
LoginPlayer;
ToggleXPBar(True);
Players[CurrentPlayer].Integers[0] := GetXPBarTotal;
Writeln('Your using XtraIvy V0.05');
Writeln('Please report any bugs on the thread');
Repeat
Chop;
X_FindNest;
Antiban_Upgrade;
X_FindNest;
FindEmptyNest;
AFK;
ProgressReport;
until(Not LoggedIn);
End.Thanks guys. Literally pulling my hair out