Mur4i

Macro - Reparar Arcos TRAP INFINITA MKB (v2)

Jun 1st, 2022 (edited)
1,050
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.63 KB | None | 0 0
  1. $${
  2. ////////////////////////////////////////////////////////////
  3. ////////////////////////////// by MUR4I#0409
  4. ////////////////////////////// Macro - Reparar Arcos TRAP INFINITA MKB (v2) atualizado 04/06/2022
  5. ////////////////////////////////////////////////////////////
  6. LOG(" ");TOGGLE(blues);IF(!blues);LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOFF&4!");STOP;ENDIF;
  7. PLAYSOUND(tile.piston.in);LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aON&2!");
  8. ////////////////////////////////////////////////////////////
  9. ////////////////////////////// CONFIG
  10. ////////////////////////////////////////////////////////////
  11.  
  12. SET(&homelinha,"linha"); //----------- Home olhando para uma placa que vende linha
  13.  
  14. SET(&hometemp,"bluestemp"); //-------- Home temporária para voltar depois de ir comprar linhas
  15.  
  16. SET(#bau_atual,"1"); //----------- Começar sempre pelo baú 1 (de cima pra baixo)
  17.  
  18.  
  19. ////////////////////////////////////////////////////////////
  20. ////////////////////////////// VARIÁVEIS
  21. ////////////////////////////////////////////////////////////
  22. SET(#player_xpos,"%XPOS%");SET(#player_ypos,"%YPOS%");SET(#player_zpos,"%ZPOS%");
  23. SET(#bau_n_abre,0);SET(#tentativas,0);SET(#qtdarco,0);SET(#qtdlinha,0);SET(#ultimo_slot,0);
  24. UNSET(parar);UNSET(pegou_arco);UNSET(limpeza);NSET(@sleeplack);UNSET(#yawblocoferro);UNSET(#pitchblocoferro);UNSET(trocarfila);
  25. SET(#baus_xpos,"%XPOS%");SET(#baus_ypos,"%YPOS%");SET(#baus_zpos,"%ZPOS%");
  26. IF(%DIRECTION% = "N"); SET(&frente,"NORTH"); SET(&atras,"SOUTH"); SET(&direita,"EAST"); SET(&esquerda,"WEST"); ENDIF;
  27. IF(%DIRECTION% = "S"); SET(&frente,"SOUTH"); SET(&atras,"NORTH"); SET(&direita,"WEST"); SET(&esquerda,"EAST"); ENDIF;
  28. IF(%DIRECTION% = "E"); SET(&frente,"EAST"); SET(&atras,"WEST"); SET(&direita,"SOUTH"); SET(&esquerda,"NORTH"); ENDIF;
  29. IF(%DIRECTION% = "W"); SET(&frente,"WEST"); SET(&atras,"EAST"); SET(&direita,"NORTH"); SET(&esquerda,"SOUTH"); ENDIF;
  30. GETIDREL(0,-1,0,#blocoferro1);IF(%#blocoferro1%=42);SET(#yawblocoferro,"0");SET(#pitchblocoferro,"90");ENDIF;
  31. GETIDREL(-1,0,0,#blocoferro2);IF(%#blocoferro2%=42);SET(#yawblocoferro,"270");SET(#pitchblocoferro,"64");ENDIF;
  32. GETIDREL(1,0,0,#blocoferro3);IF(%#blocoferro3%=42);SET(#yawblocoferro,"90");SET(#pitchblocoferro,"64");ENDIF;
  33. GETIDREL(0,0,-1,#blocoferro4);IF(%#blocoferro4%=42);SET(#yawblocoferro,"0");SET(#pitchblocoferro,"64");ENDIF;
  34. GETIDREL(0,0,1,#blocoferro5);IF(%#blocoferro5%=42);SET(#yawblocoferro,"180");SET(#pitchblocoferro,"64");ENDIF;
  35. SET(&verificar_baus,"");
  36. GETIDREL(0,-1,-2,#bau1);GETIDREL(0,0,-2,#bau2);GETIDREL(0,1,-2,#bau3);GETIDREL(0,2,-2,#bau4);GETIDREL(0,3,-2,#bau5);
  37. GETIDREL(0,-1,-3,#bau6);GETIDREL(0,0,-3,#bau7);GETIDREL(0,1,-3,#bau8);GETIDREL(0,2,-3,#bau9);GETIDREL(0,3,-3,#bau10);
  38. SET(&setbau,"23482348/2348g 2348&62348r2348e2348p2348a2348r2348a2348n2348d2348o2348 a2348r2348c2348o2348s2348 2348e2348m2348 2348b2348a2348ú2348s2348 2348i2348n2348f2348i2348n2348i23482348t2348o2348s 2348(2348m23482348k2348b2348) 23482348co2348m2348 2348a2348 2348m2348a2348c2348r2348o2348 2348d2348o2348 2348&f#2348&234882348m2348r2348&234832348b2348l2348u2348e2348ee23482348s 23482348&234842348<32348");
  39. SET(&verificar_baus,"%#bau1%-%#bau2%-%#bau3%-%#bau4%-%#bau5%-%#bau6%-%#bau7%-%#bau8%-%#bau9%-%#bau10%");
  40. IFMATCHES("%&verificar_baus%","^(54|146)-(54|146)-(54|146)-(54|146)-(54|146)-(54|146)-(54|146)-(54|146)-(54|146)-(54|146)$");
  41. LOG("");
  42. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aBaús posicionados corretamente!");
  43. LOG("&bIniciando a macro...");
  44. LOG("");
  45. ELSE;
  46. LOG("");
  47. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOs baús não estão conforme a trap MKB!");
  48. LOG("&bFinalizando...");
  49. LOG("");
  50. TOGGLE(blues);
  51. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOFF&4!");
  52. STOP;
  53. ENDIF;
  54. REPLACE(&setbau,"2348","");
  55. ECHO("%&setbau%")
  56. IF(#pitchblocoferro);
  57. DO();
  58. GUI();
  59. LOOK(NORTH);
  60. IF(trocarfila);
  61. #pos_next_chest = (%XPOS% + 1);
  62. DO;
  63. LOOK(NORTH);
  64. IF(%XPOS%==%#pos_next_chest%);
  65. WAIT(20MS);
  66. BREAK;
  67. ELSEIF((%XPOS%>%#pos_next_chest%)||(%YPOS%!=%#baus_ypos%)||(%ZPOS%!=%#baus_zpos%));
  68. LOG("");
  69. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cAconteceu algum problema.");
  70. LOG("&bFinalizando a macro...");
  71. LOG("");
  72. SET(parar);
  73. BREAK;
  74. ELSE;
  75. GUI(INVENTORY);
  76. KEYDOWN(RIGHT);
  77. IF(%XPOS%==%#pos_next_chest%);
  78. KEYUP(SNEAK);
  79. BREAK;
  80. ELSE;
  81. KEYDOWN(SNEAK);
  82. ENDIF;
  83. ENDIF;
  84. LOOP;
  85. KEYUP(SNEAK);
  86. KEYUP(RIGHT);
  87. UNSET(trocarfila);
  88. ENDIF;
  89.  
  90. IF(parar);
  91. BREAK;
  92. ENDIF;
  93.  
  94. IF((%#bau_atual%=1));
  95. LOOK(+0,+312);
  96. ELSEIF((%#bau_atual%=2));
  97. LOOK(+0,+328);
  98. ELSEIF((%#bau_atual%=3));
  99. LOOK(+0,+0);
  100. ELSEIF((%#bau_atual%=4));
  101. LOOK(+0,+33);
  102. ELSEIF((%#bau_atual%=5));
  103. LOOK(+0,+50);
  104. ENDIF;
  105.  
  106. LOOK(+0,+1,1);
  107. DO(3);
  108. IF((HITID == 54)||(HITID == 146));
  109. KEY(use);
  110. DO(200);
  111. UNTIL(%GUI%="GUICHEST");
  112. ENDIF;
  113. UNTIL(%GUI%="GUICHEST");
  114. WAIT(1T);
  115.  
  116. IF(%GUI%="GUICHEST");
  117.  
  118. FOR(#slot,%#ultimo_slot%,53);
  119. GETSLOTITEM(%#slot%,#id,#stack,#data);
  120. IF(%#id%=261);
  121. SLOTCLICK(%#slot%,L,TRUE);
  122. INC(#qtdarco,1);
  123. ENDIF;
  124. INC(#tentativas,1);
  125. IF(%#qtdarco%>=9);
  126. SET(pegou_arco);
  127. SET(#qtdarco,0);
  128. SET(#ultimo_slot,"%#slot%");
  129. GUI();
  130. BREAK;
  131. ELSEIF(%#tentativas%>=54);
  132. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cNão foram encontrados 9 arcos!");
  133. LOG("&bVerificando no próximo baú...");
  134. IF(%#bau_atual% < 5);
  135. INC(#bau_atual,1)
  136. ELSEIF(%#bau_atual% >= 5);
  137. SET(#bau_atual,1);
  138. SET(trocarfila);
  139. ENDIF;
  140. SET(#ultimo_slot,0);
  141. SET(#tentativas,0);
  142. GUI();
  143. BREAK;
  144. ENDIF;
  145. NEXT;
  146.  
  147. ELSEIF((HITID == 54)||(HITID == 146));
  148. INC(#bau_n_abre,1);
  149. IF(%#bau_n_abre%<=3);
  150. LOG("");
  151. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cO baú não está abrindo! Tentando novamente... &7&o#MR&3&oBLUEEES");
  152. LOG("");
  153. ELSE;
  154. LOG("");
  155. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cAconteceu algum problema.");
  156. LOG("&bFinalizando a macro...");
  157. LOG("");
  158. SET(parar);
  159. BREAK;
  160. ENDIF;
  161. ELSE;
  162. LOG("");
  163. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cVocê não está olhando para um baú.");
  164. LOG("&bFinalizando a macro...");
  165. LOG("");
  166. SET(parar);
  167. BREAK;
  168. ENDIF;
  169.  
  170. IF(pegou_arco);
  171. WAIT(1);
  172. GUI();
  173. DO(2);
  174. FOR(#slot,1,9);
  175. SLOT(%#slot%);
  176. DO();
  177. LOOK(%#yawblocoferro%,%#pitchblocoferro%);
  178. KEY(use);
  179. WAIT(100ms);
  180. IF(@sleeplack);
  181. BREAK;
  182. ENDIF;
  183. UNTIL((%DURABILITY%=384)||(@sleeplack));
  184. IF(@sleeplack);
  185. LOG("");
  186. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cAcabaram as linhas!");
  187. LOG("&bTentando realizar a compra...");
  188. LOG("");
  189. // UNSET(pegou_arco);
  190. // SET(parar);
  191. // BREAK;
  192. ECHO("/sethome %&hometemp%");
  193. WAIT(200ms);
  194. ECHO("/sethome %&hometemp%");
  195. WAIT(1);
  196. DO(2);
  197. ECHO("/home %&homelinha%");
  198. WAIT(3);
  199. LOOP;
  200. WAIT(100ms)
  201. ECHO("/menuloja on")
  202. WAIT(100ms)
  203. ECHO("/esconder")
  204. DO;
  205. KEY(use);
  206. WAIT(500ms);
  207. UNTIL(%GUI% = "GUICHEST");
  208. WAIT(1);
  209. DO(10);
  210. SLOTCLICK(2,l,false)
  211. WAIT(1)
  212. LOOP;
  213. DO(2);
  214. ECHO("/home %&hometemp%");
  215. KEYDOWN(JUMP);
  216. WAIT(3);
  217. LOOP;
  218. KEYUP(JUMP);
  219. UNSET(@sleeplack);
  220. ENDIF;
  221. NEXT;
  222. LOOP;
  223. IF(!parar);
  224. LOG("");
  225. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aReparei toda hotbar!");
  226. LOG("&bIniciando limpeza...");
  227. LOG("");
  228. UNSET(pegou_arco);
  229. SET(limpeza);
  230. ENDIF;
  231. ENDIF;
  232. IF(limpeza);
  233. WAIT(1);
  234. GUI();
  235. DO(2)
  236. FOR(#slot,1,9);
  237. LOOK(%&frente%);
  238. SLOT(%#slot%);
  239. DO();
  240. KEY(DROP);
  241. WAIT(100ms);
  242. UNTIL(%DURABILITY%=0);
  243. NEXT;
  244. LOOP;
  245. LOG("");
  246. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aLimpeza finalizada!");
  247. LOG("");
  248. UNSET(limpeza);
  249. ENDIF;
  250. UNTIL(parar);
  251. ELSE;
  252. LOG("");
  253. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cNão foi encontrado nenhum bloco de ferro por perto!");
  254. LOG("");
  255. ENDIF;
  256. TOGGLE(blues);
  257. PLAYSOUND(tile.piston.out);
  258. LOG("");
  259. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aFinalizado! &7&o#MR&3&oBLUEEES");
  260. LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOFF&4!");
  261. LOG("");
  262. STOP;
  263. }$$
Add Comment
Please, Sign In to add comment