ENTREGUE [MACRO] Escavação organizada ! \o/

Bem-vindo!

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

Registrar agora!


Status
Não está aberto para novas respostas.
Entrou
Jan 3, 2014
Mensagens
10,483
Pontuação de reação
6,094
Idade
25
Cubos
1
Olá, essa macro é antiga e NÃO fui eu quem a programou, não dou suporte nem me responsabilizo por bugs.​
ESCAVAÇÃO ORGANIZADA
Tudo começou quando eu, SLEEP, estava sofrendo para vender os itens dropados na escavação, pois eles, estavam todos desorganizados, e decidi me expressar no global. Nosso amigo e programador elissonS2 gostou da ideia e decidiu ir mais a fundo, e deu no que deu
___________________________________________________________________________________________________________
INTRODUÇÃO

Bom, recomendo esta macro para players que upam escavação usando o cascalho, pois o macro vai organizar apenas os seguintes itens, em ordem númerica:

k7wviYz.png
T897Stk.png
Ks9NVFX.png
HjlXPYY.png
t3iRZIj.png
sPQJrpI.png
Xu9OM7o.png
___________________________________________________________________________________________________________

DUVIDAS

- Você escolhe que tipo de pá ira usar, para ajuda, há uma lista com todos os itens a cima, é só achar o item no qual você vai usar, clicar e dar enter.

- Funciona com auto-reconect.

- Há um risco de sua pá quebrar, pois, se a macro parece de escavar quando não conseguisse reparar, o macro com o auto-reconect não funcionariam.

- Organiza cada item em uma trap de baus (Tutorial abaixo) podendo ter até 10 traps.

- Você escolhe em quanto tempo a macro para para verificar o inventário.

- Na tela, você pode ter uma noção de quantos XP, aproximadamente, você já conseguiu escavando.

- Funciona com o macro de economia de blocos, abrindo o inventário quando o chão esta prestes a limpar.

- Devido ao lag, os blocos da hotbar podem ir para o inventário, mais a macro vai detectar e puxa-los novamente para hotbar.
___________________________________________________________________________________________________________

INSTALAÇÃO

Vá até o macro settings
(Dentro do jogo vá até seu menu, opções, controles, macro settings)

Escolha uma letra que está na cor cinza

E escreva o seguinte código:

$$<escavacao.txt>

lAzTOpM.png

Clique em "Edit file" e na caixa do "Create a new file" escreva:

escavacao

PTNHmgi.png

E clique em "Create" e cole o seguinte código na caixa de texto que foi aberta:

$${

if(cav);
unset(cav);
log( );
log("&6&l[MACRO] &3&Escavaçao organizada V1.0 &4(OFF) &f- &aAproximadamente &a%#exp% de EXP.");
log( );

unset(@cav);
stop();

else;
set(cav);
log( );
log("&6&l[MACRO] &3&lEscavaçao organizada V1.0 &2(ON)");
log( );

set(@cav);

IFMATCHES(%DIRECTION%,N);
&near = NORTH;
ENDIF;
IFMATCHES(%DIRECTION%,S);
&near = SOUTH;
ENDIF;
IFMATCHES(%DIRECTION%,W);
&near = WEST;
ENDIF;
IFMATCHES(%DIRECTION%,E);
&near = EAST;
ENDIF;
ACHIEVEMENTGET(Macro iniciado by elissonS2,277);
#frente1=1;
#frente2=1;
#frente3=1;
#frente4=1;
#bau1=1;
#bau2=1;
#bau3=1;
#bau4=1;
#bau5=1;
#exp=0;
PROMPT(#bloco,$$i, Que bloco usará para cavar?);
PROMPT(#pa,$$i, Que tipo de pá irá ser usada?);
PROMPT(#rep,$$i, Qual o material usado na reparação da sua pá?);
PROMPT(#dur,$$?, Em qual durabilidade você quer reparar sua pá?);
ACHIEVEMENTGET(Macro iniciado by elissonS2,277);
PROMPT(#del,$$?, Qual delay para verificar o Inventário? Recomendado: 140 - 250);
PROMPT(#vel,$$?, Qual delay para quebrar os blocos? 1 = rápido | acima de 1 = diminuir a velociade);
PROMPT(#nivel,$$?, Qual seu nivel de escavação? 1 = menor que 350 | 2 = MAIOR ou iqual à 350);
ACHIEVEMENTGET(Macro iniciado by elissonS2,277);
PROMPT(#conj,$$?, Quantos conjuntos de baus você irá usar: maximo 10);
#dur=%#dur%;
#repq=0;
inc(#conj,1);
look(%&near%);
look(,55);
set(cav2);


//selecionando bloco a grauda

&line5="^264$|^387$";
if(%#bloco%=12);
&line1="^348$";
&line2="^2267$";
&line3="^88$";
&line4="^354$";
endif;
if(%#bloco%=13);
&line1="^289$";
&line2="^352$";
&line3="^2267$";
&line4="^88$|^354$|^87$";
endif;
if(%#bloco%=82);
&line1="^341$";
&line2="^2267$";
&line3="^287$";
&line4="^374$|^325$|^88$|^354$|^30$";
endif;
if(%#bloco%=2)
log( );
log("&6&l[VIP] &3&lEscavaçao organizada V1 &4(OFF) &dbloco Incompativel.");
log( );
unset(@cav);
unset(cav);
unset(cav2);
stop();
endif;
if(%#bloco%=3)
log( );
log("&6&l[VIP] &3&lEscavaçao organizada V1 &4(OFF) &dbloco Incompativel.");
log( );
unset(@cav);
unset(cav);
unset(cav2);
stop();
endif;
if(%#bloco%=3:2)
log( );
log("&6&l[VIP] &3&lEscavaçao organizada V1 &4(OFF) &dbloco Incompativel.");
log( );
unset(@cav);
unset(cav);
unset(cav2);
stop();
endif;
if(%#bloco%=88)
log( );
log("&6&l[VIP] &3&lEscavaçao organizada V1 &4(OFF) &dbloco Incompativel.");
log( );
unset(@cav);
unset(cav);
unset(cav2);
stop();
endif;

//colocando e quebrando o bloco
//inicio do loop

do;
do(%#del%);
ACHIEVEMENTGET(Aproximadamente %#exp% xp,277);
pick(%#bloco%);
key(use);
wait(%#vel%ms);
pick(%#pa%);

//checando durabilidade

if(%DURABILITY%<%#dur%);
gui(inventory);
for(#i,9,45);
getslotitem(%#i%,#id,#stack1);
if(%#id%=%#rep%);
#repq=%#repq%+%#stack1%;
endif;
next;
wait(1);
gui();

if(%#repq%=0);
if(%#nivel%=1);
log( );
log("&6&l[VIP] &3&lEscavaçao organizada V1 &4(OFF) &dNão pôde reparar &f- &aAproximadamente &a%#exp% de EXP.");
log( );
unset(@cav);
unset(cav);
unset(cav2);
stop();
else;
log( );
log("&6&l[VIP] &3&lEscavaçao organizada V1 &4(ON) &dAlgo de errado com seus dimas detectado tentando reparar.");
log( )
wait(2);
endif;
else(%#repq%>0%);
#repq=0;
look(%&near%);
look(,90);
key(use);
wait(2);
#repq=0;
endif;
endif;

look(%&near%);
look(,55);
key(attack);
inc(#exp, 1);
loop;


if(cav2);
gui(inventory);
wait(500ms);
getslotitem(35,#id,#stack);
wait(200ms);
if(%#stack%=0);
gui();
else;
wait(1);

//guardando primeiro item


if(%#frente1%=1);
}$$/home esc1$${
endif;
if(%#frente1%=2);
}$$/home esc12$${
endif;
if(%#frente1%=3);
}$$/home esc13$${
endif;
if(%#frente1%=4);
}$$/home esc14$${
endif;
if(%#frente1%=5);
}$$/home esc15$${
endif;
if(%#frente1%=6);
}$$/home esc16$${
endif;
if(%#frente1%=7);
}$$/home esc17$${
endif;
if(%#frente1%=8);
}$$/home esc18$${
endif;
if(%#frente1%=9);
}$$/home esc19$${
endif;
if(%#frente1%=10);
}$$/home esc10$${
endif;

if(%#bau1%=1);
wait(2);
look(,313);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line1%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau1,1);
endif;
endif;

if(%#bau1%=2);
wait(2);
gui();
look(,330);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line1%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau1,1);
endif;
endif;

if(%#bau1%=3);
wait(2);
gui();
look(,0);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line1%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau1,1);
endif;
endif;

if(%#bau1%=4);
wait(2);
gui();
look(,33);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line1%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#frente1,1);
#bau1=1;
endif;
endif;

//guardando segundo item


if(%#frente2%=1);
}$$/home esc2$${
endif;
if(%#frente2%=2);
}$$/home esc22$${
endif;
if(%#frente2%=3);
}$$/home esc23$${
endif;
if(%#frente2%=4);
}$$/home esc24$${
endif;
if(%#frente2%=5);
}$$/home esc25$${
endif;
if(%#frente2%=6);
}$$/home esc26$${
endif;
if(%#frente2%=7);
}$$/home esc27$${
endif;
if(%#frente2%=8);
}$$/home esc28$${
endif;
if(%#frente2%=9);
}$$/home esc29$${
endif;
if(%#frente2%=10);
}$$/home esc20$${
endif;

if(%#bau2%=1);
wait(2);
look(,313);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line2%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau2,1);
endif;
endif;

if(%#bau2%=2);
wait(2);
gui();
look(,330);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line2%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau2,1);
endif;
endif;

if(%#bau2%=3);
wait(2);
gui();
look(,0);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line2%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau2,1);
endif;
endif;

if(%#bau2%=4);
wait(2);
gui();
look(,33);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line2%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#frente2,1);
#bau2=1;
endif;
endif;

//guardando terceiro item


if(%#frente3%=1);
}$$/home esc3$${
endif;
if(%#frente3%=2);
}$$/home esc32$${
endif;
if(%#frente3%=3);
}$$/home esc33$${
endif;
if(%#frente3%=4);
}$$/home esc34$${
endif;
if(%#frente3%=5);
}$$/home esc35$${
endif;
if(%#frente3%=6);
}$$/home esc36$${
endif;
if(%#frente3%=7);
}$$/home esc37$${
endif;
if(%#frente3%=8);
}$$/home esc38$${
endif;
if(%#frente3%=9);
}$$/home esc39$${
endif;
if(%#frente3%=10);
}$$/home esc30$${
endif;

if(%#bau3%=1);
wait(2);
look(,313);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line3%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau3,1);
endif;
endif;

if(%#bau3%=2);
wait(2);
gui();
look(,330);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line3%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau3,1);
endif;
endif;

if(%#bau3%=3);
wait(2);
gui();
look(,0);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line3%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau3,1);
endif;
endif;

if(%#bau3%=4);
wait(2);
gui();
look(,33);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line3%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#frente3,1);
#bau3=1;
endif;
endif;

//guardando quarto item


if(%#frente4%=1);
}$$/home esc4$${
endif;
if(%#frente4%=2);
}$$/home esc42$${
endif;
if(%#frente4%=3);
}$$/home esc43$${
endif;
if(%#frente4%=4);
}$$/home esc44$${
endif;
if(%#frente4%=5);
}$$/home esc45$${
endif;
if(%#frente4%=6);
}$$/home esc46$${
endif;
if(%#frente4%=7);
}$$/home esc47$${
endif;
if(%#frente4%=8);
}$$/home esc48$${
endif;
if(%#frente4%=9);
}$$/home esc49$${
endif;
if(%#frente4%=10);
}$$/home esc40$${
endif;

if(%#bau4%=1);
wait(2);
look(,313);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line4%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau4,1);
endif;
endif;

if(%#bau4%=2);
wait(2);
gui();
look(,330);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line4%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau4,1);
endif;
endif;

if(%#bau4%=3);
wait(2);
gui();
look(,0);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line4%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau4,1);
endif;
endif;

if(%#bau4%=4);
wait(2);
gui();
look(,33);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line4%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#frente4,1);
#bau4=1;
endif;
endif;


//guardando quinto item

}$$
/home esc5
$${
if(%#bau5%=1);
wait(2);
key(use);
wait(1);
for(#slotn,54,80);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line5%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau5,1);
endif;
endif;

if(%#bau5%=2);
wait(2);
look(,0);
key(use);
wait(1);
for(#slotn,54,80);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line5%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau5,1);
endif;
endif;

}$$

/home macro

$${
wait(1);
endif;
endif;


gui(inventory);
wait(200ms);
for(#slot,9,35);
GETSLOTITEM(%#slot%,#id,#stack);
if((%#id%=%#pa%) || (%#id%=%#bloco%));
slotclick(%#slot%,l,true);wait(30ms);
endif;
next;
gui();

loop;
endif;
}$$


VlUX4hF.png

Apos colar, clique duas vezes em "Save" e pronto, macro instalado.
___________________________________________________________________________________________________________
LOCAL PARA ESCAVAÇÃO

Pode ser do mais simples, como este:

3TvI5O0.png

Ou um pouco mais avançado como este:

b2KHMdu.png
___________________________________________________________________________________________________________
TRAP DE BAUS

A trap pode ser feita em qualquer direção. Pode-se utilizar até 10 traps. São 5 sethomes para cada trap.

nxn3TaN.png

___________________________________________________________________________________________________________
SETHOMES

A sethome do local de escavação, deve ficar no centro do bloco de ferro, olhando pro local onde o macro ira colocar e quebrar o bloco.

As sethomes da trap devem ficar no centro do bloco vermelho olhando para os baus, sendo elas:

| Tabela: [Azul] = Numero dos baus da trap. |
| [Rosa] = Número da trap. |

1º Trap 4º Trap
/sethome esc1 /sethome esc14
/sethome esc2 /sethome esc24
/sethome esc3 /sethome esc34
/sethome esc4 /sethome esc44
/sethome esc5 /sethome esc54

2º Trap 5º Trap 10º Trap
/sethome esc12 /sethome esc15 /sethome esc10
/sethome esc22 /sethome esc25 /sethome esc20
/sethome esc32 /sethome esc35 Até /sethome esc30
/sethome esc42 /sethome esc45 /sethome esc40
/sethome esc52 /sethome esc55 /sethome esc50

3º Trap 6º Trap
/sethome esc13 /sethome esc16
/sethome esc23 /sethome esc26
/sethome esc33 /sethome esc36
/sethome esc43 /sethome esc46
/sethome esc53 /sethome esc56

___________________________________________________________________________________________________________
VÍDEO TUTORIAL

https://www.youtube.com/watch?v=3CP6t666VVc​
___________________________________________________________________________________________________________
ECONOMIA DE BLOCOS E ATUALIZAÇÃO DOS LIVROS

Quando o servidor anunciar que os itens do chão iram limpar em 5 segundos, o macro abrira o inventário para não perder itens nesse meio tempo. E também, quando você conseguir algum livro, o macro vai abrir seu /bau para atualizar e o livro aparecer. (Pois quase sempre o livro fica 'invisível')

Em "OnChat"

9ukN8OF.png



Cole o seguinte código:

$${IF(@cav);
IFMATCHES(%CHAT%,"Limpando itens do chao em 20s");
wait(15);
gui(inventory);
wait(12);
gui();
endif;
IFMATCHES(%CHATCLEAN%,^[\(]Mensagem de (\S+)\)\ :);
}$$
/r Afk --> Escavando com Escavação organizada v1.0 (MENSAGEM AUTOMATICA).
$${
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 1");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 2");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 3");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 4");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 5");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 6");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 7");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 8");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 9");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 10");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 11");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
endif;
}$$

OBS: No código acima, onde está escrito "Seu nick aqui" você coloca seu nick, pois assim o macro só vai atualizar os livros caso você pegue um.
___________________________________________________________________________________________________________
USAR EM SEGUNDO PLANO

Muita gente tem dificuldades em usar as macros em segundo plano (Fazer outra coisa em cima do minecraft, ex: Facebucar, Youtubar), pois ao tentar deixar upando e sair do minecraft usando algum atalho do teclado, o menu do minecraft abre.

Para isso não acontecer, dentro no jogo aperte a tecla "F3", com ela pressionada aperte a tecla "P" e solte as duas simultaneamente. Lembrando que não deve ter nenhuma macro na tecla "P"
___________________________________________________________________________________________________________

CRÉDITOS E DEDICAÇÕES

- Criação e programação do macro Escavação Organizada: elissonS2

- Criação e programação do macro "OnChat": elissonS2

- Macros base: Cava-Cava MrBlueees

- Criador do vídeo: elissonS2 & SLEEP

- Tópico de: SLEEP
___________________________________________________________________________________________________________

CHANGELOG

05/05/15 Criação do tópico.

05/05/15 Resolvido bug do macro estar olhando para cima.

___________________________________________________________________________________________________________

EM BREVE

- Quando você estiver com poucos cascalhos na hotbar e no inventário, o macro irar buscar automaticamente em uma home.

- Versão para players não-vips.

- Versão para servidores 1.7.
___________________________________________________________________________________________________________

Os macros do elissonS2 sempre serão postados primeiramente no canal AlpacaGplays, então se inscreva-se e acompanhe as novidades.
 
Gostei, mas prefiro uma macro básica, e se for separar os itens em baús com categorias ele perde um pouco de aproveitamento de espaço.
 
Boa mais nem vou usar , ja tenho o meu que ta funcionando de boa aqui.
 
Boa

Enviado de meu GT-S6102B usando o Tapatalk 2
 
Parabéns pela macro :D

Deixei meu UP, mas eu prefiro a do mrblueees, é mais básica e eu não me importo com a organização na macro de escavação, mas boa :p
 
queria usar mais como ja tenho limite de /homes :(
 
SLEEPP disse:
ESCAVAÇÃO ORGANIZADA
Tudo começou quando eu, SLEEP, estava sofrendo para vender os itens dropados na escavação, pois eles, estavam todos desorganizados, e decidi me expressar no global. Nosso amigo e programador elissonS2 gostou da ideia e decidiu ir mais a fundo, e deu no que deu
___________________________________________________________________________________________________________
INTRODUÇÃO

Bom, recomendo esta macro para players que upam escavação usando o cascalho, pois o macro vai organizar apenas os seguintes itens, em ordem númerica:

k7wviYz.png
T897Stk.png
Ks9NVFX.png
HjlXPYY.png
t3iRZIj.png
sPQJrpI.png
Xu9OM7o.png
___________________________________________________________________________________________________________

DUVIDAS

- Você escolhe que tipo de pá ira usar, para ajuda, há uma lista com todos os itens a cima, é só achar o item no qual você vai usar, clicar e dar enter.

- Funciona com auto-reconect.

- Há um risco de sua pá quebrar, pois, se a macro parece de escavar quando não conseguisse reparar, o macro com o auto-reconect não funcionariam.

- Organiza cada item em uma trap de baus (Tutorial abaixo) podendo ter até 10 traps.

- Você escolhe em quanto tempo a macro para para verificar o inventário.

- Na tela, você pode ter uma noção de quantos XP, aproximadamente, você já conseguiu escavando.

- Funciona com o macro de economia de blocos, abrindo o inventário quando o chão esta prestes a limpar.

- Devido ao lag, os blocos da hotbar podem ir para o inventário, mais a macro vai detectar e puxa-los novamente para hotbar.
___________________________________________________________________________________________________________

INSTALAÇÃO

Vá até o macro settings
(Dentro do jogo vá até seu menu, opções, controles, macro settings)

Escolha uma letra que está na cor cinza

E escreva o seguinte código:

$$<escavacao.txt>

lAzTOpM.png

Clique em "Edit file" e na caixa do "Create a new file" escreva:

escavacao

PTNHmgi.png

E clique em "Create" e cole o seguinte código na caixa de texto que foi aberta:

$${

if(cav);
unset(cav);
log( );
log("&6&l[VIP] &3&lEscavaçao organizada v1.0 &4(OFF) &f- &aEm media &a%#exp% de EXP gerado.");
log( );

unset(@cav);
stop();

else;
set(cav);
log( );
log("&6&l[VIP] &3&lEscavaçao organizada v1.0 &2(ON)");
log( );

set(@cav);

IFMATCHES(%DIRECTION%,N);
&near = NORTH;
ENDIF;
IFMATCHES(%DIRECTION%,S);
&near = SOUTH;
ENDIF;
IFMATCHES(%DIRECTION%,W);
&near = WEST;
ENDIF;
IFMATCHES(%DIRECTION%,E);
&near = EAST;
ENDIF;

#frente1=1;
#frente2=1;
#frente3=1;
#frente4=1;
#bau1=1;
#bau2=1;
#bau3=1;
#bau4=1;
#bau5=1;
#exp=0;
PROMPT(#bloco,$$i, Que bloco usará para cavar?);
PROMPT(#pa,$$i, Que tipo de pá irá ser usada?);
PROMPT(#rep,$$i, Qual o material usado na reparação da sua pá?);
PROMPT(#dur,$$?, Em qual durabilidade você quer reparar sua pá?);
PROMPT(#del,$$?, Qual delay para verificar o Inventário? Recomendado: 140 - 250);
PROMPT(#vel,$$?, Qual delay para quebrar os blocos? 1 = rápido | acima de 1 = diminuir a velociade);
PROMPT(#nivel,$$?, Qual seu nivel de escavação? 1 = menor que 350 | 2 = MAIOR ou iqual à 350);
PROMPT(#conj,$$?, Quantos conjuntos de baus você irá usar: maximo 10);
#dur=%#dur%;
#repq=0;
inc(#conj,1);
look(%&near%);
look(,270);
set(cav2);

//selecionando bloco a grauda

&line5="^264$|^387$";
if(%#bloco%=12);
&line1="^348$";
&line2="^2267$";
&line3="^88$";
&line4="^354$";
endif;
if(%#bloco%=13);
&line1="^289$";
&line2="^352$";
&line3="^2267$";
&line4="^88$|^354$|^87$";
endif;
if(%#bloco%=82);
&line1="^341$";
&line2="^2267$";
&line3="^287$";
&line4="^374$|^325$|^88$|^354$|^30$";
endif;
if(%#bloco%=2)
log( );
log("&6&l[VIP] &3&lEscavaçao organizada v1.0 &4(OFF) &dbloco Incompativel.");
log( );
unset(@cav);
unset(cav);
unset(cav2);
stop();
endif;
if(%#bloco%=3)
log( );
log("&6&l[VIP] &3&lEscavaçao organizada v1.0 &4(OFF) &dbloco Incompativel.");
log( );
unset(@cav);
unset(cav);
unset(cav2);
stop();
endif;
if(%#bloco%=3:2)
log( );
log("&6&l[VIP] &3&lEscavaçao organizada v1.0 &4(OFF) &dbloco Incompativel.");
log( );
unset(@cav);
unset(cav);
unset(cav2);
stop();
endif;
if(%#bloco%=88)
log( );
log("&6&l[VIP] &3&lEscavaçao organizada v1.0 &4(OFF) &dbloco Incompativel.");
log( );
unset(@cav);
unset(cav);
unset(cav2);
stop();
endif;

//colocando e quebrando o bloco
//inicio do loop

do;
do(%#del%);
ACHIEVEMENTGET(Aproximadamente %#exp% xp,277);
pick(%#bloco%);
key(use);
wait(%#vel%ms);
pick(%#pa%);

//checando durabilidade

if(%DURABILITY%<%#dur%);
gui(inventory);
for(#i,9,45);
getslotitem(%#i%,#id,#stack1);
if(%#id%=%#rep%);
#repq=%#repq%+%#stack1%;
endif;
next;
wait(1);
gui();

if(%#repq%=0);
if(%#nivel%=1);
log( );
log("&6&l[VIP] &3&lEscavaçao organizada v1.0 &4(OFF) &dNão pôde reparar &f- &aAproximadamente &a%#exp% de EXP.");
log( );
unset(@cav);
unset(cav);
unset(cav2);
stop();
else;
log( );
log("&6&l[VIP] &3&lEscavaçao organizada v1.0 &4(ON) &dAlgo de errado com seus dimas detectado tentando reparar.");
log( )
wait(2);
endif;
else(%#repq%>0%);
#repq=0;
look(%&near%);
look(,90);
key(use);
wait(2);
#repq=0;
endif;
endif;

look(%&near%);
look(,270);
key(attack);
inc(#exp, 1);
loop;


if(cav2);
gui(inventory);
wait(500ms);
getslotitem(35,#id,#stack);
wait(200ms);
if(%#stack%=0);
gui();
else;
wait(1);

//guardando primeiro item


if(%#frente1%=1);
}$$/home esc1$${
endif;
if(%#frente1%=2);
}$$/home esc12$${
endif;
if(%#frente1%=3);
}$$/home esc13$${
endif;
if(%#frente1%=4);
}$$/home esc14$${
endif;
if(%#frente1%=5);
}$$/home esc15$${
endif;
if(%#frente1%=6);
}$$/home esc16$${
endif;
if(%#frente1%=7);
}$$/home esc17$${
endif;
if(%#frente1%=8);
}$$/home esc18$${
endif;
if(%#frente1%=9);
}$$/home esc19$${
endif;
if(%#frente1%=10);
}$$/home esc10$${
endif;

if(%#bau1%=1);
wait(2);
look(,313);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line1%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau1,1);
endif;
endif;

if(%#bau1%=2);
wait(2);
gui();
look(,330);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line1%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau1,1);
endif;
endif;

if(%#bau1%=3);
wait(2);
gui();
look(,0);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line1%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau1,1);
endif;
endif;

if(%#bau1%=4);
wait(2);
gui();
look(,33);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line1%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#frente1,1);
#bau1=1;
endif;
endif;

//guardando segundo item


if(%#frente2%=1);
}$$/home esc2$${
endif;
if(%#frente2%=2);
}$$/home esc22$${
endif;
if(%#frente2%=3);
}$$/home esc23$${
endif;
if(%#frente2%=4);
}$$/home esc24$${
endif;
if(%#frente2%=5);
}$$/home esc25$${
endif;
if(%#frente2%=6);
}$$/home esc26$${
endif;
if(%#frente2%=7);
}$$/home esc27$${
endif;
if(%#frente2%=8);
}$$/home esc28$${
endif;
if(%#frente2%=9);
}$$/home esc29$${
endif;
if(%#frente2%=10);
}$$/home esc20$${
endif;

if(%#bau2%=1);
wait(2);
look(,313);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line2%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau2,1);
endif;
endif;

if(%#bau2%=2);
wait(2);
gui();
look(,330);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line2%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau2,1);
endif;
endif;

if(%#bau2%=3);
wait(2);
gui();
look(,0);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line2%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau2,1);
endif;
endif;

if(%#bau2%=4);
wait(2);
gui();
look(,33);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line2%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#frente2,1);
#bau2=1;
endif;
endif;

//guardando terceiro item


if(%#frente3%=1);
}$$/home esc3$${
endif;
if(%#frente3%=2);
}$$/home esc32$${
endif;
if(%#frente3%=3);
}$$/home esc33$${
endif;
if(%#frente3%=4);
}$$/home esc34$${
endif;
if(%#frente3%=5);
}$$/home esc35$${
endif;
if(%#frente3%=6);
}$$/home esc36$${
endif;
if(%#frente3%=7);
}$$/home esc37$${
endif;
if(%#frente3%=8);
}$$/home esc38$${
endif;
if(%#frente3%=9);
}$$/home esc39$${
endif;
if(%#frente3%=10);
}$$/home esc30$${
endif;

if(%#bau3%=1);
wait(2);
look(,313);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line3%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau3,1);
endif;
endif;

if(%#bau3%=2);
wait(2);
gui();
look(,330);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line3%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau3,1);
endif;
endif;

if(%#bau3%=3);
wait(2);
gui();
look(,0);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line3%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau3,1);
endif;
endif;

if(%#bau3%=4);
wait(2);
gui();
look(,33);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line3%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#frente3,1);
#bau3=1;
endif;
endif;

//guardando quarto item


if(%#frente4%=1);
}$$/home esc4$${
endif;
if(%#frente4%=2);
}$$/home esc42$${
endif;
if(%#frente4%=3);
}$$/home esc43$${
endif;
if(%#frente4%=4);
}$$/home esc44$${
endif;
if(%#frente4%=5);
}$$/home esc45$${
endif;
if(%#frente4%=6);
}$$/home esc46$${
endif;
if(%#frente4%=7);
}$$/home esc47$${
endif;
if(%#frente4%=8);
}$$/home esc48$${
endif;
if(%#frente4%=9);
}$$/home esc49$${
endif;
if(%#frente4%=10);
}$$/home esc40$${
endif;

if(%#bau4%=1);
wait(2);
look(,313);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line4%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau4,1);
endif;
endif;

if(%#bau4%=2);
wait(2);
gui();
look(,330);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line4%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau4,1);
endif;
endif;

if(%#bau4%=3);
wait(2);
gui();
look(,0);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line4%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau4,1);
endif;
endif;

if(%#bau4%=4);
wait(2);
gui();
look(,33);
key(use);
wait(1);
for(#slotn,54,89);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line4%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#frente4,1);
#bau4=1;
endif;
endif;


//guardando quinto item

}$$
/home esc5
$${
if(%#bau5%=1);
wait(2);
key(use);
wait(1);
for(#slotn,54,80);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line5%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau5,1);
endif;
endif;

if(%#bau5%=2);
wait(2);
look(,0);
key(use);
wait(1);
for(#slotn,54,80);
GETSLOTITEM(%#slotn%,#id,#stack);
ifmatches(%#id%,%&line5%);
slotclick(%#slotn%,l,true);wait(30ms);
endif;
next;
wait(500ms);
getslotitem(53,#id,#stack);
wait(500ms);
if(%#stack%!=0);
inc(#bau5,1);
endif;
endif;

}$$

/home macro

$${
wait(1);
endif;
endif;


gui(inventory);
wait(200ms);
for(#slot,9,35);
GETSLOTITEM(%#slot%,#id,#stack);
if((%#id%=%#pa%) || (%#id%=%#bloco%));
slotclick(%#slot%,l,true);wait(30ms);
endif;
next;
gui();

loop;
endif;
}$$

VlUX4hF.png

Apos colar, clique duas vezes em "Save" e pronto, macro instalado.
___________________________________________________________________________________________________________
LOCAL PARA ESCAVAÇÃO

Pode ser do mais simples, como este:

3TvI5O0.png

Ou um pouco mais avançado como este:

b2KHMdu.png
___________________________________________________________________________________________________________
TRAP DE BAUS

A trap pode ser feita em qualquer direção. Pode-se utilizar até 10 traps. São 5 sethomes para cada trap.

nxn3TaN.png

___________________________________________________________________________________________________________
SETHOMES

A sethome do local de escavação, deve ficar no centro do bloco de ferro, olhando pro local onde o macro ira colocar e quebrar o bloco.

As sethomes da trap devem ficar no centro do bloco vermelho olhando para os baus, sendo elas:

| Tabela: [Azul] = Numero dos baus da trap. |
| [Rosa] = Número da trap. |

1º Trap 4º Trap
/sethome esc1 /sethome esc14
/sethome esc2 /sethome esc24
/sethome esc3 /sethome esc34
/sethome esc4 /sethome esc44
/sethome esc5 /sethome esc54

2º Trap 5º Trap 10º Trap
/sethome esc12 /sethome esc15 /sethome esc10
/sethome esc22 /sethome esc25 /sethome esc20
/sethome esc32 /sethome esc35 Até /sethome esc30
/sethome esc42 /sethome esc45 /sethome esc40
/sethome esc52 /sethome esc55 /sethome esc50

3º Trap 6º Trap
/sethome esc13 /sethome esc16
/sethome esc23 /sethome esc26
/sethome esc33 /sethome esc36
/sethome esc43 /sethome esc46
/sethome esc53 /sethome esc56

___________________________________________________________________________________________________________
VÍDEO TUTORIAL

https://www.youtube.com/watch?v=3CP6t666VVc​
___________________________________________________________________________________________________________
ECONOMIA DE BLOCOS E ATUALIZAÇÃO DOS LIVROS

Quando o servidor anunciar que os itens do chão iram limpar em 5 segundos, o macro abrira o inventário para não perder itens nesse meio tempo. E também, quando você conseguir algum livro, o macro vai abrir seu /bau para atualizar e o livro aparecer. (Pois quase sempre o livro fica 'invisível')

Em "OnChat"

9ukN8OF.png



Cole o seguinte código:

$${IF(@cav);IFMATCHES(%CHAT%,"Limpando itens do chao em 20s");wait(15);gui(inventory);wait(12);gui();endif;
IFMATCHES(%CHATCLEAN%,^[\(]Mensagem de (\S+)\)\ :);
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 1");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 2");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 3");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 4");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 5");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 6");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 7");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 8");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 9");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 10");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
IFMATCHES(%CHAT%,"SEU_NICK_AQUI encontrou um livro: Tesouro Nível 11");
wait(2);
}$$
/chest
$${
wait(2);
gui();
endif;
}$$

OBS: No código acima, onde está escrito "Seu nick aqui" você coloca seu nick, pois assim o macro só vai atualizar os livros caso você pegue um.
___________________________________________________________________________________________________________
USAR EM SEGUNDO PLANO

Muita gente tem dificuldades em usar as macros em segundo plano (Fazer outra coisa em cima do minecraft, ex: Facebucar, Youtubar), pois ao tentar deixar upando e sair do minecraft usando algum atalho do teclado, o menu do minecraft abre.

Para isso não acontecer, dentro no jogo aperte a tecla "F3", com ela pressionada aperte a tecla "P" e solte as duas simultaneamente. Lembrando que não deve ter nenhuma macro na tecla "P"
___________________________________________________________________________________________________________

CRÉDITOS E DEDICAÇÕES

- Criação e programação do macro Escavação Organizada: elissonS2

- Criação e programação do macro "OnChat": elissonS2

- Macros base: Cava-Cava MrBlueees

- Criador do vídeo: elissonS2 & SLEEP

- Tópico de: SLEEP
Que macro delicia cara :P vlw :)!
 
Status
Não está aberto para novas respostas.

Usuários que estão visualizando este tópico

Voltar
Topo