RupColf
Neutro
Gente, o Arteon me pediu para ver se consegui concertar essa macro de reparação do MrBlueees e eu queria deixar bem claro, eu não fiz a macro, só arrumei para a 1.8, precisa usar o onChat, se quiserem eu ensino a configurar, caso já saibam, precisa desse comando
A macro em questão é essa
MrBlueees macro
$${IFMATCHES("%CHATCLEAN%","Você precisa de mais String"); SET(@sleeplack);ENDIF;}$$
$${
////////////////////////////////////////////////////////////
////////////////////////////// by MUR4I#0409
////////////////////////////// Macro - Reparar Arcos TRAP INFINITA MKB (v2)
////////////////////////////////////////////////////////////
LOG(" ");TOGGLE(blues);IF(!blues);LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOFF&4!");STOP;ENDIF;
PLAYSOUND(tile.piston.in);LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aON&2!");
////////////////////////////////////////////////////////////
////////////////////////////// CONFIG
////////////////////////////////////////////////////////////
SET(&homelinha,"linha"); //----------- Home olhando para uma placa que vende linha
SET(&hometemp,"bluestemp"); //-------- Home temporária para voltar depois de ir comprar linhas
SET(#bau_atual,"1"); //----------- Começar sempre pelo baú 1 (de cima pra baixo)
////////////////////////////////////////////////////////////
////////////////////////////// VARIÁVEIS
////////////////////////////////////////////////////////////
SET(#player_xpos,"%XPOS%");SET(#player_ypos,"%YPOS%");SET(#player_zpos,"%ZPOS%");
SET(#bau_n_abre,0);SET(#tentativas,0);SET(#qtdarco,0);SET(#qtdlinha,0);SET(#ultimo_slot,0);
SET(#baus_ypos,"%YPOS%");
SET(#baus_zpos,"%ZPOS%");
UNSET(parar);UNSET(pegou_arco);UNSET(limpeza);UNSET(@sleeplack);UNSET(#yawblocoferro);UNSET(#pitchblocoferro);UNSET(trocarfila);
IF(%DIRECTION% = "N"); SET(&frente,"NORTH"); SET(&atras,"SOUTH"); SET(&direita,"EAST"); SET(&esquerda,"WEST"); ENDIF;
IF(%DIRECTION% = "S"); SET(&frente,"SOUTH"); SET(&atras,"NORTH"); SET(&direita,"WEST"); SET(&esquerda,"EAST"); ENDIF;
IF(%DIRECTION% = "E"); SET(&frente,"EAST"); SET(&atras,"WEST"); SET(&direita,"SOUTH"); SET(&esquerda,"NORTH"); ENDIF;
IF(%DIRECTION% = "W"); SET(&frente,"WEST"); SET(&atras,"EAST"); SET(&direita,"NORTH"); SET(&esquerda,"SOUTH"); ENDIF;
GETIDREL(0,-1,0,&blocoferro1); IFMATCHES("%&blocoferro1%","(.*iron_block.*|42)"); SET(#yawblocoferro,"0"); SET(#pitchblocoferro,"90"); ENDIF;
GETIDREL(-1,0,0,&blocoferro2); IFMATCHES("%&blocoferro2%","(.*iron_block.*|42)"); SET(#yawblocoferro,"270"); SET(#pitchblocoferro,"64"); ENDIF;
GETIDREL(1,0,0,&blocoferro3); IFMATCHES("%&blocoferro3%","(.*iron_block.*|42)"); SET(#yawblocoferro,"90"); SET(#pitchblocoferro,"64"); ENDIF;
GETIDREL(0,0,-1,&blocoferro4); IFMATCHES("%&blocoferro4%","(.*iron_block.*|42)"); SET(#yawblocoferro,"0"); SET(#pitchblocoferro,"64"); ENDIF;
GETIDREL(0,0,1,&blocoferro5); IFMATCHES("%&blocoferro5%","(.*iron_block.*|42)"); SET(#yawblocoferro,"180"); SET(#pitchblocoferro,"64"); ENDIF;
SET(&verificar_baus,"");
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);
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);
SET(&verificar_baus,"%&bau1%-%&bau2%-%&bau3%-%&bau4%-%&bau5%-%&bau6%-%&bau7%-%&bau8%-%&bau9%-%&bau10%");
IFMATCHES("%&verificar_baus%","^((.*chest.*)-?){10}$");
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aBaús posicionados corretamente!");
LOG("&bIniciando a macro...");
LOG("");
ELSE;
LOG("");
LOG("Debug: %&verificar_baus%");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOs baús não estão conforme a trap MKB!");
LOG("&bFinalizando...");
LOG("");
TOGGLE(blues);
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOFF&4!");
STOP;
ENDIF;
IF(#pitchblocoferro);
DO();
GUI();
LOOK(NORTH);
IF(trocarfila);
#pos_next_chest = (%XPOS% + 1);
DO;
LOOK(NORTH);
IF(%XPOS%==%#pos_next_chest%);
WAIT(20MS);
BREAK;
ELSEIF((%XPOS%>%#pos_next_chest%)||(%YPOS%!=%#baus_ypos%)||(%ZPOS%!=%#baus_zpos%));
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cAconteceu algum problema.");
LOG("&bFinalizando a macro...");
LOG("");
SET(parar);
BREAK;
ELSE;
GUI(INVENTORY);
KEYDOWN(RIGHT);
IF(%XPOS%==%#pos_next_chest%);
KEYUP(SNEAK);
BREAK;
ELSE;
KEYDOWN(SNEAK);
ENDIF;
ENDIF;
LOOP;
KEYUP(SNEAK);
KEYUP(RIGHT);
UNSET(trocarfila);
ENDIF;
IF(parar);
BREAK;
ENDIF;
IF((%#bau_atual%=1));
LOOK(+0,+312);
ELSEIF((%#bau_atual%=2));
LOOK(+0,+328);
ELSEIF((%#bau_atual%=3));
LOOK(+0,+0);
ELSEIF((%#bau_atual%=4));
LOOK(+0,+33);
ELSEIF((%#bau_atual%=5));
LOOK(+0,+50);
ENDIF;
LOOK(+0,+1,1);
DO(3);
IFMATCHES("%HITID%","(.*chest.*|54|146)");
KEY(use);
DO(200);
WAIT(1ms);
UNTIL(%GUI%="GUICHEST");
ENDIF;
UNTIL(%GUI%="GUICHEST");
WAIT(40t);
IF(%GUI% == "GUICHEST");
SET(#bau_n_abre,0);
FOR(#slot,%#ultimo_slot%,53);
GETSLOTITEM(%#slot%,&id,#stack,#data);
IFMATCHES("%&id%","(.*bow.*|261)");
SLOTCLICK(%#slot%,L,TRUE);
INC(#qtdarco,1);
ENDIF;
INC(#tentativas,1);
IF(%#qtdarco%>=9);
SET(pegou_arco);
SET(#qtdarco,0);
SET(#ultimo_slot,"%#slot%");
GUI();
BREAK;
ELSEIF(%#tentativas%>=54);
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cNão foram encontrados 9 arcos!");
LOG("&bVerificando no próximo baú...");
IF(%#bau_atual% < 5);
INC(#bau_atual,1)
ELSE;
SET(#bau_atual,"1");
SET(trocarfila);
ENDIF;
SET(#ultimo_slot,0);
SET(#tentativas,0);
GUI();
BREAK;
ENDIF;
NEXT;
ELSEIFMATCHES("%HITID%","(.*chest.*|54|146)");
INC(#bau_n_abre,1);
LOG("&b&l[MACRO] &eTentativa de abrir baú: &f%#bau_n_abre%&7/3");
IF(%#bau_n_abre%<=3);
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cO baú não está abrindo! Tentando novamente... &7&o#MR&3&oBLUEEES");
LOG("");
ELSE;
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cAconteceu algum problema.");
LOG("&bFinalizando a macro...");
LOG("");
SET(parar);
BREAK;
ENDIF;
ELSE;
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cVocê não está olhando para um baú.");
LOG("&bFinalizando a macro...");
LOG("");
SET(parar);
BREAK;
ENDIF;
IF(pegou_arco);
WAIT(1);
GUI();
DO(2);
FOR(#slot,1,9);
SLOT(%#slot%);
DO();
LOOK(%#yawblocoferro%,%#pitchblocoferro%);
KEY(use);
WAIT(100ms);
IF(@sleeplack);
BREAK;
ENDIF;
UNTIL((%DURABILITY%=384)||(@sleeplack));
IF(@sleeplack);
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cAcabaram as linhas!");
LOG("&bTentando realizar a compra...");
LOG("");
// UNSET(pegou_arco);
// SET(parar);
// BREAK;
ECHO("/sethome %&hometemp%");
WAIT(200ms);
ECHO("/sethome %&hometemp%");
WAIT(1);
DO(2);
ECHO("/home %&homelinha%");
WAIT(3);
LOOP;
WAIT(100ms)
ECHO("/menuloja on")
WAIT(100ms)
ECHO("/esconder")
DO;
KEY(use);
WAIT(500ms);
UNTIL(%GUI% = "GUICHEST");
WAIT(1);
DO(10);
SLOTCLICK(2,l,false)
WAIT(1)
LOOP;
DO(2);
ECHO("/home %&hometemp%");
KEYDOWN(JUMP);
WAIT(3);
LOOP;
KEYUP(JUMP);
UNSET(@sleeplack);
ENDIF;
NEXT;
LOOP;
IF(!parar);
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aReparei toda hotbar!");
LOG("&bIniciando limpeza...");
LOG("");
UNSET(pegou_arco);
SET(limpeza);
ENDIF;
ENDIF;
IF(limpeza);
WAIT(1);
GUI();
DO(2)
FOR(#slot,1,9);
LOOK(%&frente%);
SLOT(%#slot%);
DO();
KEY(DROP);
WAIT(100ms);
UNTIL(%DURABILITY%=0);
NEXT;
LOOP;
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aLimpeza finalizada!");
LOG("");
UNSET(limpeza);
ENDIF;
UNTIL(parar);
ELSE;
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cNão foi encontrado nenhum bloco de ferro por perto!");
LOG("");
ENDIF;
TOGGLE(blues);
PLAYSOUND(tile.piston.out);
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aFinalizado! &7&o#MR&3&oBLUEEES");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOFF&4!");
LOG("");
STOP;
}$$
////////////////////////////////////////////////////////////
////////////////////////////// by MUR4I#0409
////////////////////////////// Macro - Reparar Arcos TRAP INFINITA MKB (v2)
////////////////////////////////////////////////////////////
LOG(" ");TOGGLE(blues);IF(!blues);LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOFF&4!");STOP;ENDIF;
PLAYSOUND(tile.piston.in);LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aON&2!");
////////////////////////////////////////////////////////////
////////////////////////////// CONFIG
////////////////////////////////////////////////////////////
SET(&homelinha,"linha"); //----------- Home olhando para uma placa que vende linha
SET(&hometemp,"bluestemp"); //-------- Home temporária para voltar depois de ir comprar linhas
SET(#bau_atual,"1"); //----------- Começar sempre pelo baú 1 (de cima pra baixo)
////////////////////////////////////////////////////////////
////////////////////////////// VARIÁVEIS
////////////////////////////////////////////////////////////
SET(#player_xpos,"%XPOS%");SET(#player_ypos,"%YPOS%");SET(#player_zpos,"%ZPOS%");
SET(#bau_n_abre,0);SET(#tentativas,0);SET(#qtdarco,0);SET(#qtdlinha,0);SET(#ultimo_slot,0);
SET(#baus_ypos,"%YPOS%");
SET(#baus_zpos,"%ZPOS%");
UNSET(parar);UNSET(pegou_arco);UNSET(limpeza);UNSET(@sleeplack);UNSET(#yawblocoferro);UNSET(#pitchblocoferro);UNSET(trocarfila);
IF(%DIRECTION% = "N"); SET(&frente,"NORTH"); SET(&atras,"SOUTH"); SET(&direita,"EAST"); SET(&esquerda,"WEST"); ENDIF;
IF(%DIRECTION% = "S"); SET(&frente,"SOUTH"); SET(&atras,"NORTH"); SET(&direita,"WEST"); SET(&esquerda,"EAST"); ENDIF;
IF(%DIRECTION% = "E"); SET(&frente,"EAST"); SET(&atras,"WEST"); SET(&direita,"SOUTH"); SET(&esquerda,"NORTH"); ENDIF;
IF(%DIRECTION% = "W"); SET(&frente,"WEST"); SET(&atras,"EAST"); SET(&direita,"NORTH"); SET(&esquerda,"SOUTH"); ENDIF;
GETIDREL(0,-1,0,&blocoferro1); IFMATCHES("%&blocoferro1%","(.*iron_block.*|42)"); SET(#yawblocoferro,"0"); SET(#pitchblocoferro,"90"); ENDIF;
GETIDREL(-1,0,0,&blocoferro2); IFMATCHES("%&blocoferro2%","(.*iron_block.*|42)"); SET(#yawblocoferro,"270"); SET(#pitchblocoferro,"64"); ENDIF;
GETIDREL(1,0,0,&blocoferro3); IFMATCHES("%&blocoferro3%","(.*iron_block.*|42)"); SET(#yawblocoferro,"90"); SET(#pitchblocoferro,"64"); ENDIF;
GETIDREL(0,0,-1,&blocoferro4); IFMATCHES("%&blocoferro4%","(.*iron_block.*|42)"); SET(#yawblocoferro,"0"); SET(#pitchblocoferro,"64"); ENDIF;
GETIDREL(0,0,1,&blocoferro5); IFMATCHES("%&blocoferro5%","(.*iron_block.*|42)"); SET(#yawblocoferro,"180"); SET(#pitchblocoferro,"64"); ENDIF;
SET(&verificar_baus,"");
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);
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);
SET(&verificar_baus,"%&bau1%-%&bau2%-%&bau3%-%&bau4%-%&bau5%-%&bau6%-%&bau7%-%&bau8%-%&bau9%-%&bau10%");
IFMATCHES("%&verificar_baus%","^((.*chest.*)-?){10}$");
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aBaús posicionados corretamente!");
LOG("&bIniciando a macro...");
LOG("");
ELSE;
LOG("");
LOG("Debug: %&verificar_baus%");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOs baús não estão conforme a trap MKB!");
LOG("&bFinalizando...");
LOG("");
TOGGLE(blues);
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOFF&4!");
STOP;
ENDIF;
IF(#pitchblocoferro);
DO();
GUI();
LOOK(NORTH);
IF(trocarfila);
#pos_next_chest = (%XPOS% + 1);
DO;
LOOK(NORTH);
IF(%XPOS%==%#pos_next_chest%);
WAIT(20MS);
BREAK;
ELSEIF((%XPOS%>%#pos_next_chest%)||(%YPOS%!=%#baus_ypos%)||(%ZPOS%!=%#baus_zpos%));
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cAconteceu algum problema.");
LOG("&bFinalizando a macro...");
LOG("");
SET(parar);
BREAK;
ELSE;
GUI(INVENTORY);
KEYDOWN(RIGHT);
IF(%XPOS%==%#pos_next_chest%);
KEYUP(SNEAK);
BREAK;
ELSE;
KEYDOWN(SNEAK);
ENDIF;
ENDIF;
LOOP;
KEYUP(SNEAK);
KEYUP(RIGHT);
UNSET(trocarfila);
ENDIF;
IF(parar);
BREAK;
ENDIF;
IF((%#bau_atual%=1));
LOOK(+0,+312);
ELSEIF((%#bau_atual%=2));
LOOK(+0,+328);
ELSEIF((%#bau_atual%=3));
LOOK(+0,+0);
ELSEIF((%#bau_atual%=4));
LOOK(+0,+33);
ELSEIF((%#bau_atual%=5));
LOOK(+0,+50);
ENDIF;
LOOK(+0,+1,1);
DO(3);
IFMATCHES("%HITID%","(.*chest.*|54|146)");
KEY(use);
DO(200);
WAIT(1ms);
UNTIL(%GUI%="GUICHEST");
ENDIF;
UNTIL(%GUI%="GUICHEST");
WAIT(40t);
IF(%GUI% == "GUICHEST");
SET(#bau_n_abre,0);
FOR(#slot,%#ultimo_slot%,53);
GETSLOTITEM(%#slot%,&id,#stack,#data);
IFMATCHES("%&id%","(.*bow.*|261)");
SLOTCLICK(%#slot%,L,TRUE);
INC(#qtdarco,1);
ENDIF;
INC(#tentativas,1);
IF(%#qtdarco%>=9);
SET(pegou_arco);
SET(#qtdarco,0);
SET(#ultimo_slot,"%#slot%");
GUI();
BREAK;
ELSEIF(%#tentativas%>=54);
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cNão foram encontrados 9 arcos!");
LOG("&bVerificando no próximo baú...");
IF(%#bau_atual% < 5);
INC(#bau_atual,1)
ELSE;
SET(#bau_atual,"1");
SET(trocarfila);
ENDIF;
SET(#ultimo_slot,0);
SET(#tentativas,0);
GUI();
BREAK;
ENDIF;
NEXT;
ELSEIFMATCHES("%HITID%","(.*chest.*|54|146)");
INC(#bau_n_abre,1);
LOG("&b&l[MACRO] &eTentativa de abrir baú: &f%#bau_n_abre%&7/3");
IF(%#bau_n_abre%<=3);
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cO baú não está abrindo! Tentando novamente... &7&o#MR&3&oBLUEEES");
LOG("");
ELSE;
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cAconteceu algum problema.");
LOG("&bFinalizando a macro...");
LOG("");
SET(parar);
BREAK;
ENDIF;
ELSE;
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cVocê não está olhando para um baú.");
LOG("&bFinalizando a macro...");
LOG("");
SET(parar);
BREAK;
ENDIF;
IF(pegou_arco);
WAIT(1);
GUI();
DO(2);
FOR(#slot,1,9);
SLOT(%#slot%);
DO();
LOOK(%#yawblocoferro%,%#pitchblocoferro%);
KEY(use);
WAIT(100ms);
IF(@sleeplack);
BREAK;
ENDIF;
UNTIL((%DURABILITY%=384)||(@sleeplack));
IF(@sleeplack);
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cAcabaram as linhas!");
LOG("&bTentando realizar a compra...");
LOG("");
// UNSET(pegou_arco);
// SET(parar);
// BREAK;
ECHO("/sethome %&hometemp%");
WAIT(200ms);
ECHO("/sethome %&hometemp%");
WAIT(1);
DO(2);
ECHO("/home %&homelinha%");
WAIT(3);
LOOP;
WAIT(100ms)
ECHO("/menuloja on")
WAIT(100ms)
ECHO("/esconder")
DO;
KEY(use);
WAIT(500ms);
UNTIL(%GUI% = "GUICHEST");
WAIT(1);
DO(10);
SLOTCLICK(2,l,false)
WAIT(1)
LOOP;
DO(2);
ECHO("/home %&hometemp%");
KEYDOWN(JUMP);
WAIT(3);
LOOP;
KEYUP(JUMP);
UNSET(@sleeplack);
ENDIF;
NEXT;
LOOP;
IF(!parar);
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aReparei toda hotbar!");
LOG("&bIniciando limpeza...");
LOG("");
UNSET(pegou_arco);
SET(limpeza);
ENDIF;
ENDIF;
IF(limpeza);
WAIT(1);
GUI();
DO(2)
FOR(#slot,1,9);
LOOK(%&frente%);
SLOT(%#slot%);
DO();
KEY(DROP);
WAIT(100ms);
UNTIL(%DURABILITY%=0);
NEXT;
LOOP;
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aLimpeza finalizada!");
LOG("");
UNSET(limpeza);
ENDIF;
UNTIL(parar);
ELSE;
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cNão foi encontrado nenhum bloco de ferro por perto!");
LOG("");
ENDIF;
TOGGLE(blues);
PLAYSOUND(tile.piston.out);
LOG("");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &aFinalizado! &7&o#MR&3&oBLUEEES");
LOG("&b&l[MACRO] &6Reparar Arcos (v2): &cOFF&4!");
LOG("");
STOP;
}$$
MrBlueees macro