ENTREGUE [1.7.2] Reparação 2.0

Bem-vindo!

Ao se registrar conosco, você poderá discutir, compartilhar e enviar mensagens privadas com outros membros da nossa comunidade.

Inscreva-se agora!
Status
Não está aberto para novas respostas.
jimmyfilips disse:
@Edit: corrigido - corredores para norte e para sul não vêem quando chegam ao final. faltaram poucos comandos

Como muitos sabem, os macros de reparação antigos não funcionam na 1.7 devido a novas configurações do próprio minecraft.

O ultimo que postei, ainda sim demorava muito para upar e pensando nisso, criei uma alternativa, para a reparação, espero que dela novas ideias surjam e programadores melhorem essa ideia afim de upar ainda mais rápido.

COMO USAR

1 - monte um CORREDOR, como na imagem abaixo, lembre de deixar fechado ao final, para o macro entender que o corredor acabou.
LEMBRANDO: Se colocar blocos em cima de qualquer um a ser arado, AQUELE BLOCO NÃO SERÁ ARADO! Então lembre-se de deixar todos livres.

blocos a ser arados:
dfRXe0y.png

Ja adianto que o minecraft não permite reparar blocos olhando o mesmo por baixo, por isso não coloquei nenhum em cima

tfKGmoR.png


2 - sete uma home chamada "rep" (/sethome rep) olhando para um bloco de ferro, assim:

uhvpohL.png


3 - deixe o inventário desta forma

6DYU07v.png


4 - ele perguntará o delay após dar /home, se é vip, recomendo 3, se não é, recomendo 6, mas use o que preferir

Pronto!

DICA: Não é vip?? de "/sethome reptemp" e "/sethome repinicio" em qualquer lugar, essas homes o macro vai setar sozinho, não precisa se preocupar, mas deixe elas separadas.

Se tem preguiça de ler, não precisa ler daqui pra frente rsrs

CURIOSIDADE: COMO FUNCIONA?
- Ao iniciar, ele seta a /sethome repinicio
- Ele andará pelo corredor arando TODOS os blocos ao seu redor, até achar um bloco em sua frente, e retorna ao início, na home "repinicio"
- A todo momento ele verifica a durabilidade da enxada, se estiver baixa, pula para a próxima, ate gastar todas as 9 enxadas, quando gasta as 9, ele dá /sethome reptemp, vai a home rep, repara e volta a home reptemp, após isso, continua normalmente
- Quando chegar ao fim, o começo já terá voltado ao normal

ATENÇÃO
- com chuva o bloco continua arado, então cubra o local
- você pode começar do meio, mas ele voltará sempre no ponto em que você ativou a macro
- o corredor ideal é de no minimo 50 blocos (terreno médio)

MACRO

