Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program BlastFurnaceMithril;
- {$DEFINE SMART}
- {$I RSWalker/Walker.simba}
- {$I AeroLib/AeroLib.Simba}
- const
- USERNAME := '';
- PASSWORD := '';
- procedure w_ClickMouse(box:TBox; btn:Int32); override;
- begin
- MouseBox(box, btn);
- end;
- Procedure mouseBoxHover(x1, y1, x2, y2: Integer; Dist: Integer);
- var
- PT : TPoint;
- procedure customMouse(point: TPoint);
- begin
- case random(0, 6) of
- 0..2: BrakeMMouse(point, random(5), random(5), true);
- 3: BrakeMMouse(point, random(5), random(5), false);
- 4..5: MissMouse(point, random(5), random(5));
- 6: HumanMMouse(point, random(5), random(5));
- end;
- end;
- begin
- getMousePos(pt.x,pt.y);
- PT := randomPointBoxEx(pt,inttobox(x1,y1,x2,y2),Dist);
- brakeMMouse(PT, 0, 0, True);
- wait(randomRange(50,150));
- end;
- var
- RSW:TRSWalker;
- path:TPointArray;
- Obj_coal,
- Obj_Dispenser,
- Obj_Foreman,
- Obj_Dispenser2,
- Obj_Bank: TMSObject;
- coins, x, y: integer;
- procedure tryLogin();
- var
- timer: Timer;
- randomTime: Integer;
- begin
- if (isLoggedIn()) then
- exit();
- timer.start();
- while (not isLoggedIn()) do
- begin
- loginPlayer(true);
- Me.Active := True;
- Me.Name := USERNAME;
- Me.Pass := PASSWORD;
- Me.Member := True;
- if (timer.timeElapsed > RandomTime) then
- begin
- end;
- end;
- end;
- procedure RSWinit;
- var
- x, y: integer;
- begin
- RSW.Init('Blasts.png');
- end;
- Procedure payFee();
- begin
- obj_Foreman.create('Blast Furnace Foreman', ['Talk-to Blast Furnace Foreman', 'Blast Furnace Foreman'], [createCol(6122356, 5, 0.9, 0.9)], [createCol(1714232, 5, 0.9, 0.9)]);
- obj_bank.create('Bank chest', ['Use Bank chest', 'Bank chest'], [createCol(1383720, 2, 0.9, 0.9)], [createCol(1976631, 2, 0.9, 0.9)]);
- setAngle(ANGLE_high);
- obj_Bank.Find();
- fastClick(MOUSE_LEFT);
- wait(random(2500,3000));
- MouseBoxHover(431, 304, 449, 322, randomrange(2, 4));
- wait(random(800,1000));
- fastClick(MOUSE_LEFT);
- MouseBoxHover(188, 103, 191, 105, randomrange(1, 2));
- if WaitUpTextMulti(['Withdraw', 'Coins'], 400) then
- begin
- FastClick(Mouse_Right);
- wait(random(800,1000));
- MouseBoxHover(176, 175, 204, 177, randomrange(1, 2));
- fastclick(mouse_left);
- CloseInterface();
- end;
- end;
- procedure walking5;
- begin
- RSW.walkStyle := wsSPS;
- RSW.skipClose := 15;
- path := [Point(236, 228)];
- RSW.WalkPath(path);
- wait(random(1233,1678));
- end;
- procedure fee;
- begin
- coins:= DTMFromString('mlwAAAHicY2dgYHBmYmAIAGI3ILYGYmMgdgRifyB+AZR/CcSfgPgDED8H4gdAfB+Ir66VApKMWLEIThn8GAoARvgKCQ==');
- writeln('started fee');
- obj_Foreman.find();
- if WaitUpTextMulti(['Talk-to', ' Blast', ' Furnace', ' Foreman'], 400) then
- begin
- writeln('found forman payed');
- FastClick(Mouse_RIGHT);
- waitOption('Pay ',2 );
- Wait(random(3900,4000));
- TypeSend('1');
- if findDTM(coins, x, y, MIX1, MIY1, MIX2, MIY2) then
- begin
- writeln('found coins restarting');
- fee;
- end;
- if not findDTM(coins, x, y, MIX1, MIY1, MIX2, MIY2) then
- begin
- exit;
- end;
- end;
- if not WaitUpTextMulti(['Talk-to', ' Blast', ' Furnace', ' Foreman'], 400) then
- begin
- writeln('restarting fee?');
- fee;
- end;
- if findDTM(coins, x, y, MIX1, MIY1, MIX2, MIY2) then
- begin
- fee;
- end;
- end;
- procedure openbankfirst;
- var
- pnt : Tpoint;
- z : integer;
- begin
- setAngle(ANGLE_high);
- setAngle(ANGLE_high);
- obj_Foreman.create('Blast Furnace Foreman', ['Talk-to Blast Furnace Foreman', 'Blast Furnace Foreman'], [createCol(6122356, 5, 0.9, 0.9)], [createCol(1714232, 5, 0.9, 0.9)]);
- Obj_Bank.Find();
- writeln('found bank 1');
- fastClick(MOUSE_LEFT);
- wait(random(2500,3345));
- MouseBoxHover(431, 304, 449, 322, randomrange(2, 4));
- wait(random(100,200));
- fastClick(MOUSE_LEFT);
- wait(random(1345,1456));
- MouseBoxHover(231, 98, 237, 106, randomrange(2, 4));
- fastClick(MOUSE_LEFT);
- wait(random(100,200));
- MouseBoxHover(127, 92, 145, 112, randomrange(2, 4));
- wait(random(10,20));
- fastClick(MOUSE_right);
- wait(random(100,200));
- MouseBoxHover(67, 213, 145, 229, randomrange(1, 2));
- fastClick(MOUSE_LEFT);
- wait(random(100,200));
- MouseBoxHover(480, 17, 490, 31, randomrange(2, 4));
- fastClick(MOUSE_LEFT);
- MouseBoxHover(573, 231, 583, 235, randomrange(2, 4));
- fastClick(MOUSE_LEFT);
- wait(random(100,200));
- end;
- procedure Conveyor; {Conveyor}
- begin
- obj_Dispenser2.create('Put-ore-on', ['Put-ore-on Conveyor belt'], [createCol(10550, 5, 0.9, 0.9)], [createCol(3233643, 5, 0.9, 0.9)]);
- MouseBoxHover(86, 15, 121, 51, randomrange(2, 4));
- if WaitUpTextMulti(['Put-ore-on Conveyor belt', 'Put-ore-on', 'Conveyor', ' belt'], 400) then
- begin
- FastClick(Mouse_Left);
- repeat
- writeln('looking for color');
- wait(100);
- until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
- TypeSend('1');
- end;
- if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- setAngle(ANGLE_low);
- MouseBoxHover(131, 27, 144, 60, randomrange(2, 4));
- end;
- if WaitUpTextMulti(['Put-ore-on', 'Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- FastClick(Mouse_Left);
- repeat
- writeln('looking for color');
- wait(100);
- until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
- TypeSend('1');
- end;
- if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- setAngle(ANGLE_low);
- MouseBoxHover(160, 27, 184, 54, randomrange(2, 4));
- end;
- if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- FastClick(Mouse_Left);
- repeat
- writeln('looking for color');
- wait(100);
- until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
- TypeSend('1');
- end;
- if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- setAngle(ANGLE_low);
- MouseBoxHover(95, 31, 112, 49, randomrange(2, 4));
- end;
- if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- FastClick(Mouse_Left);
- repeat
- writeln('looking for color');
- wait(100);
- until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
- TypeSend('1');
- end;
- if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- MouseBoxHover(171, 24, 184, 42, randomrange(2, 4));
- end;
- if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- FastClick(Mouse_Left);
- repeat
- writeln('looking for color');
- wait(100);
- until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
- TypeSend('1');
- end;
- if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- MouseBoxHover(83, 21, 103, 38, randomrange(2, 4));
- end;
- if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- FastClick(Mouse_Left);
- repeat
- writeln('looking for color');
- wait(100);
- until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
- TypeSend('1');
- end;
- if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- MouseBoxHover(49, 11, 65, 32, randomrange(2, 4));
- end;
- if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- FastClick(Mouse_Left);
- repeat
- writeln('looking for color');
- wait(100);
- until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
- TypeSend('1');
- end;
- if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- MouseBoxHover(90, 35, 107, 42, randomrange(2, 4));
- end;
- if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- FastClick(Mouse_Left);
- repeat
- writeln('looking for color');
- wait(100);
- until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
- TypeSend('1');
- end;
- if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- MouseBoxHover(80, 43, 88, 45, randomrange(2, 4));
- end;
- if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- FastClick(Mouse_Left);
- repeat
- writeln('looking for color');
- wait(100);
- until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
- TypeSend('1');
- end;
- MouseBoxHover(573, 231, 583, 235, randomrange(2, 4));
- FastClick(Mouse_right);
- waitOption('Empty',2 );
- FastClick(Mouse_Left);
- end;
- procedure rebank;
- begin
- obj_bank.find;
- writeln('searching for bank');
- if WaitUpTextMulti(['Use', 'Use Bank chest', 'Bank', ' chest'], 400) then
- begin
- fastClick(MOUSE_LEFT);
- MouseBoxHover(126, 90, 145, 109, randomrange(1, 2));
- wait(random(1000,2000));
- fastClick(MOUSE_Right);
- wait(random(100,200));
- MouseBoxHover(67, 213, 145, 229, randomrange(1, 2));
- fastClick(MOUSE_LEFT);
- wait(random(100,200));
- CLOSEINTERFACE;
- conveyor;
- Exit;
- end;
- if not WaitUpTextMulti(['Use', 'Use Bank chest', 'Bank', ' chest'], 400) then
- begin
- writeln('RESTARTING BANK');
- rebank;
- end;
- end;
- procedure clickconveyor;
- var
- coal, x, y: integer;
- begin
- setangle(angle_high);
- Coal := DTMFromString('mOwIAAHicvc/PCoJAEMfxyWOv0AP4Dr51gh4ysDKCDLpqFB2CAkMJeoK+g7+Dp4478Nmd/TOz7MLMqsisxllOcsQBe2yxwwYFVppzpFiK55nO3Bqlar3Xk/euuOFh47pDj2GSf/AV339P7nj+Uv1dvGeLBhflSRIzzoKYW7gI86PRn/gB0GktgQ==');
- obj_Dispenser2.find;
- if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
- begin
- fastClick(MOUSE_LEFT);
- writeln('Clicked Conveyor');
- wait(random(1000,1100));
- TypeSend('1');
- end;
- if finddtm(coal, x, y, MIX1, MIY1, MIX2, MIY2) then
- begin
- writeln('RESTARTING CLICK CONVEYOR');
- clickconveyor;
- end;
- end;
- procedure walking1;
- begin
- RSW.walkStyle := wsSPS;
- RSW.skipClose := 15;
- path := [Point(205, 204)];
- RSW.WalkPath(path);
- end;
- procedure walking2;
- begin
- RSW.walkStyle := wsSPS;
- RSW.skipClose := 15;
- path := [Point(225, 221)];
- RSW.WalkPath(path);
- end;
- procedure walking3;
- begin
- RSW.walkStyle := wsSPS;
- RSW.skipClose := 15;
- path := [Point(236, 228)];
- RSW.WalkPath(path);
- end;
- procedure walking4;
- begin
- RSW.walkStyle := wsSPS;
- RSW.skipClose := 15;
- path := [Point(214, 214)];
- RSW.WalkPath(path);
- end;
- procedure walkback;
- begin
- walking2;
- walking3;
- wait(random(1111,2222));
- end;
- procedure StartThatLoop;
- var
- Trips: integer;
- begin
- repeat
- Trips:= Trips+1;
- openbankfirst;
- rebank;
- setAngle(ANGLE_low);
- clickConveyor;
- walkback;
- until(Trips >= 2);
- end;
- procedure rebank2;
- begin
- obj_bank.find;
- writeln('searching for bank');
- if WaitUpTextMulti(['Use', 'Use Bank chest', 'Bank', ' chest'], 400) then
- begin
- fastClick(MOUSE_LEFT);
- MouseBoxHover(90, 98, 98, 104, randomrange(1, 2));
- wait(random(1000,2000));
- fastClick(MOUSE_Right);
- MouseBoxHover(63, 209, 123, 220, randomrange(1, 2));
- wait(random(100,200));
- fastClick(MOUSE_LEFT);
- CLOSEINTERFACE;
- conveyor;
- Exit;
- end;
- if not WaitUpTextMulti(['Use', 'Use Bank chest', 'Bank', ' chest'], 400) then
- begin
- writeln('RESTARTING BANK');
- rebank;
- end;
- end;
- procedure clickbars;
- begin
- Obj_Dispenser.create('Take Bar dispenser', [ 'Take', 'Bar dispenser'], [createCol(6124918, 2, 0.9, 0.9)], [createCol(2763308, 2, 0.9, 0.9)]);
- setAngle(ANGLE_high);
- Obj_Dispenser.find;
- if WaitUpTextMulti(['Bar dispenser', 'Take Bar dispenser', 'Bar dispenser'], 400) then
- begin
- fastclick(mouse_left);
- wait(random(7500,8500));
- MouseBoxHover(317, 139, 329, 147, randomrange(1, 2));
- fastclick(mouse_left);
- wait(random(1234,1345));
- end;
- if findcolortolerance(x, y, 7491150, MIX1, MIY1, MIX2, MIY2, 20) then
- begin
- writeln('Found Bars!');
- walkback;
- exit;
- end;
- if not findcolortolerance(x, y, 7491150, MIX1, MIY1, MIX2, MIY2, 20) then
- begin
- writeln('restarting click bars 1');
- MouseBoxHover(574, 130, 591, 145, randomrange(1, 2));
- fastclick(mouse_left);
- closeinterface;
- clickbars;
- end;
- end;
- Procedure Fortheloop;
- var
- Trips: integer;
- begin
- repeat
- Trips:= Trips+1;
- openbankfirst;
- rebank2;
- setAngle(ANGLE_low);
- clickConveyor;
- clickbars;
- walkback;
- until(Trips >= 4);
- end;
- procedure complex;
- begin
- payfee;
- fee;
- walking5;
- end;
- Procedure FortheloopX2;
- var
- Trips: integer;
- begin
- repeat
- Trips:= Trips+1;
- startthatloop;
- Fortheloop;
- complex;
- until(Trips >= 100);
- end;
- procedure freeRSW;
- var
- steel, OrangeAll, hot, levelup, bars2, x, y: integer;
- path:TPointArray;
- begin
- RSW.Free();
- freedtm(coins);
- freedtm(bankscreen);
- freedtm(steel);
- end;
- begin
- inital;
- trylogin;
- RSWinit;
- payfee;
- fee;
- walking5;
- FortheloopX2;
- AddOnTerminate('freeRSW');
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement