JimmyF

Pesca Organizada - Update Enchant + Repor Linhas

Jan 16th, 2018
329
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 35.30 KB | None | 0 0
  1. $${
  2. //v 1.2.2
  3. //---------------------------------------------------------------------------
  4. // - CHANGELOG -
  5. // v 1.0 - Macro original
  6. // Novas versões por jimmyfilips:
  7. // v 1.1.0 - Modo Encantamento Adicionado
  8. // v 1.2.0 - Modo repor linha adicionado
  9. // v 1.2.1 - Corrigido numero de slots abastecidos para 7 slots
  10. // v 1.2.2 - Corrigido numero minimo de linhas antes de repor para 50 linhas
  11. // v 1.3.0 - Adicionado opção de PAUSA segurando ENTER
  12. // v 1.4.0 - Adicionada configuração de logs e mensagens
  13. // v 1.5.0 - Adicionada opção de usar última configuração
  14. if(beefish);
  15. else;
  16. // OS TEXTOS AQUI ALTERAM SOMENTE O ARQUIVO DE LOG (.TXT)
  17. // USE O SET/UNSET PARA DEFINIR SE A LINHA IRÁ OU NÃO SER REGISTRADA NO LOG
  18. &log_doc = "_PescaOrganizada_";
  19. &log_hr = "---------------------------------------------------------------------------";
  20. set(loglinha1); &log_linha1 = "Aprox. %#tline1% peixes e %#tline5% discos foram guardados.";
  21. set(loglinha4); &log_linha4 = "Auto Fishing [ON]";
  22. set(loglinha5); &log_linha5 = "Auto Fishing [OFF]";
  23. set(loglinha6); &log_linha6 = "10 segundos passados sem resposta!";
  24. set(loglinha7); &log_linha7 = "Parece que você não está onde deveria!";
  25. set(loglinha8); &log_linha8 = "Voltando para /home mar!";
  26. set(loglinha9); &log_linha9 = "Inventário quase cheio. Jogando itens fora!";
  27. unset(loglinha10); &log_linha10 = "Não é necessário separar itens encantados!";
  28. unset(loglinha11); &log_linha11 = "Organizando o inventário para separar itens encantados!";
  29. set(loglinha12); &log_linha12 = "Inventário com poucos slots vazios. Guardando itens!";
  30. set(loglinha13); &log_linha13 = "Processo de venda encerrado!";
  31. // informa a quantidade de linhas antes da frase
  32. set(loglinha14); &log_linha14 = "linhas no inventário, reposição iniciada!";
  33. set(loglinha15); &log_linha15 = "** SEM LINHAS NOS BAÚS, REPOSIÇÃO NECESSÁRIA!";
  34. set(loglinha16); &log_linha16 = "** Por favor, reinicie a macro após reabastecer!";
  35. unset(loglinha17); &log_linha17 = "Não é necessário guardar itens ainda!"
  36. unset(log_linetexts);
  37.  
  38. // SISTEMA DO MACRO ORIGINAL, ESTÁ AQUI APENAS PARA FACILITAR O ACESSO
  39. &linetext1="Guardando peixes";
  40. &line1=^349$;
  41. &linetext2="Guardando armaduras";
  42. &line2_diamante="^310$|^311$|^312$|^313$";
  43. &line2_diamante_ferro="^310$|^311$|^312$|^313$|^306$|^307$|^308$|^309$";
  44. &line2_diamante_ferro_ouro="^310$|^311$|^312$|^313$|^306$|^307$|^308$|^309$|^314$|^315$|^316$|^317$";
  45. &linetext3="Guardando ferramentas e espadas";
  46. &line3_diamante="^276$|^277$|^278$|^279$";
  47. &line3_diamante_ferro="^276$|^277$|^278$|^279$|^256$|^257$|^258$|^267$";
  48. &line3_diamante_ferro_ouro="^276$|^277$|^278$|^279$|^256$|^257$|^258$|^267$|^283$|^284$|^285$|^286$";
  49. &linetext4="Guardando minérios e outros";
  50. &line4="^387|^264$|^265$|^266$|^369$|^370$|^351$|^340$";
  51. &linetext5="Guardando discos";
  52. &line5="^2256$|^2257$|^2258$|^2259$|^2260$|^2261$|^2262$|^2263$|^2264$|^2265$|^2266$|^2267$";
  53.  
  54. // SISTEMA DE SEPARAÇÃO DE ITENS ENCANTADOS
  55. &separar_armaduras="^306$|^307$|^308$|^309$|^310$|^311$|^312$|^313$|^314$|^315$|^316$|^317$";
  56. &separar_ferramentas="^256$|^257$|^258$|^277$|^278$|^279$|^284$|^285$|^286$";
  57. &separar_espadas="^267$|^276$|^283$";
  58. endif;
  59. //---------------------------------------------------------------------------
  60. if(beefish);
  61. unset(beefish);
  62. if((%#tline1%!=0)|(%#tline6%!=0));
  63. #amountvip=(%#tline5%*110)+(%#tline1%*13);#amountnvip=(%#tline5%*100)+(%#tline1%*10);
  64. log("&c» &8Aprox. &6%#tline1%&8 peixes e &6%#tline5%&8 discos foram guardados.");
  65. log("&c» &8Lucro total na warp vip seria de &6%#amountvip%c&8!");
  66. log("&c» &8Lucro total na warp loja seria de &6%#amountnvip%c&8!");
  67. if(loglinha1);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha1%");endif;
  68. endif;
  69. log("&c» &8Auto Fishing &c[OFF]");
  70. if(loglinha5);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha5%");endif;
  71. if(loglinha5);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_hr%");endif;
  72. stop();
  73. else;
  74. log("&c» &8Auto Fishing &a[ON]");
  75. if(loglinha4);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_hr%");endif;
  76. if(loglinha4);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha4%");endif;
  77. //---------------------------------------------------------------------------
  78. #bau_linha=1;
  79. //---------------------------------------------------------------------------
  80. set(beefish);
  81. #hor1=;#ver1=;#hor2=;#ver2=;#hor3=;#ver3=;#hor4=;#ver4=;#hor5=;#ver5=;#sdd=0;;#tline1=0;#tline5=0;
  82. getidrel(+3,0,0,#l1);getidrel(-3,0,0,#l2);getidrel(0,0,+3,#l3);getidrel(0,0,-3,#l4);
  83. getidrel(+3,0,+1,#y1);getidrel(-3,0,+1,#y2);getidrel(+1,0,+3,#y3);getidrel(+1,0,-3,#y4);
  84. getidrel(+1,-1,-3,#down1);getidrel(+1,+0,-3,#down2);getidrel(+1,+1,-3,#down3);
  85. if((%#l4%!=146)&&(%#l4%!=54));&dir=NORTH;#sdd=1;endif;
  86. if((%#l3%!=146)&&(%#l3%!=54));&dir=SOUTH;#sdd=1;endif;
  87. if((%#l1%!=146)&&(%#l1%!=54));&dir=EAST;#sdd=1;endif;
  88. if((%#l2%!=146)&&(%#l2%!=54));&dir=WEST;#sdd=1;endif;
  89. if(((%#y1%!=146)&&(%#y1%!=54))|((%#y2%!=146)&&(%#y2%!=54))|((%#y3%!=146)&&(%#y3%!=54))|((%#y4%!=146)&&(%#y4%!=54))|(%#sdd%=0)|((%#down1%!=146)&&(%#down1%!=54))|((%#down2%!=146)&&(%#down2%!=54))|((%#down3%!=146)&&(%#down3%!=54)));
  90. log("&c» &4Ops, algo no pesqueiro não parece certo!");
  91. log("&c» &8Veja como fazer em &9http://imgur.com/a/B0p8c");
  92. log("&c» &8Se tem certeza que está tudo certo e mesmo assim recebe esta mensagem, olhe manualmente para o lado no qual não há baús no centro e aperte &61&8. Se escolher o lado errado ou o pesqueiro não estiver bem feito, vários bugs poderão ocorrer. Preste atenção!");
  93. set(autom);
  94. do(200);
  95. ifmatches(%DIRECTION%,N);&dir=NORTH;endif;
  96. ifmatches(%DIRECTION%,S);&dir=SOUTH;endif;
  97. ifmatches(%DIRECTION%,E);&dir=EAST;endif;
  98. ifmatches(%DIRECTION%,W);&dir=WEST;endif;
  99. if((KEY_1)||(KEY_NUMPAD1));log(&c» &8Direção gravada com sucesso! &6%&dir%);
  100. unset(autom);wait(2);break;
  101. endif;
  102. loop;
  103. if(autom);
  104. log(&c» &810 segundos passados sem resposta!);
  105. log("&c» &8Auto Fishing &c[OFF]");
  106. if(loglinha6);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha6%");endif;
  107. if(loglinha5);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha5%");endif;
  108. if(loglinha5);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_hr%");endif;
  109. unset(beefish);
  110. stop();
  111. endif;
  112. endif;
  113. #xi=%XPOS%;#yi=%YPOS%;#zi=%ZPOS%;
  114.  
  115. //--------------------------------------------------------------------------------------------
  116. //--------------------------------SISTEMA DE CONFIGURAÇÃO SALVA-------------------------------
  117. //--------------------------------------------------------------------------------------------
  118. if((%@#config_pesca1%="")||(%@#config_pesca2%="")||(%@#config_pesca3%="")||(%@#config_pesca4%=""));
  119. unset(config_salva);
  120. else;
  121. log("&c» &8|-----| &bConfiguração encontrada &8|-----|");
  122. log("&c» &8Aperte &31 &8para &6configurar novamente&8!");
  123. log("&c» &8Aperte &32 &8para &6usar configuração salva&8!");
  124. do;
  125. if((KEY_1)||(KEY_NUMPAD1));log(&c» &8Iniciando nova configuração!);unset(config_salva);wait(1);break;endif;
  126. if((KEY_2)||(KEY_NUMPAD2));log(&c» &8Usando última configuração!);set(config_salva);wait(1);break;endif;
  127. loop;
  128. endif;
  129. //--------------------------------------------------------------------------------------------
  130. //---------------------------------------------FIM--------------------------------------------
  131. //--------------------------------------------------------------------------------------------
  132.  
  133. // if do sistema de config salva
  134. if(config_salva);
  135. //disco
  136. if(%@#config_pesca1%=1);&vip=true;endif;
  137. if(%@#config_pesca1%=2);&vip=false;endif;
  138. if(%@#config_pesca1%=3);&vip=nothing;endif;
  139. if(%@#config_pesca1%=4);&vip=nothing;&line5=empty;endif;
  140. //itens armazenados
  141. if(%@#config_pesca2%=1);&line2="%&line2_diamante%";&line3="%&line3_diamante%";endif;
  142. if(%@#config_pesca2%=2);&line2="%&line2_diamante_ferro%";&line3="%&line3_diamante_ferro%";endif;
  143. if(%@#config_pesca2%=3);&line2="%&line2_diamante_ferro_ouro%";&line3="%&line3_diamante_ferro_ouro%";endif;
  144. // encantamento de armaduras
  145. if(%@#config_pesca3%=1);&opcao_armaduras="todos";endif;
  146. if(%@#config_pesca3%=2);&opcao_armaduras="todas_encantadas";endif;
  147. if(%@#config_pesca3%=3);&opcao_armaduras="todas_com_P4";endif;
  148. if(%@#config_pesca3%=4);&opcao_armaduras="todas_com_P4_sem_ESPINHOS";endif;
  149. //encantamento de itens
  150. if(%@#config_pesca4%=1);&opcao_itens="todos";endif;
  151. if(%@#config_pesca4%=2);&opcao_itens="todos_encantados";endif;
  152. if(%@#config_pesca4%=3);&opcao_itens="todos_com_eff_e_sharp_345";endif;
  153. if(%@#config_pesca4%=4);&opcao_itens="todos_com_eff_e_sharp_5";endif;
  154. else;
  155. //--
  156. log("&c» &8Opções sobre a venda de discos!");
  157. log("&c» &8Aperte &31 &8para vender discos na &6/warp vip&8!");
  158. log("&c» &8Aperte &32 &8para vender discos na &6/warp loja&8!");
  159. log("&c» &8Aperte &33 &8para &4não &8vender discos!");
  160. log("&c» &8Aperte &34 &8para &4não &8guardar discos!");
  161. do;
  162. if((KEY_1)||(KEY_NUMPAD1));@#config_pesca1=1;log(&c» &8Discos serão vendidos na &6/warp vip&8!);&vip=true;break;endif;
  163. if((KEY_2)||(KEY_NUMPAD2));@#config_pesca1=2;log(&c» &8Discos serão vendidos na &6/warp loja&8!);&vip=false;break;
  164. log("&c» &8/home cds em &9http://i.imgur.com/voBbhkx.png");
  165. endif;
  166. if((KEY_3)||(KEY_NUMPAD3));@#config_pesca1=3;log(&c» &8Discos serão &4apenas &8armazenados!);&vip=nothing;break;endif;
  167. if((KEY_4)||(KEY_NUMPAD4));@#config_pesca1=4;log(&c» &8Discos serão jogados fora!);&line5=empty;&vip=nothing;break;endif;
  168. loop;
  169. wait(1);
  170. log("&c» &8Opções sobre os itens armazenados!");
  171. log("&c» &8Aperte &31 &8para guardar itens de &bdiamante&8!");
  172. log("&c» &8Aperte &32 &8para guardar itens de &bdiamante &8e &7ferro&8!");
  173. log("&c» &8Aperte &33 &8para guardar itens de &bdiamante&8, &7ferro &8e &eouro&8!");
  174. do;
  175. if((KEY_1)||(KEY_NUMPAD1));@#config_pesca2=1;log("&c» &8Itens de &bdiamante&8 serão guardados!");
  176. &line2="%&line2_diamante%";
  177. &line3="%&line3_diamante%";break;
  178. endif;
  179. if((KEY_2)||(KEY_NUMPAD2));@#config_pesca2=2;log("&c» &8Itens de &bdiamante&8 e &7ferro&8 serão guardados!");
  180. &line2="%&line2_diamante_ferro%";
  181. &line3="%&line3_diamante_ferro%";break;
  182. endif;
  183. if((KEY_3)||(KEY_NUMPAD3));@#config_pesca2=3;log("&c» &8Itens de &bdiamante&8, &7ferro&8 e &eouro&8 serão guardados!");
  184. &line2="%&line2_diamante_ferro_ouro%";
  185. &line3="%&line3_diamante_ferro_ouro%";break;
  186. endif;
  187. loop;
  188.  
  189. //--------------------------------------------------------------------------------------------
  190. //--------------------------- Adaptação para separar encantamentos ---------------------------
  191. //--------------------------------------------------------------------------------------------
  192. wait(1);
  193. log("&c» &8Opções sobre encantamentos de &7armaduras&8!");
  194. log("&c» &8Aperte &31 &8para guardar &6todas &8as armaduras!");
  195. log("&c» &8Aperte &32 &8para guardar todas as armaduras &bencantadas&8!");
  196. log("&c» &8Aperte &33 &8para guardar armaduras com &bP4&8!");
  197. log("&c» &8Aperte &34 &8para guardar armaduras com &bP4&8 e &4sem espinhos&8!");
  198. do;
  199. if((KEY_1)||(KEY_NUMPAD1));@#config_pesca3=1;log("&c» &6Todas &8as armaduras serão guardadas!");
  200. &opcao_armaduras="todos";break;
  201. endif;
  202. if((KEY_2)||(KEY_NUMPAD2));@#config_pesca3=2;log("&c» &8Armaduras &6encantadas &8serão guardadas!");
  203. &opcao_armaduras="todas_encantadas";break;
  204. endif;
  205. if((KEY_3)||(KEY_NUMPAD3));@#config_pesca3=3;log("&c» &8Armaduras com &6P4 &8serão guardadas!");
  206. &opcao_armaduras="todas_com_P4";break;
  207. endif;
  208. if((KEY_4)||(KEY_NUMPAD4));@#config_pesca3=4;log("&c» &8Armaduras com &6P4 &8e &4sem espinhos &8serão guardadas!");
  209. &opcao_armaduras="todas_com_P4_sem_ESPINHOS";break;
  210. endif;
  211. loop;
  212. //--------------------------------------------------------------------------------------------
  213. wait(1);
  214. log("&c» &8Opções sobre encantamentos de &7itens&8!");
  215. log("&c» &8Aperte &31 &8para guardar &6todos &8os itens!");
  216. log("&c» &8Aperte &32 &8para guardar todos os itens &bencantados&8!");
  217. log("&c» &8Aperte &33 &8para guardar itens com &6Eff &8ou &6Afiada &a3&8, &a4 &8ou &a5&8!");
  218. log("&c» &8Aperte &34 &8para guardar itens com &6Eff &a5 &8ou &6Afiada &a5&8!");
  219. do;
  220. if((KEY_1)||(KEY_NUMPAD1));@#config_pesca4=1;log("&c» &6Todos &8os itens serão guardados!");
  221. &opcao_itens="todos";break;
  222. endif;
  223. if((KEY_2)||(KEY_NUMPAD2));@#config_pesca4=2;log("&c» &8Itens &6encantados &8serão guardados!");
  224. &opcao_itens="todos_encantados";break;
  225. endif;
  226. if((KEY_3)||(KEY_NUMPAD3));@#config_pesca4=3;log("&c» &8Itens com &6Eff &8ou &6 Afiada &a3&8, &a4 &8ou &a5 &8serão guardados!");
  227. &opcao_itens="todos_com_eff_e_sharp_345";break;
  228. endif;
  229. if((KEY_4)||(KEY_NUMPAD4));@#config_pesca4=4;log("&c» &8Itens com &6Eff &a5 &8ou &6Afiada &a5 &8serão guardados!");
  230. &opcao_itens="todos_com_eff_e_sharp_5";break;
  231. endif;
  232. loop;
  233. //--------------------------------------------------------------------------------------------
  234. //---------------------------------------------FIM--------------------------------------------
  235. //--------------------------------------------------------------------------------------------
  236. // endif do sistema de config salva
  237. endif;
  238. //--
  239.  
  240. do;
  241. #pass=0;
  242. for(#p,9,44);
  243. if((%#yi%!=%YPOS%)|(%#xi%!=%XPOS%)|(%#zi%!=%ZPOS%));
  244. log(&c» &8Parece que você não está onde deveria!);
  245. log(&c» &8Voltando para &3/home mar&8!);
  246. if(loglinha7);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha7%");endif;
  247. if(loglinha8);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha8%");endif;
  248. do;
  249. }$$/home mar$${
  250. if((%#yi%=%YPOS%)&&(%#xi%=%XPOS%)&&(%#zi%=%ZPOS%));
  251. wait(3);keydown(jump);wait(1);keyup(jump);wait(1);
  252. break;
  253.  
  254. else;
  255.  
  256. wait(8);
  257.  
  258. endif;
  259. loop;
  260. endif;
  261. ifmatches(%GUI%,GUIINVENTORY);
  262. else;
  263. wait(2);
  264. do;
  265. ifmatches(%GUI%,GUICHAT);else;break;endif;loop;
  266. gui(inventory);
  267. endif;
  268. //--------------------------------------------------------------------------------------------
  269. //---------------------------------------SISTEMA DE PAUSE-------------------------------------
  270. //--------------------------------------------------------------------------------------------
  271. if(KEY_RETURN);INC(#pausa,1);ELSE;SET(#pausa,0);endif;
  272. if(%#pausa%=5);
  273. SET(#pausa,0);gui();log(" ");
  274. log("&c» &8Pausa manual solicitada, pausando a macro!");
  275. log(" ");wait(3);
  276. do;
  277. if(KEY_RETURN);INC(#pausa,1);wait(100ms);ELSE;SET(#pausa,0);endif;
  278. if(%#pausa%=5);
  279. log(" ");
  280. log("&c» &8Pausa manual encerrada, retomando a macro!");;
  281. log(" ");break;endif;
  282. loop;
  283. endif;
  284. //--------------------------------------------------------------------------------------------
  285. //---------------------------------------------FIM--------------------------------------------
  286. //--------------------------------------------------------------------------------------------
  287. look(%&dir%);
  288. look(0,-90);
  289. pick(346);
  290. wait(10ms);
  291. key(use);
  292. wait(100ms);
  293. key(use);
  294. if(%DURABILITY%<20);
  295. gui();
  296. wait(1);
  297. look(0,90);
  298. wait(160ms)
  299. key(use);
  300. key(attack);
  301. key(use);
  302. wait(1);
  303. gui(inventory);
  304. endif;
  305. getslotitem(%#p%,#idx,#stackx);
  306. if(%#idx%=0);inc(#pass);endif;
  307. next;
  308. if(%#pass%<3);
  309. log(&c» &8Inventário quase cheio. Jogando itens fora!);
  310. if(loglinha9);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha9%");endif;
  311. look(%&dir%);
  312. #qt=0;
  313. for(#p,9,44);
  314. getslotitem(%#p%,#idx,#stackx);
  315. ifmatches(%#idx%,%&line1%|%&line2%|%&line3%|%&line4%|%&line5%|^346$|^287$|^0$);
  316. if(%#idx%=0);inc(#qt,1);endif;
  317. else;
  318. inc(#qt,1);
  319. slotclick(%#p%);
  320. slotclick(-999);
  321. wait(80ms);
  322. endif;
  323. next;
  324.  
  325. //--------------------------------------------------------------------------------------------
  326. // ================================= SEPARAR ITENS ENCANTADOS ================================
  327. //--------------------------------------------------------------------------------------------
  328. #slot_linha=9;unset(vara);
  329.  
  330. if((%&opcao_armaduras%="todas")&&(%&opcao_itens%="todos"));
  331. log(&c» &8Não é necessário separar itens encantados!);
  332. if(loglinha10);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha10%");endif;
  333. else;
  334. // Organização do inventario
  335. log(&c» &8Organizando o inventário para separar itens encantados!);
  336. if(loglinha11);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha11%");endif;
  337. GETSLOTITEM(36,#id);if(%#id%=346);set(vara);endif;
  338. for(#i,36,44);
  339. GETSLOTITEM(%#i%,#id);
  340. // ---------- Linhas
  341. if(%#id%=287);
  342. SLOTCLICK(%#i%);wait(120ms);
  343. do;// Sistema
  344. GETSLOTITEM(%#slot_linha%,#id);
  345. if(%#id%=287);
  346. INC(#slot_linha,1);//por
  347. endif;
  348. while(%#id%=287);
  349. SLOTCLICK(%#slot_linha%);wait(120ms);
  350. SLOTCLICK(%#i%);wait(120ms);//jimmy
  351. INC(#slot_linha,1);
  352. endif;//filips
  353. // ---------- Vara
  354. if((%#i%!=36)&&(%#id%=346));
  355. if(vara);
  356. else;
  357. SLOTCLICK(%#i%);wait(120ms);
  358. SLOTCLICK(36);wait(120ms);
  359. SLOTCLICK(%#i%);wait(120ms);
  360. set(vara);
  361. endif;
  362. endif;
  363. next;
  364. // Verificação dos encantamentos
  365. #slot_inv=9;#slot_hotbar=37;
  366. #inventario=0;unset(checar_enchant);
  367. do;
  368. // Verificação da Hotbar
  369. for(#i,36,44);
  370. GETSLOTITEM(%#i%,#id);
  371. #hot_temp=%#i%-35;
  372. slot(%#hot_temp%);wait(150ms);
  373. ifmatches(%#id%,%&separar_armaduras%|%&separar_ferramentas%|%&separar_espadas%);
  374. unset(guardar);
  375. ifmatches(%#id%,%&separar_armaduras%);if(%&opcao_armaduras%="todas");set(guardar);endif;endif;
  376. ifmatches(%#id%,%&separar_ferramentas%);if(%&opcao_itens%="todos");set(guardar);endif;endif;
  377. ifmatches(%#id%,%&separar_espadas%);if(%&opcao_itens%="todos");set(guardar);endif;endif;
  378. if(guardar);
  379. else;
  380. set(jogar_fora);
  381. // ---------- lista de encantamentos ----------
  382. //IFMATCHES("%ENCHANTMENT%","^(Unbreaking|Inquebrável) III$");ENDIF;
  383. FOREACH(enchantments);
  384. ifmatches(%#id%,%&separar_armaduras%);
  385. // ---------- ARMADURAS ----------
  386. if(%&opcao_armaduras%="todas_encantadas");unset(jogar_fora);break;endif;
  387. if(%&opcao_armaduras%="todas_com_P4");
  388. IFMATCHES("%ENCHANTMENT%","^(Proteção|Protection) IV$");unset(jogar_fora);break;ENDIF;
  389. endif;
  390. if(%&opcao_armaduras%="todas_com_P4_sem_ESPINHOS");
  391. IFMATCHES("%ENCHANTMENT%","^(Proteção|Protection) IV$");unset(jogar_fora);ENDIF;
  392. IFMATCHES("%ENCHANTMENT%","^(Espinhos|Thorns)");set(jogar_fora);break;ENDIF;
  393. endif;
  394.  
  395. endif;
  396. ifmatches(%#id%,%&separar_ferramentas%);
  397. // ---------- FERRAMENTAS ----------
  398. if(%&opcao_itens%="todos_encantados");unset(jogar_fora);break;endif;
  399. if(%&opcao_itens%="todos_com_eff_e_sharp_345");
  400. IFMATCHES("%ENCHANTMENT%","^(Eficiência|Efficiency) (III|IV|V)$");unset(jogar_fora);break;ENDIF;
  401. endif;
  402. if(%&opcao_itens%="todos_com_eff_e_sharp_5");
  403. IFMATCHES("%ENCHANTMENT%","^(Eficiência|Efficiency) V$");unset(jogar_fora);break;ENDIF;
  404.  
  405. endif;
  406. endif;
  407. ifmatches(%#id%,%&separar_espadas%);
  408. // ---------- ESPADAS ----------
  409. if(%&opcao_itens%="todos_encantados");unset(jogar_fora);break;endif;
  410. if(%&opcao_itens%="todos_com_eff_e_sharp_345");
  411. IFMATCHES("%ENCHANTMENT%","^(Afiada|Sharpness) (III|IV|V)$");unset(jogar_fora);break;ENDIF;
  412. endif;
  413. if(%&opcao_itens%="todos_com_eff_e_sharp_5");
  414. IFMATCHES("%ENCHANTMENT%","^(Afiada|Sharpness) V$");unset(jogar_fora);break;ENDIF;
  415. endif;
  416. endif;
  417. NEXT;
  418. // ---------- nenhum encantamento encontrado ----------
  419. if(jogar_fora);
  420. inc(#qt,1);
  421. slotclick(%#i%);
  422. slotclick(-999);
  423. wait(120ms);
  424. endif;
  425. endif;
  426. endif;
  427. next;
  428. if(%#inventario%=35);set(checar_enchant);endif;
  429. // Reorganização do inventário para a hotbar
  430. for(#inventario,%#slot_inv%,35);
  431. if(checar_enchant);
  432. break;
  433. wait(1);
  434. endif;
  435. GETSLOTITEM(%#inventario%,#id);
  436. ifmatches(%#id%,%&separar_armaduras%|%&separar_ferramentas%|%&separar_espadas%);
  437. wait(250ms);
  438. SLOTCLICK(%#inventario%);wait(250ms);
  439. SLOTCLICK(%#slot_hotbar%);wait(250ms);
  440. SLOTCLICK(%#inventario%);wait(250ms);
  441. INC(#slot_hotbar,1);
  442. // zera o numero da hot para reiniciar o posicionamento de itens
  443. #slot_inv = %#inventario%+1;
  444. if(%#slot_hotbar%=45);
  445. #slot_hotbar=37;
  446. break;
  447. endif;
  448. endif;
  449. next;
  450. until(checar_enchant);
  451. endif;
  452.  
  453. //--------------------------------------------------------------------------------------------
  454. //---------------------------------------------FIM--------------------------------------------
  455. //--------------------------------------------------------------------------------------------
  456.  
  457. if(%#qt%<8);
  458. log(&c» &8Inventário com poucos slots vazios. Guardando itens!);
  459. if(loglinha12);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha12%");endif;
  460. unset(line1);unset(line2);unset(line3);unset(line4);unset(line5);
  461. for(#i,9,44);
  462. getslotitem(%#i%,#ide,#stacke);
  463. ifmatches(%#ide%,%&line1%);#tline1=%#tline1%+%#stacke%;set(line1);endif;
  464. ifmatches(%#ide%,%&line2%);set(line2);endif;
  465. ifmatches(%#ide%,%&line3%);set(line3);endif;
  466. ifmatches(%#ide%,%&line4%);set(line4);endif;
  467. ifmatches(%#ide%,%&line5%);#tline5=%#tline5%+1;set(line5);endif;
  468. #tim=0;
  469. if(line1);#tim=%#tim%+1;endif;
  470. if(line2);#tim=%#tim%+1;endif;
  471. if(line3);#tim=%#tim%+1;endif;
  472. if(line4);#tim=%#tim%+1;endif;
  473. if(line5);#tim=%#tim%+1;endif;
  474. next;
  475. do(%#tim%);
  476. #hor=0;
  477. #ver=0;
  478. if(line1);
  479. #sidep=180;&current=%&line1%;unset(line1);
  480. #hor=%#hor1%;#ver=%#ver1%;log("&c» &8%&linetext1%!");
  481. if(log_linetexts);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&linetext1%!");endif;
  482. else;
  483. if(line2);
  484. #sidep=90;&current=%&line2%;unset(line2);
  485. #hor=%#hor2%;#ver=%#ver2%;log("&c» &8%&linetext2%!");
  486. if(log_linetexts);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&linetext2%!"); endif;
  487. else;
  488. if(line3);
  489. #sidep=270;&current=%&line3%;unset(line3);
  490. #hor=%#hor3%;#ver=%#ver3%;log("&c» &8%&linetext3%!");
  491. if(log_linetexts);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&linetext3%!");endif;
  492. else;
  493. if(line4);
  494. #sidep=360;&current=%&line4%;unset(line4);
  495. #hor=%#hor4%;#ver=%#ver4%;log("&c» &8%&linetext4%!");
  496. if(log_linetexts);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&linetext4%!");endif;
  497. else;
  498. if(line5);
  499. #sidep=54;&current=%&line5%;unset(line5);
  500. #hor=%#hor5%;#ver=%#ver5%;log("&c» &8%&linetext5%!");
  501. if(log_linetexts);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&linetext5%!");endif;
  502. endif;
  503. endif;
  504. endif;
  505. endif;
  506. endif;
  507. #side=%#sidep%-36;
  508. do;
  509. keyup(sneak);
  510. look(%&dir%);
  511. look(+%#side%,);
  512. look(+%#hor%,+%#ver%);
  513. wait(220ms);
  514. key(use);
  515. do;ifmatches(%GUI%,GUICHEST);break;endif;key(use);wait(1);loop;
  516. wait(220ms);
  517. getslotitem(53,#id,#stackt);
  518. wait(250ms);
  519. if(%#stackt%=0);
  520. for(#i,54,89);
  521. getslotitem(%#i%,#ide,#stacke);
  522. ifmatches(%#ide%,%&current%);
  523. slotclick(%#i%,l,true);
  524. wait(80ms);
  525. endif;
  526. next;
  527. endif;
  528. getslotitem(53,#id,#stackt);
  529. wait(250ms);
  530. if(%#stackt%!=0);
  531. #hor=%#hor%+18;
  532. endif;
  533. if((%#sidep%=360)|(%#sidep%=54));
  534. if(%#hor%>18);
  535. if(%#ver%=36);
  536. if(%#sidep%=360);&line4=empty;endif;
  537. if(%#sidep%=54);
  538. #hor=0;#ver=0;gui();wait(1);
  539. ifmatches(%&vip%,nothing);
  540. &line5=empty;
  541. else;
  542. do;
  543. do;
  544. look(%&dir%);look(+%#side%,);look(+%#hor%,+%#ver%);
  545. wait(220ms);key(use);do;ifmatches(%GUI%,GUICHEST);break;else;look(%&dir%);look(+%#side%,);look(+%#hor%,+%#ver%);wait(220ms);endif;key(use);wait(1);loop;
  546.  
  547. getslotitem(53,#id,#stackt);
  548. wait(250ms);
  549. if(%#stackt%!=0);
  550. for(#i,0,53);
  551. getslotitem(%#i%,#ide,#stacke);
  552. ifmatches(%#ide%,%&current%);
  553. slotclick(%#i%,l,true);
  554. wait(80ms);
  555. endif;
  556. next;
  557. endif;
  558. getslotitem(53,#id,#stackt);
  559. if(%#stackt%=0);
  560. #hor=%#hor%+18;
  561. endif;
  562. if(%#hor%>18);
  563. if(%#ver%=36);
  564. #stackt=1;#pass=1;
  565. endif;
  566. #ver=%#ver%+18;#hor=0;
  567. endif;gui();
  568. wait(500ms);
  569. until(%#stackt%!=0);
  570. gui(inventory);
  571. #cd58=2;#cd59=2;#cd60=2;#cd61=2;#cd62=2;#cd63=2;#cd64=2;#cd65=2;#cd66=2;#cd67=2;
  572. wait(1);
  573. for(#i,9,44);
  574. getslotitem(%#i%,#ide,#stacke);
  575. if(%#ide%=2262);inc(#cd62);endif;if(%#ide%=2263);inc(#cd63);endif;if(%#ide%=2264);inc(#cd64);endif;
  576. if(%#ide%=2265);inc(#cd65);endif;if(%#ide%=2266);inc(#cd66);endif;if(%#ide%=2267);inc(#cd67);endif;
  577. if(%#ide%=2258);inc(#cd58);endif;if(%#ide%=2259);inc(#cd59);endif;if(%#ide%=2260);inc(#cd60);endif;
  578. if(%#ide%=2261);inc(#cd61);endif;
  579. next;
  580. ifmatches(%&vip%,true);
  581. }$$/warp vip$${
  582. gui();
  583. wait(2);keydown(jump);wait(1);keyup(jump);
  584. do(1000);if(%YPOS%=4);wait(3);if(%YPOS%=4);break();endif;endif;loop;keyup(sneak);look(EAST);
  585. do(120);keydown(forward);if(%XPOS%=709);keydown(sneak);endif;until(%XPOS%=710);wait(350ms);
  586. keyup(sneak);keyup(forward);look(WEST);keydown(right);
  587. do(1200);
  588. if(%ZPOS%=653);keydown(sneak);endif;
  589. if(%ZPOS%=652);if(%#cd62%!=2);wait(50ms);keyup(right);do(%#cd62%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=651);endif;endif;
  590. if(%ZPOS%=651);if(%#cd63%!=2);wait(50ms);keyup(right);do(%#cd63%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=650);endif;endif;
  591. if(%ZPOS%=650);if(%#cd64%!=2);wait(50ms);keyup(right);do(%#cd64%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=649);endif;endif;
  592. if(%ZPOS%=649);if(%#cd65%!=2);wait(50ms);keyup(right);do(%#cd65%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=648);endif;endif;
  593. if(%ZPOS%=648);if(%#cd66%!=2);wait(50ms);keyup(right);do(%#cd66%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=647);endif;endif;
  594. if(%ZPOS%=647);if(%#cd67%!=2);wait(50ms);keyup(right);do(%#cd67%);key(attack);wait(350ms);loop;endif;break;endif;
  595. loop;
  596. wait(500ms);
  597. keyup(right);
  598. look(EAST);
  599. keyup(sneak);
  600. do(120);keydown(forward);until(%XPOS%=733);keyup(forward);keydown(sneak);do(120);keydown(forward);until(%XPOS%=734);
  601. wait(200ms);keyup(forward);wait(200ms);wait(200ms);
  602. do(1200);
  603. keydown(sneak);
  604. keydown(right);
  605. if(%ZPOS%=649);if(%#cd58%!=2);wait(50ms);keyup(right);do(%#cd58%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=650);endif;endif;
  606. if(%ZPOS%=650);if(%#cd59%!=2);wait(50ms);keyup(right);do(%#cd59%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=651);endif;endif;
  607. if(%ZPOS%=651);if(%#cd60%!=2);wait(50ms);keyup(right);do(%#cd60%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=652);endif;endif;
  608. if(%ZPOS%=652);if(%#cd61%!=2);wait(50ms);keyup(right);do(%#cd61%);key(attack);wait(350ms);loop;break;endif;endif;
  609. if(%ZPOS%>655);break;endif;
  610. loop;
  611. keyup(sneak);keyup(right);
  612. do;}$$/home mar$${
  613. if((%#yi%=%YPOS%)&&(%#xi%=%XPOS%)&&(%#zi%=%ZPOS%));wait(4);keydown(jump);wait(1);keyup(jump);wait(1);if((%#yi%=%YPOS%)&&(%#xi%=%XPOS%)&&(%#zi%=%ZPOS%));break;endif;else;wait(8);endif;loop;
  614. else;
  615. #posx=%XPOS%;#posy=%YPOS%;#posz=%ZPOS%;}$$/home cds$${wait(8);
  616. gui();
  617. do(1000);if(%YPOS%=6);wait(4);keydown(jump);wait(1);keyup(jump);wait(2);if(%YPOS%=6);break();endif;endif;loop;keyup(sneak);look(WEST);
  618. keydown(right);keydown(sneak);
  619. do(1200);
  620. if(%ZPOS%=623);if(%#cd58%!=2);wait(50ms);keyup(right);do(%#cd58%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=622);endif;endif;
  621. if(%ZPOS%=622);if(%#cd59%!=2);wait(50ms);keyup(right);do(%#cd59%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=621);endif;endif;
  622. if(%ZPOS%=621);if(%#cd60%!=2);wait(50ms);keyup(right);do(%#cd60%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=620);endif;endif;
  623. if(%ZPOS%=620);if(%#cd61%!=2);wait(50ms);keyup(right);do(%#cd61%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=619);endif;endif;
  624. if(%ZPOS%=619);if(%#cd62%!=2);wait(50ms);keyup(right);do(%#cd62%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=618);endif;endif;
  625. if(%ZPOS%=618);if(%#cd63%!=2);wait(50ms);keyup(right);do(%#cd63%);key(attack);wait(350ms);loop;keydown(right);endif;
  626. keydown(jump);do(200);until(%ZPOS%=615);keyup(jump);do(200);until(%ZPOS%=612);keydown(jump);do(200);until(%ZPOS%=611);keyup(jump);
  627. do(200);until(%ZPOS%=610);keyup(sneak);wait(100ms);keyup(right);keydown(left);wait(500ms);keyup(left);break;
  628. endif;
  629. loop;
  630. keydown(right);keydown(sneak);
  631. do(1200);
  632. if(%ZPOS%=610);if(%#cd64%!=2);wait(50ms);keyup(right);do(%#cd64%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=609);endif;endif;
  633. if(%ZPOS%=609);if(%#cd65%!=2);wait(50ms);keyup(right);do(%#cd65%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=608);endif;endif;
  634. if(%ZPOS%=608);if(%#cd66%!=2);wait(50ms);keyup(right);do(%#cd66%);key(attack);wait(350ms);loop;keydown(right);do(200);until(%ZPOS%=607);endif;endif;
  635. if(%ZPOS%=607);if(%#cd67%!=2);wait(50ms);keyup(right);do(%#cd67%);key(attack);wait(350ms);loop;break;endif;endif;
  636. if(%ZPOS%<607);break;endif;
  637. loop;
  638. keyup(sneak);keyup(right);
  639. do; }$$/home mar$${
  640. if((%#yi%=%YPOS%)&&(%#xi%=%XPOS%)&&(%#zi%=%ZPOS%));wait(4);keydown(jump);wait(1);keyup(jump);wait(1);if((%#yi%=%YPOS%)&&(%#xi%=%XPOS%)&&(%#zi%=%ZPOS%));break;endif;else;wait(8);endif;loop;
  641. endif;
  642. until(%#pass%=1);
  643. endif;
  644. endif;
  645. #stackt=0;#ver=0;
  646. log(&c» &8Processo de venda encerrado!);
  647. if(loglinha13);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha13%");endif;
  648. else;
  649. #ver=%#ver%+18;
  650. #hor=0;
  651. endif;
  652. endif;
  653. endif;
  654. if(%#hor%>72);
  655. if(%#ver%=36);
  656. if(%#sidep%=180);&line1=empty;endif;
  657. if(%#sidep%=90);&line2=empty;endif;
  658. if(%#sidep%=270);&line3=empty;endif;
  659. #stackt=0;
  660. else;
  661. #ver=%#ver%+18;
  662. #hor=0;
  663. endif;
  664. endif;
  665. wait(100ms);
  666. gui();
  667. wait(400ms);
  668. if(%#sidep%=180);#hor1=%#hor%;#ver1=%#ver%;endif;
  669. if(%#sidep%=90);#hor2=%#hor%;#ver2=%#ver%;endif;
  670. if(%#sidep%=270);#hor3=%#hor%;#ver3=%#ver%;endif;
  671. if(%#sidep%=360);#hor4=%#hor%;#ver4=%#ver%;endif;
  672. if(%#sidep%=54);#hor5=%#hor%;#ver5=%#ver%;endif;
  673. until(%#stackt%=0);
  674. loop;
  675.  
  676. //--------------------------------------------------------------------------------------------
  677. //-----------------------------------------REPOR LINHA----------------------------------------
  678. //--------------------------------------------------------------------------------------------
  679. gui(inventory);
  680. #linhas_no_inv=0;
  681. for(#slot,9,44);
  682. GETSLOTITEM(%#slot%,#id,#stack);
  683. INC(#linhas_no_inv,%#stack%);
  684. next;
  685.  
  686. if(%#linhas_no_inv%<51);
  687. log(&c» &8Há &6%#linhas_no_inv%&8 linhas no inventário, reposição iniciada!);
  688. if(loglinha14);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %#linhas_no_inv% %&log_linha14%");endif;
  689. if(%#bau_linha%<5);
  690. #qtde_linhas=0;
  691. do;
  692. if(%#bau_linha%<5);
  693. if(%#bau_linha%=1);#dir_lateral=90;endif;
  694. if(%#bau_linha%=2);#dir_lateral=180;endif;
  695. if(%#bau_linha%=3);#dir_lateral=270;endif;
  696. if(%#bau_linha%=4);#dir_lateral=0;endif;
  697. gui();look(%&dir%);look(%#dir_lateral%,60);wait(220ms);key(use);
  698. do;
  699. ifmatches(%GUI%,GUICHEST);
  700. break;
  701. else;
  702. look(%&dir%);look(%#dir_lateral%,60);wait(220ms);
  703. endif;
  704. key(use);wait(1);
  705. loop;
  706.  
  707. for(#slot,0,53);
  708. GETSLOTITEM(%#slot%,#id,#stack);
  709. if(%#id%=287);
  710. wait(80ms);SLOTCLICK(%#slot%,l,true);wait(80ms);
  711. INC(#qtde_linhas,%#stack%);
  712. endif;
  713. if(%#qtde_linhas%>447);break;endif;
  714. next;
  715. gui();
  716. INC(#bau_linha,1);
  717. else;
  718. log(&c» &8Linhas retiradas de todos os baús, por favor reponha!);
  719. log(&c» &8Por favor, reinicie a macro após reabastecer!);
  720. if(loglinha15);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha15%");endif;
  721. if(loglinha16);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha16%");endif;
  722. break;
  723. endif;
  724. until(%#qtde_linhas%>447);
  725. endif;
  726. endif;
  727.  
  728. //--------------------------------------------------------------------------------------------
  729. //---------------------------------------------FIM--------------------------------------------
  730. //--------------------------------------------------------------------------------------------
  731.  
  732. #posx=%XPOS%;#posz=%ZPOS%;}$$/home$${do(400);if((%XPOS%!=%#posx%)&&(%ZPOS%!=%#posxz%));break;endif;loop;wait(1);
  733. }$$/home mar$${do(400);if((%XPOS%=%#posx%)&&(%ZPOS%=%#posz%));break;endif;loop;wait(2);keydown(jump);wait(1);keyup(jump);wait(2);
  734. gui(inventory);
  735. else;
  736. log(&c» &8Não é necessário guardar itens ainda!);
  737. if(loglinha17);logto(%PLAYER%%&log_doc%%DATE%.txt,"%TIME% %&log_linha17%");endif;
  738. endif;
  739. endif;
  740. loop;
  741. endif;
  742. }$$
Advertisement
Add Comment
Please, Sign In to add comment