Simba Code:
program VineChopper;
{$define SMART}
{$i srl/srl.scar}
Var
Tries,Time: Integer;
Procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
begin
Name := '';
Pass := '';
Nick := '';
Pin := '';
Active := True;
end;
end;
Procedure ReturnValues(colors: TIntegerArray; var HueMods, SatMods: Extended; var color, Tolerance: Integer);
Var
h, s, t: Extended;
I,II : integer;
HSLColor : Array[1..3] of Extended;
HSL : Array[0..1] of Array[1..3] of Extended;
begin;
For I:= 1 to 3 do
begin;
HSL[0][i] := 255;
end;
For I:= 0 to High(Colors) do
begin;
ColortoHSL(Colors[i],HSLColor[1],HSLColor[2],HSLColor[3]);
For II:= 1 to 3 do
begin;
HSL[0][II] := MinE(HSLColor[II],HSL[0][II]);
HSL[1][II] := MaxE(HSLColor[II],HSL[1][II]);
end;
end;
H := (HSL[1][1] - HSL[0][1]);
S := (HSL[1][2] - HSL[0][2]);
T := (HSL[1][3] - HSL[0][3]);
try
HueMods := (H/T);
SatMods := (S/T);
Tolerance := Round(t);
except
HueMods := 0;
SatMods := 0;
Tolerance := Round(0.0);
end;
Color := HSLToColor((HSL[1][1] + HSL[0][1]) div 2,(HSL[1][2] + HSL[0][2]) div 2,(HSL[1][3] + HSL[0][3]) div 2);
end;
Function TPAFinder(Colors: TIntegerArray; TheUpText: TStringArray; var x, y: Integer; midx, midy: integer): Boolean;
Var
CTS, I, color, tolerance: Integer;
TPA: TPointArray;
ATPA: Array of TPointArray;
Hmod, Smod: Extended;
Begin
ReturnValues(colors, Hmod, Smod, color, tolerance);
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(Hmod, SMod);
FindColorsSpiralTolerance(midx, midy, TPA, color, MSX1, MSY1, MSX2, MSY2, Tolerance);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 15, 15);
For I := 0 to High(ATPA) do
begin
Inc(Tries);
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 2, 2);
Wait(randomrange(150,300));
If(IsUpTextMultiCustom(TheUpText)) then
begin
Result := True;
GetMousePos(x, y);
Tries := 0;
Break;
end;
end;
end;
Function Chopping: Boolean;
begin
if FindBlackChatMessage('at you') then
begin
Time := 0;
Result := False;
end else if (FindBlackChatMessage('swing') Or FindBlackChatMessage('get')) then
Result := True;
Inc(Time);
if (Time > RandomRange(25,35)) then
begin
Result := False;
Time := 0;
end;
end;
Procedure Chop;
Var
X,Y: Integer;
begin
if (Tries >= 10) then
begin
MakeCompass('random');
Tries := 0;
end else
begin
if TPAFinder([6969147,7495231,8612937],['mut','tat','ed','mutated'],X,Y,MSCX,MSCY) then
begin
Mouse(X,Y,0,0,True);
if DidRedClick then
Wait(RandomRange(2750,3500)); //Enough time to update out chatbox
Tries := 0;
end;
end;
end;
procedure Antiban;
var
i: Integer;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
i := Random(50);
case i of
1: RandomRClick;
2: RandomMovement;
end;
Wait(RandomRange(100,250));
end;
begin
Smart_Server := 86;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
DeclarePlayers;
Repeat
While Chopping do
AntiBan;
if Not Chopping then
Chop;
Until(False)
end.