$${
if(repjimmy);log("&4[%PLAYER%] &6Reparação &2OFF");unset(repjimmy);keyup(forward);keyup(back);keyup(right);keyup(sneak);stop();
else;set(repjimmy);log(&3[%PLAYER%] &6Reparação &4ON);#nslot=1;slot(1);#status=0;endif;


PROMPT(#delay,$$?,"quantos segundos de espera para ir a home? (somente numeros)");
}$$/sethome repinicio$${

&ff = %DIRECTION%;
ifmatches(%&ff%,N);&ff=NORTH;&fa=SOUTH;&fd=EAST;&fe=WEST;#xf=0;#zf=-1;endif;
ifmatches(%&ff%,S);&fa=NORTH;&ff=SOUTH;&fe=EAST;&fd=WEST;#xf=0;#zf=1;endif;
ifmatches(%&ff%,E);&fe=NORTH;&fd=SOUTH;&ff=EAST;&fa=WEST;#xf=1;#zf=0;endif;
ifmatches(%&ff%,W);&fd=NORTH;&fe=SOUTH;&fa=EAST;&ff=WEST;#xf=-1;#zf=0;endif;

do;
//reparar
if(%DURABILITY%<10);logto(debug,%#nslot%);
if(%#nslot%=9);keyup(forward);keyup(back);}$$/sethome reptemp$${wait(1t);}$$/home rep$${wait(%#delay%);
//selecionando enxadas
slot(1);do(4);key(use);wait(250ms);loop;
slot(2);do(4);key(use);wait(250ms);loop;
slot(3);do(4);key(use);wait(250ms);loop;
slot(4);do(4);key(use);wait(250ms);loop;
slot(5);do(4);key(use);wait(250ms);loop;
slot(6);do(4);key(use);wait(250ms);loop;
slot(7);do(4);key(use);wait(250ms);loop;
slot(8);do(4);key(use);wait(250ms);loop;
slot(9);do(4);key(use);wait(250ms);loop;
#nslot=1;slot(1);}$$/home reptemp$${wait(%#delay%);
else;INC(#nslot,1);logto(debug,agora no slot: %#nslot%);slot(%#nslot%);
endif;
endif;

if(%DURABILITY%>8);
//usar
look(%&ff%);look(,90);wait(1t);key(use);wait(1t);
look(%&fd%);look(,50);wait(1t);key(use);wait(1t);
look(%&fd%);wait(1t);key(use);wait(1t);
look(%&fd%);look(,-50);wait(1t);key(use);wait(1t);
look(%&fe%);look(,50);wait(1t);key(use);wait(1t);
look(%&fe%);wait(1t);key(use);wait(1t);
look(%&fe%);look(,-50);wait(1t);key(use);wait(1t);


//verificar bloco
getidrel(%#xf%,0,%#zf%,&bloco);ifmatches(%&bloco%,air);#status=0;else;#status=1;endif;
if(%#status%=0);
//andar
#px=%XPOS%;#pz=%ZPOS%;look(%&ff%);
do;keydown(forward);until((%XPOS%=%#px%+1)|(%XPOS%=%#px%-1)|(%ZPOS%=%#pz%+1)|(%ZPOS%=%#pz%-1));keyup(forward);
else;
//voltar
}$$/home repinicio$${wait(%#delay%);
endif;endif;endif;
loop;
}$$
Otimo parabéns
 
Por que o meu ara todas as terras e depois não gasta mais as enxadas ? a terra continua arada ! o que fiz de errado, ta tudo em local fechado.
 
cara tem como me ajudar? é q quando ele terminar de arar a terra e volta pro /home repinicio ele fica olhando pra parede e nao faz nada, e ai eu tenho q virar o mouse pra ele continuar. como faço pra arrumar esse erro ?
 
Excelente macro, mas tenho uma sugestão, por experiencia própria mude o valor da troca de enxadas quando ela chega no vermelho. por ex:
Nesse macro ele troca quando ela chega no 8 se não me engano, mas devido ao lag 70% das enxadas estavam quebrando, para optimizar o macro e deixar ele por mais tempo sem precisar repor as enxadas eu coloquei 17 ( não quebrou mais nenhuma vez )

Espero que tenha entendido, e mais uma vez, obrigado pela macro!

Pra quem não sabe como mudar essa valor esta aqui o macro modificado:

$${
if(repjimmy);log("&4[%PLAYER%] &6Reparação &2OFF");unset(repjimmy);keyup(forward);keyup(back);keyup(right);keyup(sneak);stop();
else;set(repjimmy);log(&3[%PLAYER%] &6Reparação &4ON);#nslot=1;slot(1);#status=0;endif;


PROMPT(#delay,$$?,"quantos segundos de espera para ir a home? (somente numeros)");
}$$/sethome repinicio$${

&ff = %DIRECTION%;
ifmatches(%&ff%,N);&ff=NORTH;&fa=SOUTH;&fd=EAST;&fe=WEST;#xf=0;#zf=-1;endif;
ifmatches(%&ff%,S);&fa=NORTH;&ff=SOUTH;&fe=EAST;&fd=WEST;#xf=0;#zf=1;endif;
ifmatches(%&ff%,E);&fe=NORTH;&fd=SOUTH;&ff=EAST;&fa=WEST;#xf=1;#zf=0;endif;
ifmatches(%&ff%,W);&fd=NORTH;&fe=SOUTH;&fa=EAST;&ff=WEST;#xf=-1;#zf=0;endif;

do;
//reparar
if(%DURABILITY%<17);logto(debug,%#nslot%);
if(%#nslot%=9);keyup(forward);keyup(back);}$$/sethome reptemp$${wait(1t);}$$/home rep$${wait(%#delay%);
//selecionando enxadas
slot(1);do(4);key(use);wait(250ms);loop;
slot(2);do(4);key(use);wait(250ms);loop;
slot(3);do(4);key(use);wait(250ms);loop;
slot(4);do(4);key(use);wait(250ms);loop;
slot(5);do(4);key(use);wait(250ms);loop;
slot(6);do(4);key(use);wait(250ms);loop;
slot(7);do(4);key(use);wait(250ms);loop;
slot(8);do(4);key(use);wait(250ms);loop;
slot(9);do(4);key(use);wait(250ms);loop;
#nslot=1;slot(1);}$$/home reptemp$${wait(%#delay%);
else;INC(#nslot,1);logto(debug,agora no slot: %#nslot%);slot(%#nslot%);
endif;
endif;

if(%DURABILITY%>17);
//usar
look(%&ff%);look(,90);wait(1t);key(use);wait(1t);
look(%&fd%);look(,50);wait(1t);key(use);wait(1t);
look(%&fd%);wait(1t);key(use);wait(1t);
look(%&fd%);look(,-50);wait(1t);key(use);wait(1t);
look(%&fe%);look(,50);wait(1t);key(use);wait(1t);
look(%&fe%);wait(1t);key(use);wait(1t);
look(%&fe%);look(,-50);wait(1t);key(use);wait(1t);


//verificar bloco
getidrel(%#xf%,0,%#zf%,&bloco);ifmatches(%&bloco%,air);#status=0;else;#status=1;endif;
if(%#status%=0);
//andar
#px=%XPOS%;#pz=%ZPOS%;look(%&ff%);
do;keydown(forward);until((%XPOS%=%#px%+1)|(%XPOS%=%#px%-1)|(%ZPOS%=%#pz%+1)|(%ZPOS%=%#pz%-1));keyup(forward);
else;
//voltar
}$$/home repinicio$${wait(%#delay%);
endif;endif;endif;
loop;
}$$
 
jimmyfilips disse:
2015, 1.8 comendo solto, e o pessoal ainda comenta :o ta ne
jimmy seu xer0so e bem lavado, da uma help aqui..

A macro cmg ta tendo uns bugs: Tem vezes que ele fica olhando pro chão ou pra um dos lado parado, viajando, brisado; tem vezes que ele bate na parede do outro lado mas n teleporta de volta pro começo; tem vezes q ele fica só andando em linha reta sem arar as terras.. Pode tentar me ajudar ?? te dou um cubo :3
 
Status
Não está aberto para novas respostas.

Users who are viewing this thread

Voltar
Topo