westkevin12
2013-05-07 21:49:32
what would be the best way to ensure DDTMs to keep working after the minimap changes from dark to light or light to dark? my only idea would be to make ddtms of the map when it's light and again when it's dark and for each click to look for ddtm or ddtm. but i wanted to ask the comunity if there is a better way I am not thinking of? here is my mapwalking functions.
also should I be using tpas for the color in the ddtms or leave them as single colours with tolerances?
also should I be using tpas for the color in the ddtms or leave them as single colours with tolerances?
program westkevin12yanilironminer;
{$DEFINE SMART8}
{$i srl-osr/srl.simba}
{$I SRL-OSR/SRL/misc/SmartGraphics.Simba}
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True;
end;
var
x, y: integer;
inbank: integer;
BUinbank: integer;
inpit: integer;
BUinpit: integer;
ironSpot: integer;
ironore: integer;
BUironore: integer;
procedure LoadDTM;
begin
inbank := DTMFromString('mbQAAAHicY2VgYDjLwsCwGYgnAfFbIL4BxAVA8RAgzgbicCDuBeL5U6YwFAQaw7F7tgUDF1AcHTNiwWAAAGJVC8g=');
BUinbank := DTMFromString('mggAAAHicY2NgYGhiYmBoBuIuIK6E0nVAHA6U84biMCCOAuIEIJ7R18vw9i0Dw58/TAyNlRVgPogWAcphw4w4MAQAAOQ1D7w=');
inpit := DTMFromString('mggAAAHicY2NgYIhiYmAIAuJYII4H4kIgDgRiP6CcLxB7AHESA4QfAcT15QoMNnp6YGwmy8AQ5uHK0FytwCAClMOGGXFgCAAA/I0JQA==');
BUinpit := DTMFromString('mlwAAAHicY2dgYIhiYmAIAeJoII4DYk8gLgJieyAOBMr7ArErECcCcQ4Q+wOxFxAX1ckzhHuHMBSmZjMEWkkxfPj6AcwHYRGgPC7MiAdDAQD+mA3/');
ironSpot := DTMFromString('78DA63BCCDCCC07095010C9821144365BB32C' + '37F20CD08E5335E02CA5C425563E3E2C1A08CACE603A639186A18580' + '8ABF90394398B5F0D009BDF0DAF');
ironore := DTMFromString('mlwAAAHicY2dgYJBhZmAQB2IxZghbCYj1gVgTiH8B5RkZGRi+AOmPQMwGZDMzQtg+ekoMHjryDBoSggyWSlJgdoCBCoOzhiyDCFAeF2bEg6EAAGMdCSA=');
BUironore := DTMFromString('mggAAAHicY2NgYHgCxB+A+CsQPwPiu1A8FYi7gXgmEC8E4glQdrCxGhgHGKgweOjIMyiJ8oJpEaAcNsyIA0MAALg1DNc=');
end;
procedure FreeAllDTMs;
begin
FreeDtm(inbank);
FreeDtm(BUinbank);
FreeDtm(inpit);
FreeDtm(BUinpit);
FreeDtm(ironSpot);
FreeDtm(ironore);
FreeDtm(BUironore);
writeln('All DTMs have been freed.');
end;
procedure OpenMyBank;
var
MyTPA: TPointArray;
MMTPA: TPoint;
MyATPA: T2DPointarray;
x, y, CTS, TPAL, attempts, i: Integer;
begin
wait(3000);
MakeCompass('E');
setAngle(0);
findnormalrandoms;
repeat
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.09, 0.52);
Inc(attempts) FindColorsSpiralTolerance(MSCx, MSCy, MyTPA, 6587281, MSx1, MSy1, MSx2, MSy2, 7);
ColorToleranceSpeed(CTS);
if Length(MyTPA) = 0 then
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.11, 0.42);
Inc(attempts) FindColorsSpiralTolerance(MSCx, MSCy, MyTPA, 5993086, MSx1, MSy1, MSx2, MSy2, 5);
ColorToleranceSpeed(CTS);
end;
SMART_DrawDots(MyTPA);
MyATPA := tpatoatpaex(mytpa, 20, 10);
TPAL := High(MyATPA);
for i := 0 to TPAL do
MMTPA := MiddleTPA(MyATPA[i]);
MMouse(MMTPA.x, MMTPA.y, 0, 0);
(IsUpTextMultiCustom(['ank', 'boo'])) ClickMouse2(Mouse_Left);
while (isMoving) do
wait(600);
end;
until (BankScreen) or (PinScreen) or (attempts > 10);
if (Attempts > 10) then
WriteLn('could not find the banker')
end;
procedure DepositOre;
begin
if BankScreen then
begin
Deposit(2, 28, true);
wait(300);
CloseBank;
end;
end;
function DDTMWalk(WalkNumber: Integer): Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..3] of TDTMPointDef;
TempTDTM: TDTM;
begin
case WalkNumber of
1:
begin
dtmMainPoint.x := 636;
dtmMainPoint.y := 96;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 8027527;
dtmMainPoint.Tolerance := 255;
dtmSubPoints[0].x := 636;
dtmSubPoints[0].y := 96;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 8027527;
dtmSubPoints[0].Tolerance := 255;
dtmSubPoints[1].x := 602;
dtmSubPoints[1].y := 104;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 230;
dtmSubPoints[1].Tolerance := 35;
dtmSubPoints[2].x := 602;
dtmSubPoints[2].y := 112;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 230;
dtmSubPoints[2].Tolerance := 35;
dtmSubPoints[3].x := 602;
dtmSubPoints[3].y := 120;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 230;
dtmSubPoints[3].Tolerance := 35;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
2:
begin
dtmMainPoint.x := 605;
dtmMainPoint.y := 77;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 5395547;
dtmMainPoint.Tolerance := 255;
dtmSubPoints[0].x := 605;
dtmSubPoints[0].y := 77;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 5395547;
dtmSubPoints[0].Tolerance := 255;
dtmSubPoints[1].x := 602;
dtmSubPoints[1].y := 104;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 230;
dtmSubPoints[1].Tolerance := 35;
dtmSubPoints[2].x := 602;
dtmSubPoints[2].y := 112;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 230;
dtmSubPoints[2].Tolerance := 35;
dtmSubPoints[3].x := 602;
dtmSubPoints[3].y := 120;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 230;
dtmSubPoints[3].Tolerance := 35;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
3:
begin
dtmMainPoint.x := 612;
dtmMainPoint.y := 67;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1209137;
dtmMainPoint.Tolerance := 255;
dtmSubPoints[0].x := 612;
dtmSubPoints[0].y := 67;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1209137;
dtmSubPoints[0].Tolerance := 255;
dtmSubPoints[1].x := 601;
dtmSubPoints[1].y := 72;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 212257;
dtmSubPoints[1].Tolerance := 30;
dtmSubPoints[2].x := 612;
dtmSubPoints[2].y := 57;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 15333098;
dtmSubPoints[2].Tolerance := 30;
dtmSubPoints[3].x := 619;
dtmSubPoints[3].y := 18;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 15333098;
dtmSubPoints[3].Tolerance := 30;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
4:
begin
dtmMainPoint.x := 595;
dtmMainPoint.y := 59;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1208402;
dtmMainPoint.Tolerance := 255;
dtmSubPoints[0].x := 595;
dtmSubPoints[0].y := 59;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1208402;
dtmSubPoints[0].Tolerance := 255;
dtmSubPoints[1].x := 603;
dtmSubPoints[1].y := 72;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 212257;
dtmSubPoints[1].Tolerance := 255;
dtmSubPoints[2].x := 619;
dtmSubPoints[2].y := 34;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 610346;
dtmSubPoints[2].Tolerance := 35;
dtmSubPoints[3].x := 609;
dtmSubPoints[3].y := 23;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 4999251;
dtmSubPoints[3].Tolerance := 35;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
5:
begin
dtmMainPoint.x := 593;
dtmMainPoint.y := 85;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1209163;
dtmMainPoint.Tolerance := 255;
dtmSubPoints[0].x := 593;
dtmSubPoints[0].y := 85;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1209163;
dtmSubPoints[0].Tolerance := 255;
dtmSubPoints[1].x := 603;
dtmSubPoints[1].y := 74;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4999251;
dtmSubPoints[1].Tolerance := 35;
dtmSubPoints[2].x := 596;
dtmSubPoints[2].y := 58;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 4999251;
dtmSubPoints[2].Tolerance := 35;
dtmSubPoints[3].x := 580;
dtmSubPoints[3].y := 59;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3485241;
dtmSubPoints[3].Tolerance := 35;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
6:
begin
dtmMainPoint.x := 1036;
dtmMainPoint.y := 219;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 2328426;
dtmMainPoint.Tolerance := 255;
dtmSubPoints[0].x := 1036;
dtmSubPoints[0].y := 219;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 2328426;
dtmSubPoints[0].Tolerance := 255;
dtmSubPoints[1].x := 1025;
dtmSubPoints[1].y := 213;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4736060;
dtmSubPoints[1].Tolerance := 30;
dtmSubPoints[2].x := 1036;
dtmSubPoints[2].y := 234;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 930614;
dtmSubPoints[2].Tolerance := 30;
dtmSubPoints[3].x := 991;
dtmSubPoints[3].y := 239;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 15461866;
dtmSubPoints[3].Tolerance := 30;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
7:
begin
dtmMainPoint.x := 1027;
dtmMainPoint.y := 200;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 2328418;
dtmMainPoint.Tolerance := 255;
dtmSubPoints[0].x := 1027;
dtmSubPoints[0].y := 200;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 2328418;
dtmSubPoints[0].Tolerance := 255;
dtmSubPoints[1].x := 1040;
dtmSubPoints[1].y := 179;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 1463076;
dtmSubPoints[1].Tolerance := 25;
dtmSubPoints[2].x := 1025;
dtmSubPoints[2].y := 220;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 1463076;
dtmSubPoints[2].Tolerance := 25;
dtmSubPoints[3].x := 1017;
dtmSubPoints[3].y := 228;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 1463076;
dtmSubPoints[3].Tolerance := 25;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
8:
begin
dtmMainPoint.x := 1027;
dtmMainPoint.y := 230;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 7171958;
dtmMainPoint.Tolerance := 255;
dtmSubPoints[0].x := 1027;
dtmSubPoints[0].y := 230;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 7171958;
dtmSubPoints[0].Tolerance := 255;
dtmSubPoints[1].x := 1011;
dtmSubPoints[1].y := 248;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3494513;
dtmSubPoints[1].Tolerance := 35;
dtmSubPoints[2].x := 1048;
dtmSubPoints[2].y := 212;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3494513;
dtmSubPoints[2].Tolerance := 35;
dtmSubPoints[3].x := 984;
dtmSubPoints[3].y := 217;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 930614;
dtmSubPoints[3].Tolerance := 35;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
end;
end;
function walkinbank: boolean;
var
WalkDTM: integer;
aFound: Extended;
begin
WalkDTM := DDTMWalk(1);
if FindDTMRotated(WalkDTM, X, Y, MMx1, MMy1, MMx2, MMy2, - Pi / 2, Pi / 2, Pi / 30, aFound) then
begin
writeln('found dtm');
MMouse(x, y, 0, 0);
ClickMouse2(MOUSE_LEFT);
FFlag(0);
Result := True;
end
else
begin
writeln(' could not find dtm')
end;
end;
function walktogate: boolean;
var
WalkDTM: integer;
aFound: Extended;
begin
WalkDTM := DDTMWalk(2);
if FindDTMRotated(WalkDTM, X, Y, MMx1, MMy1, MMx2, MMy2, - Pi / 2, Pi / 2, Pi / 30, aFound) then
begin
writeln('found dtm');
MMouse(x, y, 0, 0);
ClickMouse2(MOUSE_LEFT);
FFlag(0);
Result := True;
end
else
begin
writeln(' could not find dtm')
end;
end;
function walktofence: boolean;
var
WalkDTM: integer;
aFound: Extended;
begin
WalkDTM := DDTMWalk(3);
if FindDTMRotated(WalkDTM, X, Y, MMx1, MMy1, MMx2, MMy2, - Pi / 2, Pi / 2, Pi / 30, aFound) then
begin
writeln('found dtm');
MMouse(x, y, 0, 0);
ClickMouse2(MOUSE_LEFT);
FFlag(0);
Result := True;
end
else
begin
writeln(' could not find dtm')
end;
end;
function walkbetweentrees: boolean;
var
WalkDTM: integer;
aFound: Extended;
begin
WalkDTM := DDTMWalk(4);
if FindDTMRotated(WalkDTM, X, Y, MMx1, MMy1, MMx2, MMy2, - Pi / 2, Pi / 2, Pi / 30, aFound) then
begin
writeln('found dtm');
MMouse(x, y, 0, 0);
ClickMouse2(MOUSE_LEFT);
FFlag(0);
Result := True;
end
else
begin
writeln(' could not find dtm')
end;
end;
function walkbetweentrees2: boolean;
var
WalkDTM: integer;
aFound: Extended;
begin
WalkDTM := DDTMWalk(5);
if FindDTMRotated(WalkDTM, X, Y, MMx1, MMy1, MMx2, MMy2, - Pi / 2, Pi / 2, Pi / 30, aFound) then
begin
writeln('found dtm');
MMouse(x, y, 0, 0);
ClickMouse2(MOUSE_LEFT);
FFlag(0);
Result := True;
end
else
begin
writeln(' could not find dtm')
end;
end;
function walkfrompit: boolean;
var
WalkDTM: integer;
aFound: Extended;
begin
WalkDTM := DDTMWalk(6);
if FindDTMRotated(WalkDTM, X, Y, MMx1, MMy1, MMx2, MMy2, - Pi / 2, Pi / 2, Pi / 30, aFound) then
begin
writeln('found dtm');
MMouse(x, y, 0, 0);
ClickMouse2(MOUSE_LEFT);
FFlag(0);
Result := True;
end
else
begin
writeln(' could not find dtm')
end;
end;
function walkfrompit2: boolean;
var
WalkDTM: integer;
aFound: Extended;
begin
WalkDTM := DDTMWalk(7);
if FindDTMRotated(WalkDTM, X, Y, MMx1, MMy1, MMx2, MMy2, - Pi / 2, Pi / 2, Pi / 30, aFound) then
begin
writeln('found dtm');
MMouse(x, y, 0, 0);
ClickMouse2(MOUSE_LEFT);
FFlag(0);
Result := True;
end
else
begin
writeln(' could not find dtm')
end;
end;
function walkfrompit3: boolean;
var
WalkDTM: integer;
aFound: Extended;
begin
WalkDTM := DDTMWalk(8);
if FindDTMRotated(WalkDTM, X, Y, MMx1, MMy1, MMx2, MMy2, - Pi / 2, Pi / 2, Pi / 30, aFound) then
begin
writeln('found dtm');
MMouse(x, y, 0, 0);
ClickMouse2(MOUSE_LEFT);
FFlag(0);
Result := True;
end
else
begin
writeln(' could not find dtm')
end;
end;
procedure WalkInPit;
var
aFound: Extended;
attempts: Integer;
begin
FindNormalRandoms;
repeat
Inc(attempts) if FindDTMRotatedAlternating(inpit, x, y, MMX1, MMY1, MMX2, MMY2, - 35, 35, 1, aFound) or FindDTMRotatedAlternating(BUinpit, x, y, MMX1, MMY1, MMX2, MMY2, - 35, 35, 1, aFound) then
begin
mmouse(x, y, 2, 2);
wait(300);
clickmouse2(MOUSE_LEFT);
end;
until FlagPresent or (attempts > 20);
wait(500);
while (isMoving) do
wait(100);
end;
procedure GetIronSpot;
var
aFound: Extended;
begin
if FindDTMRotatedAlternating(ironSpot, x, y, 560, 12, 720, 156, - 15, 15, 2, aFound) then
begin
mmouse(x, y, 0, 0);
clickmouse2(MOUSE_LEFT);
wait(2500);
end;
end;
procedure WalkToPit;
begin
writeln('walking to the pit');
walktogate;
walktofence;
walkbetweentrees;
walkbetweentrees2;
walkinpit;
getironspot;
writeln('getting Iron spot');
end;
function findtheiron(x, y: Integer): Boolean;
var
MyTPA: TPointArray;
MMTPA: TPoint;
MyATPA: T2DPointarray;
TPAL, CTS, i: Integer;
PBox: TBox;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.10, 0.77);
FindColorsSpiralTolerance(MSCx, MSCy, MyTPA, 1252407, MSx1, MSy1, MSx2, MSy2, 4);
ColorToleranceSpeed(CTS);
if Length(MyTPA) = 0 then
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.08, 0.30);
FindColorsSpiralTolerance(MSCx, MSCy, MyTPA, 2108489, MSx1, MSy1, MSx2, MSy2, 7);
ColorToleranceSpeed(CTS);
end;
SMART_DrawDots(MyTPA);
MyATPA := tpatoatpaex(mytpa, 40, 40);
TPAL := High(MyATPA);
for i := 0 to TPAL do
MMTPA := MiddleTPA(MyATPA[i]);
MMouse(MMTPA.x, MMTPA.y, 3, 3);
if (IsUpTextMultiCustom(['ine', 'roc'])) then
begin
result := true;
ClickMouse2(Mouse_Left);
end;
Exit;
end;
procedure mineloop;
var
PBox: TBox;
x, y: integer;
begin
makecompass('E');
findnormalrandoms;
PBox := IntToBox(206, 137, 309, 230);
repeat
findtheiron(x, y);
while (isMoving) do
wait(50);
while (AveragePixelShift(PBox, 250, 500) > 300) do
wait(200);
wait(300 + Random(200));
until invfull;
end;
procedure WalkToBank;
begin
walkfrompit;
walkfrompit2;
walktofence;
walkfrompit3;
walktogate;
walkinbank;
writeln('found the bank')
end;
procedure mainloop;
begin
repeat
mineloop;
walktobank;
wait(100);
OpenMyBank;
while (ismoving) do
wait(200);
Wait(2000 + random(300));
DepositOre;
until False
end;
begin
DeclarePlayers;
SetupSRL;
LoadDTM;
Addonterminate('FreeAllDTMs');
ClearDebug;
writeln('westkevin12`s yanil Iron Banker V1.5');
if not LoggedIn then
LoginPlayer;
wait(5000);
OpenMyBank;
wait(2000);
DepositOre;
mainloop;
end.