Advertisement
Guest User

Untitled

a guest
Dec 6th, 2016
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.53 KB | None | 0 0
  1. program BlastFurnaceMithril;
  2. {$DEFINE SMART}
  3. {$I RSWalker/Walker.simba}
  4. {$I AeroLib/AeroLib.Simba}
  5. const
  6. USERNAME := '';
  7. PASSWORD := '';
  8.  
  9. procedure w_ClickMouse(box:TBox; btn:Int32); override;
  10. begin
  11. MouseBox(box, btn);
  12. end;
  13. Procedure mouseBoxHover(x1, y1, x2, y2: Integer; Dist: Integer);
  14. var
  15. PT : TPoint;
  16.  
  17. procedure customMouse(point: TPoint);
  18. begin
  19. case random(0, 6) of
  20. 0..2: BrakeMMouse(point, random(5), random(5), true);
  21. 3: BrakeMMouse(point, random(5), random(5), false);
  22. 4..5: MissMouse(point, random(5), random(5));
  23. 6: HumanMMouse(point, random(5), random(5));
  24. end;
  25. end;
  26.  
  27. begin
  28. getMousePos(pt.x,pt.y);
  29. PT := randomPointBoxEx(pt,inttobox(x1,y1,x2,y2),Dist);
  30. brakeMMouse(PT, 0, 0, True);
  31. wait(randomRange(50,150));
  32. end;
  33.  
  34. var
  35. RSW:TRSWalker;
  36. path:TPointArray;
  37. Obj_coal,
  38. Obj_Dispenser,
  39. Obj_Foreman,
  40. Obj_Dispenser2,
  41. Obj_Bank: TMSObject;
  42. coins, x, y: integer;
  43.  
  44.  
  45. procedure tryLogin();
  46. var
  47. timer: Timer;
  48. randomTime: Integer;
  49. begin
  50. if (isLoggedIn()) then
  51. exit();
  52. timer.start();
  53. while (not isLoggedIn()) do
  54. begin
  55. loginPlayer(true);
  56. Me.Active := True;
  57. Me.Name := USERNAME;
  58. Me.Pass := PASSWORD;
  59. Me.Member := True;
  60. if (timer.timeElapsed > RandomTime) then
  61. begin
  62. end;
  63. end;
  64. end;
  65.  
  66. procedure RSWinit;
  67. var
  68. x, y: integer;
  69. begin
  70. RSW.Init('Blasts.png');
  71. end;
  72.  
  73.  
  74. Procedure payFee();
  75. begin
  76. 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)]);
  77. obj_bank.create('Bank chest', ['Use Bank chest', 'Bank chest'], [createCol(1383720, 2, 0.9, 0.9)], [createCol(1976631, 2, 0.9, 0.9)]);
  78. setAngle(ANGLE_high);
  79. obj_Bank.Find();
  80. fastClick(MOUSE_LEFT);
  81. wait(random(2500,3000));
  82. MouseBoxHover(431, 304, 449, 322, randomrange(2, 4));
  83. wait(random(800,1000));
  84. fastClick(MOUSE_LEFT);
  85. MouseBoxHover(188, 103, 191, 105, randomrange(1, 2));
  86. if WaitUpTextMulti(['Withdraw', 'Coins'], 400) then
  87. begin
  88. FastClick(Mouse_Right);
  89. wait(random(800,1000));
  90. MouseBoxHover(176, 175, 204, 177, randomrange(1, 2));
  91. fastclick(mouse_left);
  92. CloseInterface();
  93. end;
  94. end;
  95.  
  96. procedure walking5;
  97. begin
  98. RSW.walkStyle := wsSPS;
  99. RSW.skipClose := 15;
  100. path := [Point(236, 228)];
  101. RSW.WalkPath(path);
  102. wait(random(1233,1678));
  103. end;
  104.  
  105. procedure fee;
  106. begin
  107. coins:= DTMFromString('mlwAAAHicY2dgYHBmYmAIAGI3ILYGYmMgdgRifyB+AZR/CcSfgPgDED8H4gdAfB+Ir66VApKMWLEIThn8GAoARvgKCQ==');
  108. writeln('started fee');
  109. obj_Foreman.find();
  110. if WaitUpTextMulti(['Talk-to', ' Blast', ' Furnace', ' Foreman'], 400) then
  111. begin
  112. writeln('found forman payed');
  113. FastClick(Mouse_RIGHT);
  114. waitOption('Pay ',2 );
  115. Wait(random(3900,4000));
  116. TypeSend('1');
  117. if findDTM(coins, x, y, MIX1, MIY1, MIX2, MIY2) then
  118. begin
  119. writeln('found coins restarting');
  120. fee;
  121. end;
  122. if not findDTM(coins, x, y, MIX1, MIY1, MIX2, MIY2) then
  123. begin
  124. exit;
  125. end;
  126. end;
  127. if not WaitUpTextMulti(['Talk-to', ' Blast', ' Furnace', ' Foreman'], 400) then
  128. begin
  129. writeln('restarting fee?');
  130. fee;
  131. end;
  132. if findDTM(coins, x, y, MIX1, MIY1, MIX2, MIY2) then
  133. begin
  134. fee;
  135. end;
  136. end;
  137.  
  138.  
  139.  
  140.  
  141.  
  142. procedure openbankfirst;
  143. var
  144. pnt : Tpoint;
  145. z : integer;
  146. begin
  147. setAngle(ANGLE_high);
  148. setAngle(ANGLE_high);
  149. 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)]);
  150. Obj_Bank.Find();
  151. writeln('found bank 1');
  152. fastClick(MOUSE_LEFT);
  153. wait(random(2500,3345));
  154. MouseBoxHover(431, 304, 449, 322, randomrange(2, 4));
  155. wait(random(100,200));
  156. fastClick(MOUSE_LEFT);
  157. wait(random(1345,1456));
  158. MouseBoxHover(231, 98, 237, 106, randomrange(2, 4));
  159. fastClick(MOUSE_LEFT);
  160. wait(random(100,200));
  161. MouseBoxHover(127, 92, 145, 112, randomrange(2, 4));
  162. wait(random(10,20));
  163. fastClick(MOUSE_right);
  164. wait(random(100,200));
  165. MouseBoxHover(67, 213, 145, 229, randomrange(1, 2));
  166. fastClick(MOUSE_LEFT);
  167. wait(random(100,200));
  168. MouseBoxHover(480, 17, 490, 31, randomrange(2, 4));
  169. fastClick(MOUSE_LEFT);
  170. MouseBoxHover(573, 231, 583, 235, randomrange(2, 4));
  171. fastClick(MOUSE_LEFT);
  172. wait(random(100,200));
  173. end;
  174.  
  175.  
  176. procedure Conveyor; {Conveyor}
  177. begin
  178. 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)]);
  179. MouseBoxHover(86, 15, 121, 51, randomrange(2, 4));
  180. if WaitUpTextMulti(['Put-ore-on Conveyor belt', 'Put-ore-on', 'Conveyor', ' belt'], 400) then
  181. begin
  182. FastClick(Mouse_Left);
  183. repeat
  184. writeln('looking for color');
  185. wait(100);
  186. until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
  187. TypeSend('1');
  188. end;
  189.  
  190. if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  191. begin
  192. setAngle(ANGLE_low);
  193. MouseBoxHover(131, 27, 144, 60, randomrange(2, 4));
  194. end;
  195. if WaitUpTextMulti(['Put-ore-on', 'Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  196. begin
  197. FastClick(Mouse_Left);
  198. repeat
  199. writeln('looking for color');
  200. wait(100);
  201. until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
  202. TypeSend('1');
  203. end;
  204. if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  205. begin
  206. setAngle(ANGLE_low);
  207. MouseBoxHover(160, 27, 184, 54, randomrange(2, 4));
  208. end;
  209. if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  210. begin
  211. FastClick(Mouse_Left);
  212. repeat
  213. writeln('looking for color');
  214. wait(100);
  215. until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
  216. TypeSend('1');
  217.  
  218. end;
  219. if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  220. begin
  221. setAngle(ANGLE_low);
  222. MouseBoxHover(95, 31, 112, 49, randomrange(2, 4));
  223. end;
  224. if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  225. begin
  226. FastClick(Mouse_Left);
  227. repeat
  228. writeln('looking for color');
  229. wait(100);
  230. until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
  231. TypeSend('1');
  232. end;
  233. if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  234. begin
  235. MouseBoxHover(171, 24, 184, 42, randomrange(2, 4));
  236. end;
  237. if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  238. begin
  239. FastClick(Mouse_Left);
  240. repeat
  241. writeln('looking for color');
  242. wait(100);
  243. until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
  244. TypeSend('1');
  245. end;
  246. if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  247. begin
  248. MouseBoxHover(83, 21, 103, 38, randomrange(2, 4));
  249. end;
  250. if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  251. begin
  252. FastClick(Mouse_Left);
  253. repeat
  254. writeln('looking for color');
  255. wait(100);
  256. until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
  257. TypeSend('1');
  258. end;
  259. if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  260. begin
  261. MouseBoxHover(49, 11, 65, 32, randomrange(2, 4));
  262. end;
  263. if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  264. begin
  265. FastClick(Mouse_Left);
  266. repeat
  267. writeln('looking for color');
  268. wait(100);
  269. until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
  270. TypeSend('1');
  271. end;
  272. if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  273. begin
  274. MouseBoxHover(90, 35, 107, 42, randomrange(2, 4));
  275. end;
  276. if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  277. begin
  278. FastClick(Mouse_Left);
  279. repeat
  280. writeln('looking for color');
  281. wait(100);
  282. until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
  283. TypeSend('1');
  284. end;
  285. if not WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  286. begin
  287. MouseBoxHover(80, 43, 88, 45, randomrange(2, 4));
  288. end;
  289. if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  290. begin
  291. FastClick(Mouse_Left);
  292. repeat
  293. writeln('looking for color');
  294. wait(100);
  295. until findcolor(x, y, 128, McX1, McY1, McX2, McY2);
  296. TypeSend('1');
  297. end;
  298. MouseBoxHover(573, 231, 583, 235, randomrange(2, 4));
  299. FastClick(Mouse_right);
  300. waitOption('Empty',2 );
  301. FastClick(Mouse_Left);
  302. end;
  303.  
  304.  
  305.  
  306. procedure rebank;
  307. begin
  308. obj_bank.find;
  309. writeln('searching for bank');
  310. if WaitUpTextMulti(['Use', 'Use Bank chest', 'Bank', ' chest'], 400) then
  311. begin
  312. fastClick(MOUSE_LEFT);
  313. MouseBoxHover(126, 90, 145, 109, randomrange(1, 2));
  314. wait(random(1000,2000));
  315. fastClick(MOUSE_Right);
  316. wait(random(100,200));
  317. MouseBoxHover(67, 213, 145, 229, randomrange(1, 2));
  318. fastClick(MOUSE_LEFT);
  319. wait(random(100,200));
  320. CLOSEINTERFACE;
  321. conveyor;
  322. Exit;
  323. end;
  324.  
  325. if not WaitUpTextMulti(['Use', 'Use Bank chest', 'Bank', ' chest'], 400) then
  326. begin
  327. writeln('RESTARTING BANK');
  328. rebank;
  329. end;
  330. end;
  331.  
  332.  
  333.  
  334.  
  335. procedure clickconveyor;
  336. var
  337. coal, x, y: integer;
  338. begin
  339. setangle(angle_high);
  340. Coal := DTMFromString('mOwIAAHicvc/PCoJAEMfxyWOv0AP4Dr51gh4ysDKCDLpqFB2CAkMJeoK+g7+Dp4478Nmd/TOz7MLMqsisxllOcsQBe2yxwwYFVppzpFiK55nO3Bqlar3Xk/euuOFh47pDj2GSf/AV339P7nj+Uv1dvGeLBhflSRIzzoKYW7gI86PRn/gB0GktgQ==');
  341. obj_Dispenser2.find;
  342. if WaitUpTextMulti(['Put-ore-on','Put-ore-on Conveyor belt', 'Conveyor', ' belt'], 400) then
  343. begin
  344. fastClick(MOUSE_LEFT);
  345. writeln('Clicked Conveyor');
  346. wait(random(1000,1100));
  347. TypeSend('1');
  348. end;
  349. if finddtm(coal, x, y, MIX1, MIY1, MIX2, MIY2) then
  350. begin
  351. writeln('RESTARTING CLICK CONVEYOR');
  352. clickconveyor;
  353. end;
  354. end;
  355.  
  356.  
  357. procedure walking1;
  358. begin
  359. RSW.walkStyle := wsSPS;
  360. RSW.skipClose := 15;
  361. path := [Point(205, 204)];
  362. RSW.WalkPath(path);
  363. end;
  364.  
  365. procedure walking2;
  366. begin
  367. RSW.walkStyle := wsSPS;
  368. RSW.skipClose := 15;
  369. path := [Point(225, 221)];
  370. RSW.WalkPath(path);
  371. end;
  372.  
  373. procedure walking3;
  374. begin
  375. RSW.walkStyle := wsSPS;
  376. RSW.skipClose := 15;
  377. path := [Point(236, 228)];
  378. RSW.WalkPath(path);
  379. end;
  380.  
  381. procedure walking4;
  382. begin
  383. RSW.walkStyle := wsSPS;
  384. RSW.skipClose := 15;
  385. path := [Point(214, 214)];
  386. RSW.WalkPath(path);
  387. end;
  388.  
  389. procedure walkback;
  390. begin
  391. walking2;
  392. walking3;
  393. wait(random(1111,2222));
  394. end;
  395.  
  396.  
  397. procedure StartThatLoop;
  398. var
  399. Trips: integer;
  400. begin
  401. repeat
  402. Trips:= Trips+1;
  403. openbankfirst;
  404. rebank;
  405. setAngle(ANGLE_low);
  406. clickConveyor;
  407. walkback;
  408. until(Trips >= 2);
  409. end;
  410.  
  411. procedure rebank2;
  412. begin
  413. obj_bank.find;
  414. writeln('searching for bank');
  415. if WaitUpTextMulti(['Use', 'Use Bank chest', 'Bank', ' chest'], 400) then
  416. begin
  417. fastClick(MOUSE_LEFT);
  418. MouseBoxHover(90, 98, 98, 104, randomrange(1, 2));
  419. wait(random(1000,2000));
  420. fastClick(MOUSE_Right);
  421. MouseBoxHover(63, 209, 123, 220, randomrange(1, 2));
  422. wait(random(100,200));
  423. fastClick(MOUSE_LEFT);
  424. CLOSEINTERFACE;
  425. conveyor;
  426. Exit;
  427. end;
  428. if not WaitUpTextMulti(['Use', 'Use Bank chest', 'Bank', ' chest'], 400) then
  429. begin
  430. writeln('RESTARTING BANK');
  431. rebank;
  432. end;
  433. end;
  434.  
  435.  
  436.  
  437. procedure clickbars;
  438. begin
  439. Obj_Dispenser.create('Take Bar dispenser', [ 'Take', 'Bar dispenser'], [createCol(6124918, 2, 0.9, 0.9)], [createCol(2763308, 2, 0.9, 0.9)]);
  440. setAngle(ANGLE_high);
  441. Obj_Dispenser.find;
  442. if WaitUpTextMulti(['Bar dispenser', 'Take Bar dispenser', 'Bar dispenser'], 400) then
  443. begin
  444. fastclick(mouse_left);
  445. wait(random(7500,8500));
  446. MouseBoxHover(317, 139, 329, 147, randomrange(1, 2));
  447. fastclick(mouse_left);
  448. wait(random(1234,1345));
  449. end;
  450. if findcolortolerance(x, y, 7491150, MIX1, MIY1, MIX2, MIY2, 20) then
  451. begin
  452. writeln('Found Bars!');
  453. walkback;
  454. exit;
  455. end;
  456. if not findcolortolerance(x, y, 7491150, MIX1, MIY1, MIX2, MIY2, 20) then
  457. begin
  458. writeln('restarting click bars 1');
  459. MouseBoxHover(574, 130, 591, 145, randomrange(1, 2));
  460. fastclick(mouse_left);
  461. closeinterface;
  462. clickbars;
  463. end;
  464. end;
  465.  
  466.  
  467.  
  468. Procedure Fortheloop;
  469. var
  470. Trips: integer;
  471. begin
  472. repeat
  473. Trips:= Trips+1;
  474. openbankfirst;
  475. rebank2;
  476. setAngle(ANGLE_low);
  477. clickConveyor;
  478. clickbars;
  479. walkback;
  480. until(Trips >= 4);
  481. end;
  482.  
  483. procedure complex;
  484. begin
  485. payfee;
  486. fee;
  487. walking5;
  488. end;
  489.  
  490.  
  491. Procedure FortheloopX2;
  492. var
  493. Trips: integer;
  494. begin
  495. repeat
  496. Trips:= Trips+1;
  497. startthatloop;
  498. Fortheloop;
  499. complex;
  500. until(Trips >= 100);
  501. end;
  502.  
  503. procedure freeRSW;
  504. var
  505. steel, OrangeAll, hot, levelup, bars2, x, y: integer;
  506. path:TPointArray;
  507. begin
  508. RSW.Free();
  509. freedtm(coins);
  510. freedtm(bankscreen);
  511. freedtm(steel);
  512. end;
  513.  
  514.  
  515.  
  516.  
  517. begin
  518. inital;
  519. trylogin;
  520. RSWinit;
  521. payfee;
  522. fee;
  523. walking5;
  524. FortheloopX2;
  525. AddOnTerminate('freeRSW');
  526. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement