Echo_
2011-03-30 21:53:10
How Long have You Played Runescape?
5 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
N/A
What is your general programming knowledge?
Java, Pascal, learning C++
Are you a member of any other communities?
http://www.moparisthebest.com/smf/index.php
Tell us about yourself…
Please show us one (or multiple) of your scripts.
5 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
N/A
What is your general programming knowledge?
Java, Pascal, learning C++
Are you a member of any other communities?
http://www.moparisthebest.com/smf/index.php
Tell us about yourself…
From: Echo_
My name is Quanah Ecoffey, I am from Colorado, US and am 16 years old (17 in April). My current interests are mainly software related, I want to have a job in software development when I get out of college. Other than scripting, I also enjoy client hacking and developing bots. Other than that, I enjoy skateboarding and hiking.
Please show us one (or multiple) of your scripts.
{******************************************************************************\
| |
| Varrock East Iron Miner |
| |
| by Echo_ |
| |
|******************************************************************************|
| Fill in the marked section below in order to set up the script. |
\******************************************************************************}
program MineiroDeFerro;
{$DEFINE SMART}
{$i SRL/SRL.scar}
{$i SRL/SRL/misc/stats.simba}
{--------------COMPLETE THE FOLLOWING CONSTANTS TO FIT YOUR NEEDS--------------}
const
STATS_NAME = '';//Your SRL Stats login name
STATS_PASS = '';//Your SRL Stats password
IRON_TO_MINE = 0;//Amount of iron ore you want to mine
TAKE_BREAKS = False;//True if you want to take breaks, False if you don't
BREAK_AFTER = 0;//The amount of time the script will run until taking a break
R_BREAK_AFTER = 0;//Randomness added to BREAK_AFTER
BREAK_FOR = 0;//The amount of time to break before logging in again
R_BREAK_FOR = 0;//Randomness added to BREAK_FOR
SERVER = 66;
MEMBERS = False;
SIGNED = True;
HD = False;
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
begin
Name := '';//Your RuneScape login name
Pass := '';//Your RuneScape password
Nick := '';//A nickname for this account
Active := True;
Pin := '';//Your pin number (leave blank if you don't have one)
BoxRewards := ['mote', 'ostume', 'oins', 'aphire', 'ssence'];
end;
end;
{--------------------DON'T TOUCH ANYTHING BEYOND THIS POINT--------------------}
var
BreakRounds, TotalBreaks, IronMined, ExpGained, AntiBanned: Integer;
procedure CheckSetup;
begin
if (IRON_TO_MINE <= 0) then
begin
Writeln('Please enter a valid amount of iron to mine.');
TerminateScript;
end;
end;
procedure Antiban;
begin
case Random(50) of
0: RandomRClick;
1: PickUpMouse;
2: BoredHuman;
3: ExamineInv;
4: Wait(500 + Random(250));
end;
Inc(AntiBanned);
end;
function BreakHandler(BreakIn, BreakFor, randBreakIn, randBreakFor: Integer): Boolean;
var
w, x, y, z: Integer;
begin
if not LoggedIn then Exit;
w := (BreakIn * 60000);
x := (BreakFor * 60000);
y := RandomRange(-randBreakIn * 60000, randBreakIn * 60000);
z := RandomRange(-randBreakFor * 60000, randBreakFor * 60000);
if (GetTimeRunning < ((w) + (y) + BreakRounds)) then Exit
else
if (GetTimeRunning > ((w) + (y) + BreakRounds)) then
begin
Writeln('Taking a break for about ' + IntToStr(BreakFor) + ' minutes.');
Logout;
Wait((x) + (z));
Writeln('Logging in.');
LoginPlayer;
Result := LoggedIn;
FindNormalRandoms;
IncEx(BreakRounds, (w) + (x));
Inc(TotalBreaks);
Writeln('The next break will occur in about ' + IntToStr(BreakIn) + ' minutes.');
end;
end;
procedure Bank;
var
IronOre, x, y, Trees: Integer;
begin
IronOre := DTMFromString('mggAAAHicY2NgYHBlYmCwB2I/IHYGYhMg9gfip0C5a0D8Gog/AvEbIL4NxFZKkkCSCQPzM2AHjDgwBAAA2PQHnQ==');
if not LoggedIn then Exit;
SetAngle(True);
MakeCompass('s');
OpenBankGlass('veb', False, False);
Wait(200 + Random(50));
if not BankScreen or PinScreen then
begin
OpenBankNPC;
Wait(200 + Random(50));
end;
if not BankScreen or PinScreen then
begin
OpenBankQuiet('veb');
Wait(200 + Random(50));
end;
BankTab(1);
FixBank;
Wait(200 + Random(100));
if FindDTM(IronOre, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
MMouse(x, y, 4, 4);
if WaitUpTextMulti(['ron', 'ore'], 500 + Random(100)) then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, False);
Wait(100 + Random(50));
ChooseOptionMulti(['eposit', 'll']);
Wait(100 + Random(50));
CloseBank;
end;
end else Writeln('Couldn''t find Iron Ore.');
FreeDTM(IronOre);
FindNormalRandoms;
end;
function FirstPoint: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 911;
dtmMainPoint.y := 307;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 9014674;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 911;
dtmSubPoints[0].y := 307;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 9014674;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 919;
dtmSubPoints[1].y := 298;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4616060;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 903;
dtmSubPoints[2].y := 300;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 4749184;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 920;
dtmSubPoints[3].y := 314;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 4748160;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 906;
dtmSubPoints[4].y := 314;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 4551290;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
function SecondPoint: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 932;
dtmMainPoint.y := 278;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 9014674;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 932;
dtmSubPoints[0].y := 278;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 9014674;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 936;
dtmSubPoints[1].y := 269;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4749184;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 928;
dtmSubPoints[2].y := 270;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 4750716;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 937;
dtmSubPoints[3].y := 283;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3553082;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 928;
dtmSubPoints[4].y := 282;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 4618364;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
function ThirdPoint: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 923;
dtmMainPoint.y := 268;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 9014674;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 923;
dtmSubPoints[0].y := 268;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 9014674;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 927;
dtmSubPoints[1].y := 261;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4031618;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 917;
dtmSubPoints[2].y := 261;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3701106;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 919;
dtmSubPoints[3].y := 275;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3436393;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 927;
dtmSubPoints[4].y := 276;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3304293;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
function FourthPoint: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 944;
dtmMainPoint.y := 248;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 9014674;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 944;
dtmSubPoints[0].y := 248;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 9014674;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 244;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4750702;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 955;
dtmSubPoints[2].y := 245;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 1267494;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 955;
dtmSubPoints[3].y := 254;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3436398;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 935;
dtmSubPoints[4].y := 252;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 4750707;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
function FifthPoint: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 956;
dtmMainPoint.y := 224;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 9014674;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 956;
dtmSubPoints[0].y := 224;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 9014674;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 944;
dtmSubPoints[1].y := 219;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4288876;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 948;
dtmSubPoints[2].y := 231;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 5796203;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 964;
dtmSubPoints[3].y := 217;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3958371;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 971;
dtmSubPoints[4].y := 227;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3826781;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
function SixthPoint: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 965;
dtmMainPoint.y := 224;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 8817298;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 965;
dtmSubPoints[0].y := 224;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 8817298;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 955;
dtmSubPoints[1].y := 219;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 933229;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 972;
dtmSubPoints[2].y := 218;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2705481;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 974;
dtmSubPoints[3].y := 230;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3959397;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 956;
dtmSubPoints[4].y := 230;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 4610904;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
function SeventhPoint: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 963;
dtmMainPoint.y := 225;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 8752272;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 963;
dtmSubPoints[0].y := 225;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 8752272;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 948;
dtmSubPoints[1].y := 221;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4354938;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 973;
dtmSubPoints[2].y := 220;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3171184;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 970;
dtmSubPoints[3].y := 235;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2443864;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 955;
dtmSubPoints[4].y := 234;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3167578;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
function EighthPoint: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 971;
dtmMainPoint.y := 240;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 3825245;
dtmMainPoint.Tolerance := 0;
dtmSubPoints[0].x := 971;
dtmSubPoints[0].y := 240;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 3825245;
dtmSubPoints[0].Tolerance := 0;
dtmSubPoints[1].x := 960;
dtmSubPoints[1].y := 225;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 9145234;
dtmSubPoints[1].Tolerance := 0;
dtmSubPoints[2].x := 980;
dtmSubPoints[2].y := 225;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2838874;
dtmSubPoints[2].Tolerance := 0;
dtmSubPoints[3].x := 940;
dtmSubPoints[3].y := 255;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 9145234;
dtmSubPoints[3].Tolerance := 0;
dtmSubPoints[4].x := 987;
dtmSubPoints[4].y := 255;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3235175;
dtmSubPoints[4].Tolerance := 0;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
function NinthPoint: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 959;
dtmMainPoint.y := 261;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 3102812;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 959;
dtmSubPoints[0].y := 261;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 3102812;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 953;
dtmSubPoints[1].y := 257;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 2969210;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 954;
dtmSubPoints[2].y := 269;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3765617;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 966;
dtmSubPoints[3].y := 268;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3235936;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 962;
dtmSubPoints[4].y := 256;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3167582;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
procedure WalkToMine;
var
ClickPath, x, y: Integer;
begin
if not LoggedIn then Exit;
SetRun(True);
Writeln('Walking to the mine.');
ClickPath := FirstPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
FindNormalRandoms;
ClickPath := SecondPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
FindNormalRandoms;
ClickPath := ThirdPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
FindNormalRandoms;
ClickPath := FourthPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
FindNormalRandoms;
ClickPath := FifthPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
FindNormalRandoms;
ClickPath := SixthPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
FindNormalRandoms;
ClickPath := SeventhPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
FindNormalRandoms;
ClickPath := EighthPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
FindNormalRandoms;
ClickPath := NinthPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
FindNormalRandoms;
Wait(2000 + Random(500));
Writeln('Successfully reached the mine.');
end;
procedure MineIron;
var
x, y, IronOre: Integer;
begin
IronOre := DTMFromString('mggAAAHicY2NgYHBlYmCwB2I/IHYGYhMg9gfip0C5a0D8Gog/AvEbIL4NxFZKkkCSCQPzM2AHjDgwBAAA2PQHnQ==');
if not LoggedIn then Exit;
MakeCompass('n');
repeat
if FindObjCustom(x, y, ['ocks', 'ock', 'cks'], [2963281, 2831437, 2568006, 3028818], 5) then
begin
MMouse(x, y, 2, 2);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
Writeln('Mining iron ore.');
Wait(1500 + Random(300));
repeat
Wait(1);
AntiBan;
FindNormalRandoms;
until(FindBlackChatMessage('ou manage to mine some iron'));
end;
until(InvFull);
IncEx(IronMined, CountItems('dtm', IronOre, []));
IncEx(ExpGained, (CountItems('dtm', IronOre, []) * (35)));
Stats_IncVariable('Iron Ore (Mined)', CountItems('dtm', IronOre, []));
Stats_IncVariable('Total EXP Gained', (CountItems('dtm', IronOre, []) * (35)));
Stats_Commit;
end;
procedure WalkToBank;
var
ClickPath, x, y: Integer;
begin
if not LoggedIn then Exit;
Writeln('Walking to the bank.');
SetAngle(True);
MakeCompass('S');
ClickPath := EighthPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
ClickPath := SeventhPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
ClickPath := SixthPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
ClickPath := FifthPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
ClickPath := FourthPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
ClickPath := ThirdPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
ClickPath := SecondPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
ClickPath := FirstPoint;
if DTMRotated(ClickPath, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
FFlag(7);
FreeDTM(ClickPath);
SymbolAccuracy := 0.5;
if FindSymbol(x, y, 'bank') then
begin
MMouse(x, y, 3, 3);
GetMousePos(x, y);
Wait(100 + Random(50));
Mouse(x, y, 0, 0, True);
end;
SymbolAccuracy := 0.8;
Writeln('Successfully reached the bank.');
end;
procedure ProgressReport;
var
FileName: Integer;
FilePath: string;
begin
FilePath := AppPath + 'Scripts/';
try
FileName := RewriteFile(FilePath + 'MDF_Report.txt', False);
except
Writeln('Error writing to the report file.');
end;
WriteFileString(FileName, '{******************************************************************************\' + #13 + #10);
WriteFileString(FileName, '| |' + #13 + #10);
WriteFileString(FileName, '| Mineiro de Ferro (Iron Miner) |' + #13 + #10);
WriteFileString(FileName, '| |' + #13 + #10);
WriteFileString(FileName, '| by Echo_ |' + #13 + #10);
WriteFileString(FileName, '| |' + #13 + #10);
WriteFileString(FileName, '|******************************************************************************|' + #13 + #10);
WriteFileString(FileName, ' ' + #13 + #10);
WriteFileString(FileName, 'Name = ' + Players[0].Nick + #13 + #10);
WriteFileString(FileName, 'Time Running = ' + Players[0].Nick + #13 + #10);
WriteFileString(FileName, 'Iron Mined = ' + IntToStr(IronMined) + #13 + #10);
WriteFileString(FileName, 'XP Gained = ' + IntToStr(ExpGained) + #13 + #10);
WriteFileString(FileName, 'Antibanned = ' + IntToStr(AntiBanned) + #13 + #10);
WriteFileString(FileName, ' ' + #13 + #10);
WriteFileString(FileName, '\******************************************************************************}' + #13 + #10);
CloseFile(FileName);
end;
procedure MainLoop;
begin
repeat
if (TAKE_BREAKS = True) then
begin
BreakHandler(BREAK_AFTER, BREAK_FOR, R_BREAK_AFTER, R_BREAK_FOR);
end;
Bank;
WalkToMine;
MineIron;
WalkToBank;
ProgressReport;
until((IronMined) >= ((IRON_TO_MINE) / (27)));
end;
begin
Smart_Members := MEMBERS;
Smart_Server := SERVER;
Smart_Signed := SIGNED;
ClearDebug;
CheckSetup;
SetupSRL;
SetupSRLStats(87, STATS_NAME, STATS_PASS);
DeclarePlayers;
LoginPlayer;
MainLoop;
end.