Code:
//{$DEFINE SMART8}
{$I SRL/SRL.Simba}
{$I SRL/SRL/Misc/Debug.Simba}
{$I P07Include.Simba}
var
TargetDTM, TargetViewDTM, BronzeArrowDTM, CloseDTM, AgainDTM, ScoreDTM, ClicktoContinueDTM, Continue2DTM, SureDTM, x, y, a, b, i, j, mouseclickcount, targetviewboxtimer, competitionsplayedcount: integer;
const
judgecolor1 = 3364126;
judgecolor2 = 3033937;
judgecolor3 = 3763576;
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));
begin
case random(10000) of
1..50: wait(randomrange(3000,6000));
200..276: wait(randomrange(7000,12000));
9875..10000: P07_HoverSkill('ranged', randomrange(3000,5000));
end;
end;
//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], 5) then
begin
MMouse(x,y,5,5);
ClickMouse2(mouse_left);
writeln('');
writeln('Talking to the Judge...');
end
else
begin
writeln('Unable to find the Judge, looking again...');
P07_MakeCameraAngleHigh;
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;
begin
FreeDTM(AgainDTM);
end;
end
else
begin
begin
if FindDTM(ClicktoContinueDTM, x, y, 10, 351, 511, 470) then
begin
MMouse(x,y,5,5);
ClickMouse2(mouse_left);
wait(randomrange(600,1000));
end;
end;
begin
if FindDTM(SureDTM, x, y, 10, 351, 511, 470) then
begin
MMouse(x,y,5,5);
ClickMouse2(mouse_left);
wait(randomrange(600,1000));
end;
end;
begin
if FindDTM(ClicktoContinueDTM, x, y, 10, 351, 511, 470) then
begin
MMouse(x,y,5,5);
ClickMouse2(mouse_left);
wait(randomrange(600,1000));
end;
end;
begin
if FindDTM(Continue2DTM, x, y, 10, 351, 511, 470) then
begin
MMouse(x,y,5,5);
ClickMouse2(mouse_left);
wait(randomrange(600,1000));
end;
end;
writeln('The competition has started! Wielding the Bronze arrows...');
end;
begin
FreeDTM(ClicktoContinueDTM);
FreeDTM(SureDTM);
FreeDTM(Continue2DTM);
end;
wait(randomrange(600,900));
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);
ClickMouse2(mouse_left);
wait(randomrange(300,500));
end
else
begin
writeln('We did not see any Bronze arrows in your inventory! Checking your equipment...');
MMouse(675,184,10,10); //equipment
ClickMouse2(mouse_left);
wait(randomrange(50,300));
if FindDTM(BronzeArrowDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
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,500));
TargetDTM := DTMFromString('mlwAAAHicY2dgYPgDxD+B+B+U/Q2IGRghYvJArAvEekCsCcTKUGwIxM9vRzNs2tjDEJkizpAVZsMQnTWfYW2YP0N8rhEDF1AeF2bEg6EAAKUoEN4=');
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(400,900));
ClickMouse(x,y,mouse_left);
repeat
if FindDTM(TargetDTM, x, y, MSX1, MSY1, MSX2, MSY2) 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(80,105)); //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);
wait(randomrange(300,700));
ClickMouse2(mouse_left);
wait(randomrange(200,600));
end;
end;
end
else
begin
FreeDTM(TargetDTM);
writeln('Unable to find Target... Trying again...');
Fire_Target;
end;
competitionsplayedcount := competitionsplayedcount + 1;
writeln('Competitions Played:' + IntToStr(competitionsplayedcount) +'!');
FreeDTM(TargetDTM);
FreeDTM(CloseDTM);
FreeDTM(ScoreDTM);
FreeDTM(TargetViewDTM);
end;
begin
//SetupSRL;
P07_DeclarePlayer;
SetupP07Include;
ActivateClient;
ClearDebug;
Wait(1000);
If (Not P07_LoggedIn) then
begin
P07_LogInPlayer;
end;
repeat
Open_Inv_Tab;
Start_Comp;
Click_to_Continue;
Wield_Arrow;
Fire_Target;
until(competitionsplayedcount = 500);
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.