Code:
//{$DEFINE SMART8}
//{$DEFINE SMART}
{$I SRL/SRL.Simba}
{$I SRL/SRL/Misc/Debug.Simba}
{$I P07Include.Simba}
var
TargetDTM, TargetViewDTM, BronzeArrowDTM, CloseDTM, AgainDTM, ScoreDTM, ClicktoContinueDTM, SureDTM, Continue2DTM, x, y, a, b, i, j, targetviewboxtimer, targetfindtimer, judgefindtimer, competitionsplayedcount: integer;
const
judgecolor1 = 3364126;
judgecolor2 = 3033937;
judgecolor3 = 3763576;
judgecolor4 = 1662049;
judgecolor5 = 7181246;
procedure P07_DeclarePlayer;
begin
P07_Playername:=''; //enter your username
P07_Playerpass:=''; //enter your password
end;
procedure Open_Inv_Tab;
begin
if(not P07_TabInventoryTab(4)) then
begin
P07_TabInventoryTab(4);
end;
end;
procedure Start_Comp;
begin
wait(randomrange(500,1000));
//P07_MakeCameraAngleHigh;// uncomment this if you are having problems with guards and need to make the camera angle high
begin
if P07_FindObjCustom(x, y, ['omp', 'tition', 'judge'], [judgecolor1, judgecolor2, judgecolor3, judgecolor4, judgecolor5], 5) then
begin
MMouse(x,y,3,3);
if P07_IsUpTextMultiCustom(['Talk','-', 'to','Comp']) then
begin
judgefindtimer := 0;
ClickMouse2(mouse_left);
writeln('');
writeln('Judge Found! Talking to the Judge...');
end;
end
else
begin
writeln('Unable to find the Judge, we may have missclicked the target or are in a random!');
writeln('Adjusting the camera and intializing a timer!');
P07_MakeCameraAngleLow;
P07_GetCompassAngle;
P07_MakeCompassDegree(randomrange(125,160));
writeln('Compass Angle set for:' + IntToStr(P07_GetCompassAngle));
wait(randomrange(100,600));
judgefindtimer := judgefindtimer + 1;
writeln('The Judge timer is at stage:' + IntToStr(judgefindtimer) +'/6');
if(judgefindtimer = 6) then
begin
writeln('The time to find the Judge has ran out! Logging out...');
MMouse(644,483,5,5);
ClickMouse2(mouse_left);
wait(randomrange(500,1500));
MMouse(633,378,5,5)
ClickMouse2(mouse_left);
TerminateScript;
end;
Start_Comp;
end;
end;
end;
procedure Click_to_Continue;
begin
wait(randomrange(1000,1500));
AgainDTM := DTMFromString('m1gAAAHic42JgYNgHxFuA+BoQnwbig0D8F4hzGRkYUoDYD4jVgXgpEM8G4gVAPB2IZwFxARCXA3EtEOcAcT4QYwMNWDCxgJFIjAAA6o4OCg==');
ClicktoContinueDTM := DTMFromString('mbQAAAHicY2VgYDBkZGB4CaQrgDQfEGsD8REgPgSlQfgoEDMw/EfBp3dNZWAFstAxIxYMBgApxQvh');
Continue2DTM := DTMFromString('mrAAAAHic42BgYLBiZGCIBmJRIP4A5FcC6e9AmgNI2wPxESA+BKUPAPFxKD4Cxf///8eKT++aynBy22QGQoCRAIYBALyAH6o=');
SureDTM := DTMFromString('mrAAAAHic42BgYGBmZGDYC6TdgPRbIH0HiPWB7MdAWhxIdwJxBxD3AHELlIbhLiDGBS4fWshw6eAcBlYgGx9mJIBhAADX4gzx');
if FindDTM(AgainDTM, x, y, 10, 351, 511, 470) then
begin
writeln('It appears we are already in a Competition! Resuming...');
P07_MakeCameraAngleLow;
FreeDTM(AgainDTM);
end
else
begin
wait(randomrange(600,1000));
begin
if FindDTM(ClicktoContinueDTM, x, y, 10, 351, 511, 470) then
begin
MMouse(x,y,40,3);
end;
begin
wait(randomrange(50,150));
ClickMouse2(mouse_left);
wait(randomrange(1050,1300));
end;
end;
begin
if FindDTM(SureDTM, x, y, 10, 351, 511, 470) then
begin
MMouse(x,y,40,3);
end;
begin
wait(randomrange(50,150));
ClickMouse2(mouse_left);
wait(randomrange(600,1000));
end;
end;
begin
if FindDTM(ClicktoContinueDTM, x, y, 10, 351, 511, 470) then
begin
MMouse(x,y,40,3);
end;
begin
wait(randomrange(50,150));
ClickMouse2(mouse_left);
wait(randomrange(600,1000));
end;
end;
begin
if FindDTM(Continue2DTM, x, y, 10, 351, 511, 470) or FindDTM(ClicktoContinueDTM, x, y, 10, 351, 511, 470) then
begin
MMouse(x,y,15,3);
end;
begin
wait(randomrange(50,150));
ClickMouse2(mouse_left);
wait(randomrange(600,1000));
end;
end;
writeln('The competition has started! Wielding the Bronze arrows...');
begin
FreeDTM(ClicktoContinueDTM);
FreeDTM(SureDTM);
FreeDTM(Continue2DTM);
end;
end;
wait(randomrange(750,1050));
end;
procedure Wield_Arrow;
begin
BronzeArrowDTM := DTMFromString('mggAAAHicY2NgYDjBxMBwCIj3AvFxID4LxNuBmImRgeE/AwT/BeJ/QCwAFHM2lgXjeE8dMK2nIsKQK8LLwA+Ux4YZcWAIAACNZgyT');
if FindDTM(BronzeArrowDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x,y,5,5);
wait(randomrange(50,150));
ClickMouse2(mouse_left);
end
else
begin
writeln('We did not see any Bronze arrows in your inventory! Checking your equipment...');
MMouse(675,184,10,10); //equipment
wait(randomrange(50,150));
ClickMouse2(mouse_left);
if FindDTM(BronzeArrowDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
writeln('Bronze arrows are equipped!');
wait(randomrange(300,600));
P07_TabInventoryTab(4);
end;
end;
FreeDTM(BronzeArrowDTM);
end;
procedure Fire_Target;
begin
P07_MakeCameraAngleLow;
P07_MakeCompassDegree(randomrange(304,311));
writeln('Compass Angle set for:' + IntToStr(P07_GetCompassAngle));
wait(randomrange(300,700));
TargetDTM := DTMFromString('mlwAAAHicY2dgYGADYmYg5oCyQYALKgYCfEDMDxVjgWIhIH5+O5ph08YehsgUcYasMBuG6Kz5DGvD/Bnic40YWIHyuDAjHgwFADW7Cic=');
TargetViewDTM := DTMFromString('m6wAAAHic42ZgYFgKxHuA+BoQvwFiJkYGBjEgLQrEnxgheBMQPwPi5UCx1UC8DIiXAPEKILYBYjtGBD0PSGsBMcP/mQwMZ/4DMZDd8Z8ByGLwdDBhCA4JhOP/q1yAoowMpABGEjASAAD3dhgy');
CloseDTM := DTMFromString('m6wAAAHic42ZgYHjKyMDwEIhfIdH3oPgtEL8G4qVAdTeAWBOIVYBYD4pVgVgJiA2hGMReAcQrGUCAEQMXJLoxhHiagzGIzfB/JgPDGQYGVgbCGAYwTcWNkQAAfIsS3Q==');
ScoreDTM := DTMFromString('mAAEAAHic42FgYPgPxB+AmJ+RgeEzkP4JxCyMEP5fIDsXSKcAsSgQ+wHxZCCeBKX7obgPShcAcTkQ1wJxDRDnADE+0ICEL+ydDaZJBYwkYmQAAC0aEME=');
if FindDTM(TargetDTM, x, y, MSX1, MSY1, MSX2, MSY2) then
begin
writeln('Firing at Target!');
MMouse(x,y,0,0);
wait(randomrange(200,600));
begin
if P07_IsUpTextMultiCustom(['Fire','-', 'arget']) then
begin
targetfindtimer := 0;
ClickMouse(x,y,mouse_left);
repeat
if FindDTM(TargetDTM, x, y, MSX1, MSY1, MSX2, MSY2) then
begin
if P07_IsUpTextMultiCustom(['Fire','-', 'arget']) then
begin
//MMouse(x,y,5,5); uncomment this if you want to spam click all over the target rather then one spot
//ClickMouse2(mouse_left); and comment the clickmouse(x,y,mouse_left) below.
ClickMouse(x,y,mouse_left);
wait(randomrange(87,101)); //<80 not human like, >110 t0o slow, >2300 close pop up box
end; //if you prefered 1.3[not spam clicking the target] change these numbers to (2300,2500) to slow the click rate down
end
else
if FindDTM(TargetViewDTM, a, b, MSX1, MSY1, MSX2, MSY2) then
begin
targetviewboxtimer := 0;
repeat
targetviewboxtimer := targetviewboxtimer + 1;
if(targetviewboxtimer > 50) then
begin
if FindDTM(CloseDTM, i, j, MSX1, MSY1, MSX2, MSY2) then
begin
MMouse(i,j,1,1);
ClickMouse2(mouse_left);
MMouse(x,y,5,5);
end;
end;
until(FindDTM(TargetDTM, x, y, MSX1, MSY1, MSX2, MSY2));
end;
until(FindDTM(ScoreDTM, x, y, 10, 351, 511, 470));
begin
if FindDTM(TargetDTM, x, y, MSX1, MSY1, MSX2, MSY2) then
begin
MMouse(x,y,5,5);
if P07_IsUpTextMultiCustom(['Fire','-', 'arget']) then
begin
ClickMouse2(mouse_left);
wait(randomrange(200,600));
end;
end;
end;
end;
end;
end
else
begin
FreeDTM(TargetDTM);
writeln('Unable to find Target! We may have missed clicked or might be in a random!');
writeln('Timer intialized!');
targetfindtimer := targetfindtimer + 1;
writeln('The Target timer is at stage:' + IntToStr(judgefindtimer) +'/5');
if(targetfindtimer = 5) then
begin
writeln('Looking for Judge');
Start_Comp;
end;
Fire_Target;
end;
competitionsplayedcount := competitionsplayedcount + 1;
writeln('Competitions Played:' + IntToStr(competitionsplayedcount) +'!');
FreeDTM(TargetDTM);
FreeDTM(CloseDTM);
FreeDTM(ScoreDTM);
FreeDTM(TargetViewDTM);
end;
procedure AntiBan;
begin
case random(15000) of
1..60: begin
wait(randomrange(3000,6000));
writeln('AntiBan: 3-6 second break.');
end;
200..240: begin
wait(randomrange(7000,15000));
writeln('AntiBan: 7-15 second break.');
end;
1000..1040: begin
writeln('AntiBan: Checking Friends List.');
MMouse(576,485,5,5);
ClickMouse2(mouse_left);
wait(randomrange(1000,1750));
end;
7000..7050: begin
P07_HoverSkill('random', randomrange(2000, 4000));
writeln('AntiBan: Checking a random skills exp.');
end;
9600..10000: begin
P07_HoverSkill('ranged', randomrange(2000,5000));
writeln('AntiBan: Checking your range exp.');
end;
end;
end;
begin
//SetupSRL;
P07_DeclarePlayer;
SetupP07Include;
ActivateClient;
ClearDebug;
Wait(1000);
If (Not P07_LoggedIn) then
begin
P07_LogInPlayer;
end;
repeat
AntiBan;
Open_Inv_Tab;
Start_Comp;
Click_to_Continue;
Wield_Arrow;
AntiBan;
Fire_Target;
until(competitionsplayedcount = 10);
begin
writeln('Number of Competitions completed!');
writeln('Logging out...');
MMouse(644,483,5,5);
ClickMouse2(mouse_left);
wait(randomrange(500,1500));
MMouse(633,378,5,5)
ClickMouse2(mouse_left);
end;
TerminateScript;
end.