ENTREGUE [MACRO]Script Bulldozer

Discussão em 'Macro Entregue' iniciado por xlyz, 11 Novembro 2015.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. xlyz

    xlyz Excelente
    VIP

    Afiliado:
    1 Agosto 2014
    Mensagens:
    229
    Curtidas Recebidas:
    228
    Curtiu:
    490
    Sexo:
    Masculino
    Cubos:
    492.00
    Nick:
    xlyz
    Clan:
    MGT
    Scripts da (Macro de escavação) Bulldozer
    Como não é possível usar links externos no fórum, e eu ia fazer isso para disponibilizar o download desse script, terei que deixar o código em si, criei um novo tópico porque no tópico que tem o tutorial (clique), ultrapassa o limite de caracteres:
    Obs: Não se assustem com o tamanho da macro '-'.

    Script macro na tecla:
    $${
    if(@xlyz);
    log("");
    log("&e&l»Bulldozer»&4&lFinalizada.");
    //Lembrete
    if(item_inv);
    log("&b&l»Lembrete»&fNao se esqueça de limpar o bau onde foram deixados os itens no começo! Quando ligar novamente talves precise dele.");
    endif;

    //Mostra niveis upados
    if(%@#ups_skill% = 1);
    log("&b&l*Você upou &9&n&l%@#ups_skill%&b&l nível!");
    elseif(%@#ups_skill% > 1);
    log("&b&l*Você upou &9&n&l%@#ups_skill%&b&l níveis!");
    endif;

    //Mostra money ganho
    if(%@#discos% > 0);
    #total = %@#discos% * 95;
    log("&2&l*Você vendeu &a&n&l%@#discos%&2&l discos, e ganhou &b&n&l%#total%&2&l Coins!");
    endif;

    ACHIEVEMENTGET(xlyz: Obrigado por usar!,277);
    #cod_off = 1;
    &time = "&b&l*Hora: &f&l%TIME% &0/ &b&l*Data: &f&l%DATE% &f(Ano-Mês-Dia)";

    //Guarda niveis upados
    if(%@#ups_skill% = 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l nível na ultima vez que a macro trabalhou!";
    elseif(%@#ups_skill% > 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l níveis na ultima vez que a macro trabalhou!";
    else;
    &skill_up = "";
    endif;

    //Guarda money ganho
    if(%@#discos% > 0);
    #total = %@#discos% * 95;
    &money = "&2&l*Você vendeu &a&n&l%@#discos%&2&l discos, e ganhou &b&n&l%#total%&2&l Coins!";
    else;
    &money = "";
    endif;

    //Arrumar: verificar logs se estao padrao

    log("");
    unset(@xlyz);
    stop();
    else;
    log("");
    set(@xlyz);
    log("&e&l»Bulldozer»&a&lAtivada");

    //Inicializar/Reiniciar variáveis
    unset(nao_pronto); //Personagem nao pronto para macro iniciar
    unset(configuracoes_novas); //Configurar novamente
    unset(repos_pas); //Reposicao/troca das pas
    unset(pas_red); //Pas gastas
    set(reconhecer); //reconhecimento das homes
    set(baus_disponiveis); //Baus da trap vazio
    set(lixo_inv); //Se tem lixo no inventario
    unset(bau_red_full);
    unset(sem_pa);
    unset(item_inv);
    #slot = 4;
    #red = 0;
    @#ups_skill = 0;
    @#discos = 0;
    #total = 0;
    &money = "";
    @#tell = 0;
    #pas_sobraram = 0;
    unset(@logando);

    playsound(random.levelup);

    //Pergunta se usuário quer relatório
    log("");
    log("&e&l<Bulldozer>&b&oPressione &b&l1 &b&opara exibir o relatório da última vez que a macro executou, ou &b&l2 &b&opara prosseguir...");
    do;
    if(KEY_1);
    gui(CHAT);
    log("");
    log("&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_");
    log("&e&l<Bulldozer>&2&lRelatório:");
    //Mostra hora e motivo ultimo desligamento
    if(%#cod_off% = 0);
    log("&b&l*Motivo ultimo desligamento:&7Desconhecido");
    elseif(%#cod_off% = 1);
    log("&b&l*Motivo ultimo desligamento:&fVocê desligou!");
    elseif(%#cod_off% = 2);
    log("&b&l*Motivo ultimo desligamento:&f'/home discos' incorreta!");
    elseif(%#cod_off% = 3);
    log("&b&l*Motivo ultimo desligamento:&fFoi impossível esvaziar p inventário para iniciar!");
    elseif(%#cod_off% = 4);
    log("&b&l*Motivo ultimo desligamento:&fNao haviam pás suficientes nos baus para iniciar!");
    elseif(%#cod_off% = 5);
    log("&b&l*Motivo ultimo desligamento:&fSem material suficiente nos baus para iniciar!");
    elseif(%#cod_off% = 6);
    log("&b&l*Motivo ultimo desligamento:&fFoi impossível remover as pás red da hotbar por falta de espaço nos baus!");
    elseif(%#cod_off% = 7);
    log("&b&l*Motivo ultimo desligamento:&fFoi impossível substituir pás gastas, pela falta de pás boas!");
    elseif(%#cod_off% = 8);
    log("&b&l*Motivo ultimo desligamento:&fAcabou o material de escavaçao dos baus!");
    endif;
    log("%&time%");
    log("%&skill_up%");
    log("%&money%");
    log("&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_&9_&b_");
    log("");
    wait(100ms);
    break;
    elseif(KEY_2);
    log("");
    wait(100ms);
    break;
    endif;
    loop;

    //Verifica se tem configuracoes anteriores
    if((%#bau% != 0) && (%#quantidade% != 0) && (%#bloco% != 0));
    //Pergunta se quer manter configuracoes anteriores
    log("&e&l<Bulldozer>&f&lVoce deseja usar as ultimas configuraçoes?");
    log("&f==============================================");
    log("&e&l<Bulldozer>&6Pressione &e&l1&6-&2Sim! Usar as configuraçoes abaixo:");
    if(vender_discos);
    &vende = "&6Sim";
    else;
    &vende = "&6Nao";
    endif;
    log("&2Bau:&6%#bau%&e\&2Delay:&6%#quebrar%&e\&2Quantidade blocos antes de abrir inv:&6%#quantidade%&e\&2Id bloco:&6%#bloco%&e\&2bau pá:&6%#bau_pa%&e\&2Vender Discos:%&vende%");
    log(%&log_lixo%);
    log("&f______________________________________________");
    log("&e&l<Bulldozer>&6Pressione &e&l2&6-&cNao! Quero reconfigurar");
    log("");

    //Verifica o que o usuario pressionou
    do;
    if(KEY_1);
    log("&e&l<Bulldozer>&2&lVoce selecionou &f'Usar as ultimas configuraçoes!'");
    log("");

    if((#%bau_pa% = 0) || (%#bau_material% = 0) || (%#bau_red% = 0));
    #bau_pa = 1;
    #bau_material = 1;
    #bau_red = 1;
    endif;

    break;
    elseif(KEY_2);
    log("&e&l<Bulldozer>&c&lVoce selecionou &f'Reconfigurar'");
    log("");
    wait(100ms);
    set(configuracoes_novas);
    #bau_pa = 1;
    #bau_material = 1;
    #bau_red = 1;

    //Questionário das configuracoes
    log("&e&l<Bulldozer>&fIniciando questionário...");

    //Pergunta qual tipo de lixo quer jogar
    &lixo = "^0$|^0";
    &log_lixo = "&2Lixo sem itens.";
    log("");
    log("&e&l<Bulldozer>&f&lEscolha quais itens deseja jogar fora:");
    log("&f==============================================");
    log("&6&l[Pressione 1]&cGlowstone&f\&cOvo&f\&cMaça&f\&cCacau&f\&cCogumelos&f\&cBolo");
    log("&6&l[Pressione 2]&cOs itens acima + Pólvora&f\&cSlime&f\&cRelogio&f\&cBalde");
    log("&6&l[Pressione 3]&cTodos os itens acima + Osso&f\&cTeia&f\&cNetherrack");
    log("&6&l[Pressione 4]&cJogar fora todos os itens dropados!");
    log("&6&l[Pressione 5]&cNao jogar nada fora!");
    log("");

    //Verifica o que o usuario pressionou
    do;
    if(KEY_1);
    log("&e&l<Bulldozer>&2&lVoce pressionou:");
    log("&6&l[1]&cLixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo");
    log("");
    &lixo = "^348$|^348$|^344$|^260$|^351$|^39$|^40$|^354";
    &log_lixo = "&2Lixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo";
    break;
    elseif(KEY_2);
    log("&e&l<Bulldozer>&2&lVoce pressionou:");
    log("&6&l[2]&cLixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo&f\&6Pólvora&f\&6Slime&f\&6Relogio&f\&6Balde");
    log("");
    &lixo = "^348$|^348$|^344$|^260$|^351$|^39$|^40$|^354$|^289$|^341$|^347$|^325";
    &log_lixo = "&2Lixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo&f\&6Pólvora&f\&6Slime&f\&6Relogio&f\&6Balde";
    break;
    elseif(KEY_3);
    log("&e&l<Bulldozer>&2&lVoce pressionou:");
    log("&6&l[3]&cLixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo&f\&6Pólvora&f\&6Slime&f\&6Relogio&f\&6Balde&f\&6Osso&f\&6Teia&f\&6Netherrack");
    log("");
    &lixo = "^348$|^348$|^344$|^260$|^351$|^39$|^40$|^354$|^289$|^341$|^347$|^325$|^352$|^30$|^87";
    &log_lixo = "&2Lixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo&f\&6Pólvora&f\&6Slime&f\&6Relogio&f\&6Balde&f\&6Osso&f\&6Teia&f\&6Netherrack";
    break;
    elseif(KEY_4);
    log("&e&l<Bulldozer>&2&lVoce pressionou:");
    log("&6&l[4]&cLixo: &6Todos os itens que dropam da escavaçao!");
    log("");
    &lixo = "^348$|^348$|^344$|^260$|^351$|^39$|^40$|^354$|^289$|^341$|^347$|^325$|^352$|^30$|^87$|^2267$|^287$|^264$|^88";
    &log_lixo = "&2Lixo: &6Todos os itens que dropam da escavaçao!";
    break;
    elseif(KEY_5);
    log("&e&l<Bulldozer>&2&lVoce pressionou:");
    log("&6&l[5]&cLixo: &6Nenhum item!");
    log("");
    &lixo = "^0$|^0";
    &log_lixo = "&2Lixo: &6Nenhum item!";
    break;
    endif;
    loop;

    wait(100ms);

    //Pergunta se quer vender discos
    log("");
    log("&e&l<Bulldozer>&f&lQuer vender discos após encher os baus?");
    log("&f==============================================");
    log("&6&l[Pressione 1]&2Sim! Vender discos após baus encherem");
    log("&f______________________________________________");
    log("&6&l[Pressione 2]&cNao! Nao quero vender discos quando encher os baus");
    log("");
    do;
    if(KEY_1);
    log("");
    log("&e&l<Bulldozer>&2&lVoce selecionou &f'vender os discos!'");
    log("");
    set(vender_discos);
    break;
    elseif(KEY_2);
    log("");
    log("&e&l<Bulldozer>&c&lVoce selecionou &f'Nao vender discos'");
    log("");
    unset(vender_discos);
    break;
    endif;
    loop;

    wait(500ms);
    gui();
    do;
    PROMPT(#bloco,$$i, Qual bloco usará para escavar? Só serao aceitos blocos 'escaváveis');
    until((#bloco = 2)||(#bloco = 3)||(#bloco = 12)||(#bloco = 13)||(#bloco = 82)||(#bloco = 88)||(#bloco = 110));
    do;
    PROMPT(#quantidade,$$?, Qual quantidade de blocos que irá quebrar antes de verificar o inventário?Sugestao(500));
    until((#quantidade > 30));
    if(%#quantidade% > 799);
    log("&e&l<Bulldozer>&4Cuidado! &cEsse valor é alto, podem ocorrer problemas só utilize se tem certeza do que esta fazendo!");
    endif;
    do;
    PROMPT(#quebrar,$$?, Qual delay para quebrar os blocos?(0 sem delay para pás com mais eficiência/Aumente se o bloco nao quebrar!));
    until((#quebrar < 20) && (#quebrar >= 0));
    do;
    PROMPT(#bau,$$?, Em qual baú devo iniciar o armazenamento?(1 à 76));
    until((#bau > 0)&&(#bau <= 76));

    break;
    endif;
    loop;
    else;
    log("&e&l<Bulldozer>&f&lNao há configurações anteriores para utilizar, será necessário reconfigurar!");
    log("");
    set(configuracoes_novas);
    #bau_pa = 1;
    #bau_material = 1;
    #bau_red = 1;

    wait(800ms);

    //Questionário das configuracoes
    log("&e&l<Bulldozer>&fIniciando questionário...");

    //Pergunta qual tipo de lixo quer jogar
    &lixo = "^0$|^0";
    &log_lixo = "&2Lixo sem itens.";
    log("");
    log("&e&l<Bulldozer>&f&lEscolha quais itens deseja jogar fora:");
    log("&f==============================================");
    log("&6&l[Pressione 1]&cGlowstone&f\&cOvo&f\&cMaça&f\&cCacau&f\&cCogumelos&f\&cBolo");
    log("&6&l[Pressione 2]&cOs itens acima + Pólvora&f\&cSlime&f\&cRelogio&f\&cBalde");
    log("&6&l[Pressione 3]&cTodos os itens acima + Osso&f\&cTeia&f\&cNetherrack");
    log("&6&l[Pressione 4]&cJogar fora todos os itens dropados!");
    log("&6&l[Pressione 5]&cNao jogar nada fora!");
    log("");

    //Verifica o que o usuario pressionou
    do;
    if(KEY_1);
    log("&e&l<Bulldozer>&2&lVoce pressionou:");
    log("&6&l[1]&cLixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo");
    log("");
    &lixo = "^348$|^348$|^344$|^260$|^351$|^39$|^40$|^354";
    &log_lixo = "&2Lixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo";
    break;
    elseif(KEY_2);
    log("&e&l<Bulldozer>&2&lVoce pressionou:");
    log("&6&l[2]&cLixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo&f\&6Pólvora&f\&6Slime&f\&6Relogio&f\&6Balde");
    log("");
    &lixo = "^348$|^348$|^344$|^260$|^351$|^39$|^40$|^354$|^289$|^341$|^347$|^325";
    &log_lixo = "&2Lixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo&f\&6Pólvora&f\&6Slime&f\&6Relogio&f\&6Balde";
    break;
    elseif(KEY_3);
    log("&e&l<Bulldozer>&2&lVoce pressionou:");
    log("&6&l[3]&cLixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo&f\&6Pólvora&f\&6Slime&f\&6Relogio&f\&6Balde&f\&6Osso&f\&6Teia&f\&6Netherrack");
    log("");
    &lixo = "^348$|^348$|^344$|^260$|^351$|^39$|^40$|^354$|^289$|^341$|^347$|^325$|^352$|^30$|^87";
    &log_lixo = "&2Lixo:&6Glowstone&f\&6Ovo&f\&6Maça&f\&6Cacau&f\&6Cogumelos&f\&6Bolo&f\&6Pólvora&f\&6Slime&f\&6Relogio&f\&6Balde&f\&6Osso&f\&6Teia&f\&6Netherrack";
    break;
    elseif(KEY_4);
    log("&e&l<Bulldozer>&2&lVoce pressionou:");
    log("&6&l[4]&cLixo: &6Todos os itens que dropam da escavaçao!");
    log("");
    &lixo = "^348$|^348$|^344$|^260$|^351$|^39$|^40$|^354$|^289$|^341$|^347$|^325$|^352$|^30$|^87$|^2267$|^287$|^264$|^88";
    &log_lixo = "&2Lixo: &6Todos os itens que dropam da escavaçao!";
    break;
    elseif(KEY_5);
    log("&e&l<Bulldozer>&2&lVoce pressionou:");
    log("&6&l[5]&cLixo: &6Nenhum item!");
    log("");
    &lixo = "^0$|^0";
    &log_lixo = "&2Lixo: &6Nenhum item!";
    endif;
    loop;

    wait(100ms);

    //Pergunta se quer vender discos
    log("");
    log("&e&l<Bulldozer>&f&lQuer vender discos após encher os baus?");
    log("&f==============================================");
    log("&6&l[Pressione 1]&2Sim! Vender discos após baus encherem");
    log("&f______________________________________________");
    log("&6&l[Pressione 2]&cNao! Nao quero vender discos quando encher os baus");
    log("");
    do;
    if(KEY_1);
    log("");
    log("&e&l<Bulldozer>&2&lVoce selecionou &f'vender os discos!'");
    log("");
    set(vender_discos);
    break;
    elseif(KEY_2);
    log("");
    log("&e&l<Bulldozer>&c&lVoce selecionou &f'Nao vender discos'");
    log("");
    unset(vender_discos);
    break;
    endif;
    loop;

    wait(500ms);
    gui();
    do;
    PROMPT(#bloco,$$i, Qual bloco usará para escavar? Só serao aceitos blocos 'escaváveis');
    until((#bloco = 2)||(#bloco = 3)||(#bloco = 12)||(#bloco = 13)||(#bloco = 82)||(#bloco = 88)||(#bloco = 110));
    do;
    PROMPT(#quantidade,$$?, Qual quantidade de blocos que irá quebrar antes de verificar o inventário?Sugestao(500));
    until((#quantidade > 30));
    if(%#quantidade% > 799);
    log("&e&l<Bulldozer>&4Cuidado! &cEsse valor é alto, podem ocorrer problemas só utilize se tem certeza do que esta fazendo!");
    endif;
    do;
    PROMPT(#quebrar,$$?, Qual delay para quebrar os blocos?(0 sem delay para pás com mais eficiência/Aumente se o bloco nao quebrar!));
    until((#quebrar < 20) && (#quebrar >= 0));
    do;
    PROMPT(#bau,$$?, Em qual baú devo iniciar o armazenamento?(1 à 76));
    until((#bau > 0)&&(#bau <= 76));

    endif;

    //Pergunta se esta arrumado
    log("&e&l<Bulldozer>&f&lVoce ja esta com inventario pronto para escavar?");
    log("&f==============================================");
    log("&e&l<Bulldozer>&6Pressione &e&l3-&2Sim, estou pronto!");
    log("&f______________________________________________");
    log("&e&l<Bulldozer>&6Pressione &e&l4-&cNao, me arrume, please!");
    log("");

    //Verifica o que o usuario pressionou
    do;
    if(KEY_3);
    log("&e&l<Bulldozer>&2&lVoce selecionou &f'Pronto para escavar!'");
    break;
    elseif(KEY_4);
    log("&e&l<Bulldozer>&c&lVoce selecionou &f'Me arrume, please!'");
    log("&4&l[!]&eSe o bau usado para deixar as coisas do inventário nao for suficiente para isso, a macro &cdesligará!&4&l[!]");
    set(nao_pronto);
    break;
    endif;
    loop;

    //Verifica se ja tem alguma home reconhecida para nao precisar reconhecer novamente

    //Se ja tiverem valores, o usuario pode escolher se quer reconhecer novamente ou nao
    if((%#xc% != 0) && (%#xe% != 0) && (%#xt% != 0));
    log("");
    log("&e&l<Bulldozer>&f&lHá valores das coordenadas das homes salvos, quer utiliza-los, ou reconhecer as homes novamente?");
    log("&f==============================================");
    log("&e&l<Bulldozer>&6Pressione &e&l5-&2Sim, quero usar as coordenadas de homes salvas na vez anterior!");
    log("&f______________________________________________");
    log("&e&l<Bulldozer>&6Pressione &e&l6-&cNao, quero que a macro reconheça as homes novamente!");
    log("");

    //Verifica o que o usuario pressionou
    do;
    if(KEY_5);
    log("&e&l<Bulldozer>&2&lVoce selecionou &f'Usar coordenadas ja salvas!'");
    unset(reconhecer);
    break;
    elseif(KEY_6);
    log("&e&l<Bulldozer>&c&lVoce selecionou &f'Reconhecer novamente!'");
    set(reconhecer);
    break;
    endif;
    loop;

    endif;

    if(reconhecer);
    log("");
    log("&e&l<Bulldozer>&3Iniciando processo de reconhecimento das homes...");
    log("&4&l[!]&eÉ importante voce verificar se a macro irá nas homes &ccorretas&e, pois uma se agora &cerrar&e, ela irá &cbugar&4&l[!]");
    log("");

    //Se o usuario for vender discos tera que ter setado essa home
    if(vender_discos);
    }$$/home discos$${
    wait(5);
    log("&e&l<Bulldozer>&fAguarde!");
    wait(10);

    //Guardar valores do local de discos para reconhecimento futuro
    #xc=%XPOS%;
    #yc=%YPOS%;
    #zc=%ZPOS%;

    //Verifica se essa home esta no disco/local correto
    if((%#xc%=-714)&&(%#yc%=6)&&(%#zc%=607));
    log("");
    log("&e&l<Bulldozer>&2Você setou a home no local correto! &3Home discos &asalva&3!");
    log("");
    else;

    log("&e&l<Bulldozer>&cEssa coordenada nao é em frente da placa do disco 2267! Você setou a home no local errado!");
    log("&6Suas coordenadas atuais sao X:%XPOS%, Y:%YPOS% e Z:%ZPOS%. &fPara serem corretas precisam estar em X:-714,Y:6 e Z:607.");
    log("&e&l<Bulldozer>&4&lSuspensa!");
    #cod_off = 2;
    &time = "&b&l*Hora: &f&l%TIME% &0/ &b&l*Data: &f&l%DATE% &f(Ano-Mês-Dia)";
    press(f2);
    playsound(random.break);
    wait(200ms);
    playsound(random.break);
    wait(100ms);
    playsound(random.break);
    if(%@#ups_skill% = 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l nível na ultima vez que a macro trabalhou!";
    elseif(%@#ups_skill% > 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l níveis na ultima vez que a macro trabalhou!";
    else;
    &skill_up = "";
    endif;
    //Guarda money ganho
    if(%@#discos% > 0);
    #total = %@#discos% * 95;
    &money = "&2&l*Você vendeu &a&n&l%@#discos%&2&l discos, e ganhou &b&n&l%#total%&2&l Coins!";
    else;
    &money = "";
    endif;

    log("");
    unset(@xlyz);
    stop();
    endif;
    endif;

    wait(2);
    }$$/home escavar$${
    wait(5);
    log("&e&l<Bulldozer>&fAguarde!");
    wait(10);

    //Guardar valores do local de escavacao para reconhecimento futuro
    #xe=%XPOS%;
    #ye=%YPOS%;
    #ze=%ZPOS%;
    log("&e&l<Bulldozer>&3Home escavar &2salva&3!");
    log("");

    wait(2);
    }$$/home trapbaus$${
    wait(5);
    log("&e&l<Bulldozer>&fAguarde!");
    wait(10);

    //Guardar valores do local de armazenamento
    #xt=%XPOS%;
    #yt=%YPOS%;
    #zt=%ZPOS%;
    log("&e&l<Bulldozer>&3Home trapbaus &2salva&3!");
    log("");
    endif;

    //Arruma o personagem para macro iniciar depois que reconhecer as homes
    if(nao_pronto);

    //Loop para garantir que o personagem irá chegar na home de baus
    log("");
    log("&e&l<Bulldozer>&3Indo para /home trapbaus...");
    log("");
    }$$/home trapbaus$${
    wait(7);
    do;
    if((%#xt%=%XPOS%)&&(%#yt%=%YPOS%)&&(%#zt%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer>&cAlgo deu errado! Essas coordenadas nao sao da /home trapbaus. &fTentando ir para /home trapbaus");
    log("");
    }$$/home trapbaus$${
    wait(7);
    endif;
    loop;

    gui(INVENTORY);

    //Verifica se ja tem algo no inventario
    unset(item_inv);
    for(#i,9,44);
    getslotitem(%#i%,#id);
    if(%#id% != 0);
    set(item_inv);
    break;
    endif;
    next;

    if(item_inv);
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;
    //Bau 94 da trapbaus
    look(NORTH);
    wait(1);
    look(-61,+17);
    wait(1);
    key(USE);
    wait(3);
    loop;
    //Bau aberto para colocar os itens do inventário>Limpar inventario
    for(#i,54,89);
    getslotitem(%#i%,#id);
    slotclick(%#i%,l,true);
    wait(50ms);
    inc(#i);
    next;

    gui();

    gui(INVENTORY);
    for(#i,9,44);
    getslotitem(%#i%,#id);
    if(%#id% != 0);
    log("");
    log("&e&l<Bulldozer>&cVish, nao foi possivel remover os itens do inventario, nao posso iniciar!");
    log("&8___________________________________________________");
    log("&e&l<Bulldozer>&4&lSuspensa!");
    #cod_off = 3;
    &time = "&b&l*Hora: &f&l%TIME% &0/ &b&l*Data: &f&l%DATE% &f(Ano-Mês-Dia)";
    press(f2);
    playsound(random.break);
    wait(200ms);
    playsound(random.break);
    wait(100ms);
    playsound(random.break);
    if(%@#ups_skill% = 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l nível na ultima vez que a macro trabalhou!";
    elseif(%@#ups_skill% > 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l níveis na ultima vez que a macro trabalhou!";
    else;
    &skill_up = "";
    endif;
    //Guarda money ganho
    if(%@#discos% > 0);
    #total = %@#discos% * 95;
    &money = "&2&l*Você vendeu &a&n&l%@#discos%&2&l discos, e ganhou &b&n&l%#total%&2&l Coins!";
    else;
    &money = "";
    endif;
    log("");
    unset(@xlyz);
    stop();
    endif;
    next;
    endif;

    //Loop que irá abrir baús onde estao as pas
    #cont = 0;
    do;
    //Abre bau onde estao as pas
    gui();
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;
    look(NORTH);
    wait(1);

    if(%#bau_pa% = 1);
    //Bau 93
    look(-75,+18);
    elseif(%#bau_pa% = 2);
    //Bau 92
    look(-89,+19);
    elseif(%#bau_pa% = 3);
    //Bau 91
    look(-106,+18);
    elseif(%#bau_pa% = 4);
    //Bau 90
    look(-120,+17);
    endif;

    wait(1);
    key(USE);
    wait(3);
    loop;

    //Pegar pas do bau, ja aberto

    //Passa pas do bau para o inventario (Somente se forem pas)
    for(#i,0,53);
    getslotitem(%#i%,#id);
    if(%#id% = 277);
    slotclick(%#i%,l,true);
    inc(#cont);
    wait(100ms);
    endif;
    //Se pas colocadas no inventario ja somaram 6 ou mais: Pare
    if(%#cont% >= 6);
    break;
    endif;
    next;

    if(%#cont% >= 6);
    //Para o do; until(); geral
    break;
    endif;

    if(%#bau_pa% < 4);
    inc(#bau_pa);
    log("");
    log("&e&l<Bulldozer>&cEsse bau nao tinha &bpas &csuficientes, procurando no proximo bau!");
    log("");
    else;
    log("");
    log("&e&l<Bulldozer>&cProcurei nos 4 baus que fui programada e dentro deles nao encontrei 6 &bpas &cpara iniciar a macro.");
    log("&8___________________________________________________");
    log("&e&l<Bulldozer>&4&lSuspensa!");
    #cod_off = 4;
    &time = "&b&l*Hora: &f&l%TIME% &0/ &b&l*Data: &f&l%DATE% &f(Ano-Mês-Dia)";
    press(f2);
    playsound(random.break);
    wait(200ms);
    playsound(random.break);
    wait(100ms);
    playsound(random.break);
    if(%@#ups_skill% = 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l nível na ultima vez que a macro trabalhou!";
    elseif(%@#ups_skill% > 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l níveis na ultima vez que a macro trabalhou!";
    else;
    &skill_up = "";
    endif;
    //Guarda money ganho
    if(%@#discos% > 0);
    #total = %@#discos% * 95;
    &money = "&2&l*Você vendeu &a&n&l%@#discos%&2&l discos, e ganhou &b&n&l%#total%&2&l Coins!";
    else;
    &money = "";
    endif;
    log("");
    unset(@xlyz);
    stop();
    endif;

    gui();
    until(%#cont% >= 6);

    //Loop que irá abrir baús onde esta o material
    #cont = 0;
    do;
    //Abre bau onde estao os materiais
    gui();
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;
    look(NORTH);
    wait(1);

    if(%#bau_material% = 1);
    //Bau 89
    look(-131,+16);
    elseif(%#bau_material% = 2);
    //Bau 88
    look(-143,+20);
    elseif(%#bau_material% = 3);
    //Bau 87
    look(-159,+22);
    elseif(%#bau_material% = 4);
    //Bau 86
    look(-179,+24);
    elseif(%#bau_material% = 5);
    //Bau 85
    look(+158,+22);
    elseif(%#bau_material% = 6);
    //Bau 84
    look(+141,+20);
    elseif(%#bau_material% = 7);
    //Bau 83
    look(+130,+16);
    endif;

    wait(1);
    key(USE);
    wait(3);
    loop;

    //Pegar material do bau, ja aberto

    //Passa materiais do bau para o inventario (Somente se for o material selecionado para escavar)
    for(#i,0,53);
    getslotitem(%#i%,#id);
    if(%#id% = %#bloco%);
    slotclick(%#i%,l,true);
    inc(#cont);
    wait(100ms);
    endif;
    //Se material colocado no inventario ja somou 12 ou mais: Pare
    if(%#cont% >= 12);
    break;
    endif;
    next;

    if(%#cont% >= 12);
    //Para o do; until(); geral
    break;
    endif;

    if(%#bau_material% < 7);
    inc(#bau_material);
    log("");
    log("&e&l<Bulldozer>&cEsse bau nao tinha &bmaterial &csuficiente, procurando no proximo bau!");
    log("");
    else;
    log("");
    log("&e&l<Bulldozer>&cProcurei nos 7 baus que fui programada e dentro deles nao encontrei &bmaterial &cpara iniciar a macro.");
    log("&8___________________________________________________");
    log("&e&l<Bulldozer>&4&lSuspensa!");
    #cod_off = 5;
    &time = "&b&l*Hora: &f&l%TIME% &0/ &b&l*Data: &f&l%DATE% &f(Ano-Mês-Dia)";
    press(f2);
    playsound(random.break);
    wait(200ms);
    playsound(random.break);
    wait(100ms);
    playsound(random.break);
    if(%@#ups_skill% = 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l nível na ultima vez que a macro trabalhou!";
    elseif(%@#ups_skill% > 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l níveis na ultima vez que a macro trabalhou!";
    else;
    &skill_up = "";
    endif;
    //Guarda money ganho
    if(%@#discos% > 0);
    #total = %@#discos% * 95;
    &money = "&2&l*Você vendeu &a&n&l%@#discos%&2&l discos, e ganhou &b&n&l%#total%&2&l Coins!";
    else;
    &money = "";
    endif;
    log("");
    unset(@xlyz);
    stop();
    endif;

    gui();
    until(%#cont% >= 12);

    endif;

    //Loop para garantir que o personagem irá chegar na home de escavar
    log("");
    log("&e&l<Bulldozer>&3Indo para /home escavar...");
    log("");
    }$$/home escavar$${
    wait(7);
    do;
    if((%#xe%=%XPOS%)&&(%#ye%=%YPOS%)&&(%#ze%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer>&cAlgo deu errado! Essas coordenadas nao sao da /home escavar. &fTentando ir para /home escavar");
    log("");
    }$$/home escavar$${
    wait(7);
    endif;
    loop;

    //Pega a direção onde o usuario iniciou a macro
    &dir = %DIRECTION%;
    ifmatches(%&dir%,N);
    &dir = NORTH;
    endif;
    ifmatches(%&dir%,S);
    &dir = SOUTH;
    endif;
    ifmatches(%&dir%,E);
    &dir = EAST;
    endif;
    ifmatches(%&dir%,W);
    &dir = WEST;
    endif;

    //Iniciando up
    gui();
    do();
    //Se trocou as pas:
    if(repos_pas);
    #slot = 4;
    #red = 0;
    unset(repos_pas);
    endif;

    //Quebrando blocos
    do(%#quantidade%);
    look(%&dir%);
    look(,59);
    pick(%#bloco%);
    #id = %ITEM%;

    //Espera login
    if(@logando);
    do;
    wait(1);
    log("&e&l<Bulldozer>&7Aguardando login!");
    until(!@logando);
    endif;

    //Verifica se tem bloco na hotbar
    if((%#id% != %#bloco%) && (!@logando));
    log("");
    log("&e&l<Bulldozer>&fAguardando &7confirmaçao de que nao esta fazendo login!");
    wait(5);
    if((%#id% != %#bloco%) && (!@logando));
    log("&e&l<Bulldozer>&7Confirmado: sem blocos na hotbar!");
    break;
    endif;
    endif;

    key(USE);
    wait(10ms);
    slot(%#slot%);

    //Se durabilidade da pa esta baixa, troca slot
    if((DURABILITY < 100)&&(DURABILITY > 0));
    inc(#slot);

    //Senao, se nao tiver pa na hotbar
    elseif((DURABILITY <= 0) && (!@logando));
    log("");
    log("&e&l<Bulldozer>&fAguardando &7confirmaçao de que nao esta fazendo login!");
    wait(5);
    if((DURABILITY <= 0) && (!@logando));
    log("&e&l<Bulldozer>&7Confirmado: você nao está logando, isso significa que nao tem pá nesse slot!");
    //Se a durabilidade baixa depois de 5 segundos, significa que reconectou
    if((DURABILITY < 100) && (DURABILITY > 0));
    //Slot menor que nove ainda, troque slot
    if(%#slot% < 9);
    inc(#slot);
    //Senao, reinicie a verificao
    else;
    log("");
    log("&e&l<Bulldozer>&eReiniciando verificaçao de pás");
    #slot = 4;
    inc(#red);
    endif;
    endif;

    //Se slot esta sem pa, apos esperar a possivel reconexao, entao esta sem pa mesmo
    if(DURABILITY <= 0);
    inc(#slot);
    endif;
    endif;
    endif;

    if((%#slot% >= 10) && (%#red% < 3));
    log("&e&l<Bulldozer>&fReiniciando verificaçao das pás..");
    #slot = 4;
    inc(#red);
    elseif((%#slot% >= 10) && (%#red% > 2));
    log("");
    log("&e&l<Bulldozer>&fReiniciei a verificaçao &4%#red% &fvezes, e todas as ferramentas estao gastas, se possível as pás serao trocadas...");
    set(pas_red);
    break;
    endif;

    look(%&dir%);
    look(,59);

    //Regula a velocidade escolhida
    if(%#quebrar% != 0);
    do(%#quebrar%);
    key(attack);
    loop;
    else;
    key(attack);
    endif;

    //Pausa se estiver limpando
    if(@limpando);
    log("&e&l<Bulldozer>&dAguardando limpeza do chao...");
    wait(1);
    playsound(note.pling);
    log("&e&l<Bulldozer>&d4...");
    playsound(note.pling);
    wait(1);
    log("&e&l<Bulldozer>&d3...");
    playsound(note.pling);
    wait(1);
    log("&e&l<Bulldozer>&d2...");
    playsound(note.pling);
    wait(1);
    log("&e&l<Bulldozer>&d1...");
    playsound(note.pling);
    wait(1);
    log("&e&l<Bulldozer>&dLimpou!");
    playsound(random.click);
    unset(@limpando);
    endif;
    loop;
    //Parando de escavar

    //Se as pas estao gastas
    if((pas_red) && (!bau_red_full) && (!sem_pa));
    set(repos_pas);

    //Trocando pás
    log("");
    log("&e&l<Bulldozer>&fIniciando procedimento de &2substituiçao &fdas pás...");

    //Loop para garantir que o personagem irá chegar na home de baus
    log("");
    log("&e&l<Bulldozer>&3Indo para /home trapbaus...");
    log("");
    }$$/home trapbaus$${
    wait(7);
    do;
    if((%#xt%=%XPOS%)&&(%#yt%=%YPOS%)&&(%#zt%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer>&cAlgo deu errado! Essas coordenadas nao sao da /home trapbaus. &fTentando ir para /home trapbaus");
    log("");
    }$$/home trapbaus$${
    wait(7);
    endif;
    loop;

    //Guardar pás gastas

    //Loop que irá abrir baús para guardar pas gastas
    #cont_pa_guardada = 0;
    do;
    //Abre baus
    gui();
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;

    look(NORTH);
    wait(1);

    if(%#bau_red% = 1);
    //Bau 78
    look(+61,+16);
    elseif(%#bau_red% = 2);
    //Bau 79
    look(+74,+18);
    elseif(%#bau_red% = 3);
    //Bau 80
    look(+91,+18);
    elseif(%#bau_red% = 4);
    //Bau 81
    look(+104,+18);
    endif;

    wait(1);
    key(USE);
    wait(3);
    loop;

    //Guardar pas no bau, ja aberto

    //Passa pas da hotbar para o bau
    for(#i, 84, 89);
    slotclick(%#i%,l,true);
    wait(100ms);
    next;

    #cont_pa_guardada = 0;
    for(#i, 84, 89);
    getslotitem(%#i%,#id);
    if(%#id% = 0);
    inc(#cont_pa_guardada);
    endif;
    wait(100ms);
    next;

    //Se não tirou todas as pás do inventario, passe para o proximo bau
    if(%#cont_pa_guardada% < 6);
    if(%#bau_red% < 4);
    inc(#bau_red);
    log("");
    log("&e&l<Bulldozer>&cEsse bau nao tinha &bespaço &csuficiente para guardar, passando para o proximo bau!");
    log("");
    //Se não suportar as pás e for o ultimo baú
    else;
    set(bau_red_full);//nova
    log("");
    log("&e&l<Bulldozer>&cEsse foi o ultimo bau e nao tinha &fespaço &csuficiente para guardar, próxima vez que as pás ficarem red nao irá trocar!");
    log("");
    #pas_sobraram = 6 - %#cont_pa_guardada%;
    //Isso é como break, pois é a condição para sair do loop
    #cont_pa_guardada = 6;
    endif;
    endif;

    gui();
    until(%#cont_pa_guardada% >= 6);

    //Pegar pás novas

    //Loop que irá abrir baús onde estao as pas
    #cont = 0;
    do;
    //Abre bau onde estao as pas
    gui();
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;
    look(NORTH);
    wait(1);
    if(%#bau_pa% = 1);
    //Bau 93
    look(-75,+18);
    elseif(%#bau_pa% = 2);
    //Bau 92
    look(-89,+19);
    elseif(%#bau_pa% = 3);
    //Bau 91
    look(-106,+18);
    elseif(%#bau_pa% = 4);
    //Bau 90
    look(-120,+17);
    endif;

    wait(1);
    key(USE);
    wait(3);
    loop;

    //Pegar pas do bau, ja aberto

    //Passa pas do bau para o inventario (Somente se forem pas)
    for(#i,0,53);
    getslotitem(%#i%,#id);
    if(%#pas_sobraram%) >= 6);
    break;
    endif;
    if(%#id% = 277);
    slotclick(%#i%,l,true);
    inc(#cont);
    wait(100ms);
    endif;
    //Se pas colocadas no inventario ja somaram 6 ou mais: Pare
    if((%#cont% + %#pas_sobraram%) >= 6);
    break;
    endif;
    next;

    if((%#cont% + %#pas_sobraram%) >= 6);
    //Para o 'do; until();' geral
    break;
    endif;

    //Se chegou aqui é porque não fechou o tanto de pas suficientes
    if(%#bau_pa% < 4);
    inc(#bau_pa);
    log("");
    log("&e&l<Bulldozer>&cEsse bau nao tinha &bpas &csuficientes, procurando no proximo bau!");
    log("");
    //Se não fechou o tanto de pas e o baú é o ultimo
    else;
    set(sem_pa);//nova
    log("");
    log("&e&l<Bulldozer>&cEsse foi o ultimo bau e nao tinha &fpas &csuficientes, próxima vez que as pás ficarem red nao irá trocar!");
    log("");
    break;
    endif;

    until((%#cont% + %#pas_sobraram%) >= 6);

    gui();

    //Loop para garantir que o personagem irá chegar na home de escavar
    log("");
    log("&e&l<Bulldozer>&3Voltando para /home escavar...");
    log("");
    }$$/home escavar$${
    wait(7);
    do;
    if((%#xe%=%XPOS%)&&(%#ye%=%YPOS%)&&(%#ze%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer>&cAlgo deu errado! Essas nao sao as coordenadas da /home escavar. &fTentando ir para /home escavar");
    log("");
    }$$/home escavar$${
    wait(7);
    endif;
    loop;

    unset(pas_red);

    //Senão, se as pas gastaram E esta com baus de pas gastas cheio OU sem pas boas
    elseif((pas_red) && (bau_red_full) || (sem_pa));
    if(bau_red_full);
    log("");
    log("&e&l<Bulldozer>&cImpossível trocar as pás da hotbar por falta de &bbau com espaço&c, nao posso continuar.");
    log("&8___________________________________________________");
    log("&e&l<Bulldozer>&4&lSuspensa!");
    #cod_off = 6;
    else;
    log("");
    log("&e&l<Bulldozer>&cAcabaram as pás. Nao tem pás suficientes para fazer substituiçao.");
    log("&8___________________________________________________");
    log("&e&l<Bulldozer>&4&lSuspensa!");
    #cod_off = 7;
    endif;

    &time = "&b&l*Hora: &f&l%TIME% &0/ &b&l*Data: &f&l%DATE% &f(Ano-Mês-Dia)";
    press(f2);
    playsound(random.break);
    wait(200ms);
    playsound(random.break);
    wait(100ms);
    playsound(random.break);
    if(%@#ups_skill% = 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l nível na ultima vez que a macro trabalhou!";
    elseif(%@#ups_skill% > 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l níveis na ultima vez que a macro trabalhou!";
    else;
    &skill_up = "";
    endif;
    //Guarda money ganho
    if(%@#discos% > 0);
    #total = %@#discos% * 95;
    &money = "&2&l*Você vendeu &a&n&l%@#discos%&2&l discos, e ganhou &b&n&l%#total%&2&l Coins!";
    else;
    &money = "";
    endif;
    log("");
    unset(@xlyz);
    stop();

    //Se pás nao estao no red após terminar o ciclo de escavar:
    else;

    // Abrindo inventário
    gui(INVENTORY);
    pick(%#bloco%);

    //Se tiver menos de 64 blocos empilhados no slot selecionado pelo 'pick' (geralmente), irá repor
    if(%STACKSIZE% < 64);
    log("");
    log("&e&l<Bulldozer>&fRepondo blocos na hotbar!");
    log("");
    wait(50ms);

    //Tira itens no lugar dos blocos (somente itens com id diferente do bloco escavando).
    for(#i,36,38);
    getslotitem(%#i%,#id)
    if(%#id%!=%#bloco%);
    slotclick(%#i%,l,true);
    wait(5ms);
    endif;
    next;

    wait(20ms);

    //Puxa blocos para a hotbar.
    for(#i,9,35);
    getslotitem(%#i%,#id);
    if(%#id%=%#bloco%);
    slotclick(%#i%,l,true);
    wait(5ms);
    endif;
    next;
    endif;

    //Verifica se acabaram blocos do inventario
    gui(INVENTORY);
    pick(%#bloco%);

    if(%STACKSIZE% < 40);
    log("");
    log("&e&l<Bulldozer>&fAguardando blocos voltarem pro inventário.");
    log("");
    wait(4);
    endif;

    //Se quantidade de blocos menor de 20 depois de repor e aguardar, e tiver material nos baus
    if(%STACKSIZE% < 20);
    log("");
    log("&e&l<Bulldozer>&cNao tem blocos no inventário para repor, indo pegar mais...");
    log("");

    //Loop para garantir que o personagem irá chegar na home de baus
    log("&e&l<Bulldozer>&3Indo para /home trapbaus...");
    log("");
    }$$/home trapbaus$${
    wait(7);
    do;
    if((%#xt%=%XPOS%)&&(%#yt%=%YPOS%)&&(%#zt%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer>&cAlgo deu errado! Essas coordenadas nao sao da /home trapbaus. &fTentando ir para /home trapbaus");
    log("");
    }$$/home trapbaus$${
    wait(7);
    endif;
    loop;

    //Processo de jogar lixo fora
    gui(INVENTORY);
    unset(lixo_inv);
    for(#i,9,44);
    getslotitem(%#i%,#id);
    ifmatches(%#id%, %&lixo%);
    set(lixo_inv);
    break;
    endif;
    next;

    if(lixo_inv);
    keydown(jump);
    wait(1);
    keyup(jump);

    gui(INVENTORY);

    for(#i,9,44);
    getslotitem(%#i%,#id);
    ifmatches(%#id%, %&lixo%);
    slotclick(%#i%);
    wait(200ms);
    slotclick(-999);
    wait(200ms);
    endif;
    next;
    endif;

    gui();

    //Loop pra limpar inventário antes de pegar mais material, apenas pás e blocos utilizados ficarão
    do;
    //Olhando e Tentando abrir baus.
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;

    look(NORTH);
    wait(500ms);
    if(%#bau%=1);look(-50,-24);endif;
    if(%#bau%=2);look(-39,-28);endif;
    if(%#bau%=3);look(-23,-32);endif;
    if(%#bau%=4);look(+1,-34);endif;
    if(%#bau%=5);look(+23,-32);endif;
    if(%#bau%=6);look(+39,-28);endif;
    if(%#bau%=7);look(+50,-24);endif;
    if(%#bau%=8);look(+61,-23);endif;
    if(%#bau%=9);look(+74,-24);endif;
    if(%#bau%=10);look(+91,-26);endif;
    if(%#bau%=11);look(+104,-25);endif;
    if(%#bau%=12);look(+120,-23);endif;
    if(%#bau%=13);look(+130,-24);endif;
    if(%#bau%=14);look(+141,-28);endif;
    if(%#bau%=15);look(+158,-32);endif;
    if(%#bau%=16);look(-179,-34);endif;
    if(%#bau%=17);look(-159,-32);endif;
    if(%#bau%=18);look(-143,-27);endif;
    if(%#bau%=19);look(-131,-24);endif;
    if(%#bau%=20);look(-120,-23);endif;
    if(%#bau%=21);look(-106,-24);endif;
    if(%#bau%=22);look(-89,-26);endif;
    if(%#bau%=23);look(-75,-25);endif;
    if(%#bau%=24);look(-61,-23);endif;
    if(%#bau%=25);look(-50,-10);endif;
    if(%#bau%=26);look(-39,-12);endif;
    if(%#bau%=27);look(-23,-14);endif;
    if(%#bau%=28);look(+1,-16);endif;
    if(%#bau%=29);look(+23,-14);endif;
    if(%#bau%=30);look(+39,-12);endif;
    if(%#bau%=31);look(+50,-10);endif;
    if(%#bau%=32);look(+61,-10);endif;
    if(%#bau%=33);look(+74,-11);endif;
    if(%#bau%=34);look(+91,-11);endif;
    if(%#bau%=35);look(+104,-11);endif;
    if(%#bau%=36);look(+120,-10);endif;
    if(%#bau%=37);look(+130,-10);endif;
    if(%#bau%=38);look(+141,-12);endif;
    if(%#bau%=39);look(+158,-14);endif;
    if(%#bau%=40);look(-179,-16);endif;
    if(%#bau%=41);look(-159,-14);endif;
    if(%#bau%=42);look(-143,-12);endif;
    if(%#bau%=43);look(-131,-10);endif;
    if(%#bau%=44);look(-120,-10);endif;
    if(%#bau%=45);look(-106,-11);endif;
    if(%#bau%=46);look(-89,-11);endif;
    if(%#bau%=47);look(-75,-11);endif;
    if(%#bau%=48);look(-61,-10);endif;
    if(%#bau%=49);look(-50,+4);endif;
    if(%#bau%=50);look(-39,+4);endif;
    if(%#bau%=51);look(-23,+4);endif;
    if(%#bau%=52);look(+23,+4);endif;
    if(%#bau%=53);look(+39,+4);endif;
    if(%#bau%=54);look(+50,+4);endif;
    if(%#bau%=55);look(+61,+4);endif;
    if(%#bau%=56);look(+74,+4);endif;
    if(%#bau%=57);look(+91,+4);endif;
    if(%#bau%=58);look(+104,+4);endif;
    if(%#bau%=59);look(+120,+4);endif;
    if(%#bau%=60);look(+130,+4);endif;
    if(%#bau%=61);look(+141,+4);endif;
    if(%#bau%=62);look(+158,+4);endif;
    if(%#bau%=63);look(-179,+4);endif;
    if(%#bau%=64);look(-159,+4);endif;
    if(%#bau%=65);look(-143,+4);endif;
    if(%#bau%=66);look(-131,+4);endif;
    if(%#bau%=67);look(-120,+4);endif;
    if(%#bau%=68);look(-106,+4);endif;
    if(%#bau%=69);look(-89,+4);endif;
    if(%#bau%=70);look(-75,+4);endif;
    if(%#bau%=71);look(-61,+4);endif;
    if(%#bau%=72);look(-50,+16);endif;
    if(%#bau%=73);look(-39,+20);endif;
    if(%#bau%=74);look(-23,+22);endif;
    if(%#bau%=75);look(+23,+22);endif;
    if(%#bau%=76);look(+39,+20);endif;

    wait(2);
    key(USE);
    //Delay para repetir o loop de tentar abrir baú.
    wait(4);

    loop;

    //Guardar itens do inventario, com exceção das pás, blocos usados, lixos e livros
    #livro = 0;
    for(#i, 54, 89);
    getslotitem(%#i%,#id);
    if((%#id% != %#bloco%) && (%#id% != 277) && (%#id% != 387));
    ifmatches(%#id%, %&lixo%);
    //Se for lixo nao coloca no bau
    else;
    slotclick(%#i%,l,true);
    endif;
    endif;

    //Se for livro
    if(%#id% = 387);
    inc(#livro);
    endif;
    wait(50ms);
    next;

    wait(50ms);

    //Verifica se o bau nao esta cheio por contagem de slots vazios
    set(bau_full);
    for(#i,0,53);
    getslotitem(%#i%,#id);
    if(%#id% = 0);
    //bau tem slots vazios ainda
    unset(bau_full);
    break;
    endif;
    next;

    wait(50ms);

    if(bau_full);
    if(%#bau% < 76);
    inc(#bau);
    gui();
    else;
    unset(baus_disponiveis);
    inc(#bau);
    //Guardar livros
    log("");
    log("&e&l<Bulldozer Discos>&c&lBaús cheios! &f&lIniciando processo de &2&lvenda &f&ldos discos!");
    log("");
    gui();
    break;
    endif;
    endif;

    //Se ja guardou outros itens agora vai guardar os livros
    if((!bau_full) && (%#livro% > 0));
    log("&e&l<Bulldozer>&fGuardando &f&llivros&f...");

    //Tentando abrir bau
    gui();
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;

    look(NORTH);
    wait(500ms);
    look(+120,+16);
    //Bau 82
    wait(2);
    key(USE);
    //Delay para repetir o loop de tentar abrir baú
    wait(4);
    loop;

    //Guarda livros no seu bau
    for(#i, 54, 89);
    getslotitem(%#i%,#id);

    //Se for livro
    if(%#id% = 387);
    slotclick(%#i%,l,true);
    endif;
    wait(50ms);
    next;
    endif;

    until(!bau_full);

    gui();

    //Se nao encheram os baus da trap siga pegando mais blocos para escavar
    if(baus_disponiveis);

    //Analisa quantos slots dos inventario ja estao com o bloco de escavação
    gui(INVENTORY);
    #slot_com_bloco = 0;
    for(#i, 9, 44);
    getslotitem(%#i%,#id);
    if(%#id% = %#bloco%);
    inc(#slot_com_bloco);
    endif;
    next;

    //Loop que irá abrir baús onde esta o material
    #cont = 0;
    do;
    //Abre bau onde estao os materiais
    gui();
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;
    look(NORTH);
    wait(1);

    if(%#bau_material% = 1);
    //Bau 89
    look(-131,+16);
    elseif(%#bau_material% = 2);
    //Bau 88
    look(-143,+20);
    elseif(%#bau_material% = 3);
    //Bau 87
    look(-159,+22);
    elseif(%#bau_material% = 4);
    //Bau 86
    look(-179,+24);
    elseif(%#bau_material% = 5);
    //Bau 85
    look(+158,+22);
    elseif(%#bau_material% = 6);
    //Bau 84
    look(+141,+20);
    elseif(%#bau_material% = 7);
    //Bau 83
    look(+130,+16);
    endif;

    wait(1);
    key(USE);
    wait(3);
    loop;

    //Pegar material do bau, ja aberto

    //Passa materiais do bau para o inventario (Somente se for o material selecionado para escavar)
    for(#i,0,53);
    getslotitem(%#i%,#id);
    if(%#id% = %#bloco%);
    slotclick(%#i%,l,true);
    inc(#cont);
    wait(100ms);
    endif;
    //Se material colocado no inventario junto com o que ja tinha, somou 12 ou mais: Pare
    if((%#cont% + %#slot_com_bloco%) >= 12);
    break;
    endif;
    next;

    //Se chegou aqui e ja somou 12, é porque parou (break) la em cima, entao precisa parar o loop de pegar material
    if((%#cont% + %#slot_com_bloco%) >= 12);
    //Para o do; until(); geral do material
    break;
    endif;

    //Se chegou até aqui é porque nao somou 12, entao precisa verificar em outro bau
    if(%#bau_material% < 7);
    inc(#bau_material);
    log("");
    log("&e&l<Bulldozer>&cEsse bau nao tinha &bmaterial &csuficiente, procurando no proximo bau!");
    log("");
    else;
    log("");
    log("&e&l<Bulldozer>&cProcurei nos 7 baus que fui programada e dentro deles nao encontrei &bmaterial &cpara repor.");
    log("&8___________________________________________________");
    log("&e&l<Bulldozer>&4&lSuspensa!");
    #cod_off = 8;
    &time = "&b&l*Hora: &f&l%TIME% &0/ &b&l*Data: &f&l%DATE% &f(Ano-Mês-Dia)";
    press(f2);
    playsound(random.break);
    wait(200ms);
    playsound(random.break);
    wait(100ms);
    playsound(random.break);
    if(%@#ups_skill% = 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l nível na ultima vez que a macro trabalhou!";
    elseif(%@#ups_skill% > 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l níveis na ultima vez que a macro trabalhou!";
    else;
    &skill_up = "";
    endif;
    //Guarda money ganho
    if(%@#discos% > 0);
    #total = %@#discos% * 95;
    &money = "&2&l*Você vendeu &a&n&l%@#discos%&2&l discos, e ganhou &b&n&l%#total%&2&l Coins!";
    else;
    &money = "";
    endif;
    log("");
    unset(@xlyz);
    stop();
    endif;

    until(%#cont% >= 12);

    //Verifica se pegou mais blocos do que deveria
    #blocos_sobraram = 0;
    for(#i, 54, 89);
    getslotitem(%#i%,#id);
    if(%#id% = %#bloco%);
    inc(#blocos_sobraram);
    endif;
    next;

    //Se blocos bugaram
    if(%#blocos_sobraram% > 14);

    //Passa materiais sobrando do inventario para o bau (Somente se for o material selecionado para escavar)
    #blocos_removidos = 0;
    for(#i,54,89);
    getslotitem(%#i%,#id);
    if(%#id% = %#bloco%);
    slotclick(%#i%,l,true);
    inc(#blocos_removidos);
    wait(50ms);
    endif;
    if((%#blocos_sobraram% - %#blocos_removidos%) <= 12);
    break;
    endif;
    next;
    endif;

    gui();

    //Loop para garantir que o personagem irá chegar na home de escavar
    log("");
    log("&e&l<Bulldozer>&3Voltando para /home escavar...");
    log("");
    }$$/home escavar$${
    wait(7);
    do;
    if((%#xe%=%XPOS%)&&(%#ye%=%YPOS%)&&(%#ze%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer>&cAlgo deu errado! Essas nao sao as coordenadas da /home escavar. &fTentando ir para /home escavar");
    log("");
    }$$/home escavar$${
    wait(7);
    endif;
    loop;
    endif;
    endif;

    //Se ainda nao encheram os baus da trap
    if(baus_disponiveis);

    gui(INVENTORY);
    wait(10ms);

    //Verifica se o inventario esta cheio por slots vazios
    set(inv_vazio);
    #cont_slot_vazio = 0;
    for(#i,9,44);
    getslotitem(%#i%,#id);
    if(%#id% = 0);
    inc(#cont_slot_vazio);
    endif;
    next;

    //Se contador é maior que 3, slots vazios
    if(%#cont_slot_vazio% > 3);
    gui();

    //Senao, significa que invetario esta cheio
    else;

    //Loop para garantir que o personagem irá chegar na home de baus
    log("");
    log("&e&l<Bulldozer>&3Inventário cheio. Indo para /home trapbaus...");
    log("");
    }$$/home trapbaus$${
    wait(7);
    do;
    if((%#xt%=%XPOS%)&&(%#yt%=%YPOS%)&&(%#zt%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer>&cAlgo deu errado! Essas coordenadas nao sao da /home trapbaus. &fTentando ir para /home trapbaus");
    log("");
    }$$/home trapbaus$${
    wait(7);
    endif;
    loop;

    //Processo de jogar lixo fora
    gui(INVENTORY);
    unset(lixo_inv);
    for(#i,9,44);
    getslotitem(%#i%,#id);
    ifmatches(%#id%, %&lixo%);
    set(lixo_inv);
    break;
    endif;
    next;

    if(lixo_inv);
    keydown(jump);
    wait(1);
    keyup(jump);

    gui(INVENTORY);

    for(#i,9,44);
    getslotitem(%#i%,#id);
    ifmatches(%#id%, %&lixo%);
    slotclick(%#i%);
    wait(200ms);
    slotclick(-999);
    wait(200ms);
    endif;
    next;
    endif;

    gui();

    //Guardando ítens nos baus
    do;
    //Olhando e Tentando abrir baus
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;

    look(NORTH);
    wait(500ms);
    if(%#bau%=1);look(-50,-24);endif;
    if(%#bau%=2);look(-39,-28);endif;
    if(%#bau%=3);look(-23,-32);endif;
    if(%#bau%=4);look(+1,-34);endif;
    if(%#bau%=5);look(+23,-32);endif;
    if(%#bau%=6);look(+39,-28);endif;
    if(%#bau%=7);look(+50,-24);endif;
    if(%#bau%=8);look(+61,-23);endif;
    if(%#bau%=9);look(+74,-24);endif;
    if(%#bau%=10);look(+91,-26);endif;
    if(%#bau%=11);look(+104,-25);endif;
    if(%#bau%=12);look(+120,-23);endif;
    if(%#bau%=13);look(+130,-24);endif;
    if(%#bau%=14);look(+141,-28);endif;
    if(%#bau%=15);look(+158,-32);endif;
    if(%#bau%=16);look(-179,-34);endif;
    if(%#bau%=17);look(-159,-32);endif;
    if(%#bau%=18);look(-143,-27);endif;
    if(%#bau%=19);look(-131,-24);endif;
    if(%#bau%=20);look(-120,-23);endif;
    if(%#bau%=21);look(-106,-24);endif;
    if(%#bau%=22);look(-89,-26);endif;
    if(%#bau%=23);look(-75,-25);endif;
    if(%#bau%=24);look(-61,-23);endif;
    if(%#bau%=25);look(-50,-10);endif;
    if(%#bau%=26);look(-39,-12);endif;
    if(%#bau%=27);look(-23,-14);endif;
    if(%#bau%=28);look(+1,-16);endif;
    if(%#bau%=29);look(+23,-14);endif;
    if(%#bau%=30);look(+39,-12);endif;
    if(%#bau%=31);look(+50,-10);endif;
    if(%#bau%=32);look(+61,-10);endif;
    if(%#bau%=33);look(+74,-11);endif;
    if(%#bau%=34);look(+91,-11);endif;
    if(%#bau%=35);look(+104,-11);endif;
    if(%#bau%=36);look(+120,-10);endif;
    if(%#bau%=37);look(+130,-10);endif;
    if(%#bau%=38);look(+141,-12);endif;
    if(%#bau%=39);look(+158,-14);endif;
    if(%#bau%=40);look(-179,-16);endif;
    if(%#bau%=41);look(-159,-14);endif;
    if(%#bau%=42);look(-143,-12);endif;
    if(%#bau%=43);look(-131,-10);endif;
    if(%#bau%=44);look(-120,-10);endif;
    if(%#bau%=45);look(-106,-11);endif;
    if(%#bau%=46);look(-89,-11);endif;
    if(%#bau%=47);look(-75,-11);endif;
    if(%#bau%=48);look(-61,-10);endif;
    if(%#bau%=49);look(-50,+4);endif;
    if(%#bau%=50);look(-39,+4);endif;
    if(%#bau%=51);look(-23,+4);endif;
    if(%#bau%=52);look(+23,+4);endif;
    if(%#bau%=53);look(+39,+4);endif;
    if(%#bau%=54);look(+50,+4);endif;
    if(%#bau%=55);look(+61,+4);endif;
    if(%#bau%=56);look(+74,+4);endif;
    if(%#bau%=57);look(+91,+4);endif;
    if(%#bau%=58);look(+104,+4);endif;
    if(%#bau%=59);look(+120,+4);endif;
    if(%#bau%=60);look(+130,+4);endif;
    if(%#bau%=61);look(+141,+4);endif;
    if(%#bau%=62);look(+158,+4);endif;
    if(%#bau%=63);look(-179,+4);endif;
    if(%#bau%=64);look(-159,+4);endif;
    if(%#bau%=65);look(-143,+4);endif;
    if(%#bau%=66);look(-131,+4);endif;
    if(%#bau%=67);look(-120,+4);endif;
    if(%#bau%=68);look(-106,+4);endif;
    if(%#bau%=69);look(-89,+4);endif;
    if(%#bau%=70);look(-75,+4);endif;
    if(%#bau%=71);look(-61,+4);endif;
    if(%#bau%=72);look(-50,+16);endif;
    if(%#bau%=73);look(-39,+20);endif;
    if(%#bau%=74);look(-23,+22);endif;
    if(%#bau%=75);look(+23,+22);endif;
    if(%#bau%=76);look(+39,+20);endif;

    wait(2);
    key(USE);
    //Delay para repetir o loop de tentar abrir baú
    wait(4);

    loop;

    //Guardar itens do inventario, com exceção das pás, blocos usados, lixos e livros
    #livro = 0;
    for(#i, 54, 89);
    getslotitem(%#i%,#id);
    if((%#id% != %#bloco%) && (%#id% != 277) && (%#id% != 387));
    ifmatches(%#id%, %&lixo%);
    //Se for lixo nao coloca no bau
    else;
    slotclick(%#i%,l,true);
    endif;
    endif;

    //Se for livro
    if(%#id% = 387);
    inc(#livro);
    endif;
    wait(50ms);
    next;

    wait(500ms);

    //Verifica se o bau nao esta cheio por contagem de slots vazios
    set(bau_full);
    for(#i,0,53);
    getslotitem(%#i%,#id);
    if(%#id% = 0);
    //bau tem slots vazios ainda
    unset(bau_full);
    break;
    endif;
    next;

    wait(50ms);

    if(bau_full);
    if(%#bau% < 76);
    inc(#bau);
    gui();
    else;
    inc(#bau);
    unset(baus_disponiveis);
    if(vender_discos);
    log("");
    log("&e&l<Bulldozer Discos>&c&lBaús cheios! &f&lIniciando processo de &2&lvenda &f&ldos discos!");
    log("");
    else;
    log("");
    log("&e&l<Bulldozer>&c&lBaús cheios! &f&lAgora só irei escavar e voce vai perder os itens dropados!");
    log("");
    #bau = 76;
    set(ta_na_trap);
    endif;
    gui();
    break;
    endif;
    endif;

    //Se ja guardou outros itens agora vai guardar os livros
    if((!bau_full) && (%#livro% > 0));
    log("&e&l<Bulldozer>&fGuardando &f&llivros&f...");

    //Tentando abrir bau
    gui();
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;

    look(NORTH);
    wait(500ms);
    look(+120,+16);
    //Bau 82
    wait(2);
    key(USE);
    //Delay para repetir o loop de tentar abrir baú
    wait(4);
    loop;

    //Guarda livros no seu bau
    for(#i, 54, 89);
    getslotitem(%#i%,#id);

    //Se for livro
    if(%#id% = 387);
    slotclick(%#i%,l,true);
    endif;
    wait(50ms);
    next;
    endif;
    until(!bau_full);

    //Loop para garantir que o personagem irá chegar na home de escavar
    if(baus_disponiveis);
    log("");
    log("&e&l<Bulldozer>&3Voltando para /home escavar...");
    log("");
    }$$/home escavar$${
    wait(7);
    do;
    if((%#xe%=%XPOS%)&&(%#ye%=%YPOS%)&&(%#ze%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer>&cAlgo deu errado! Essas nao sao as coordenadas da /home escavar. &fTentando ir para /home escavar");
    log("");
    }$$/home escavar$${
    wait(7);
    endif;
    loop;
    endif;

    endif;
    endif;

    //Vender discos

    //Se baus encheram e o usuario quer vender discos:
    if((!baus_disponiveis) && (vender_discos));

    //Guardar itens do inventario antes de vender
    log("&e&l<Bulldozer>&fGuardando itens restantes do inventario antes de vender...");
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;

    look(NORTH);
    wait(500ms);
    if(%#bau%=77);look(+50,+16);endif;
    wait(2);
    key(USE);
    //Delay para repetir o loop de tentar abrir baú
    wait(4);

    loop;
    #bau = 76;
    #livro = 0;
    //Colocar itens no bau
    for(#i, 54, 89);
    getslotitem(%#i%,#id);
    if((%#id% != %#bloco%) && (%#id% != 277) && (%#id% != 387));
    ifmatches(%#id%, %&lixo%);
    //Se for lixo nao coloca no bau
    else;
    slotclick(%#i%,l,true);
    endif;
    endif;

    //Conta livros do inventario
    if(%#id% = 387);
    inc(#livro);
    endif;
    wait(30ms);
    next;
    gui();

    //Guardar livros
    if(%#livro% > 0);
    log("&e&l<Bulldozer>&fGuardando &f&llivros&f...");

    //Tentando abrir bau
    gui();
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;

    look(NORTH);
    wait(500ms);
    look(+120,+16);
    //Bau 82
    wait(2);
    key(USE);
    //Delay para repetir o loop de tentar abrir baú
    wait(4);
    loop;

    //Guarda livros no seu bau
    for(#i, 54, 89);
    getslotitem(%#i%,#id);

    //Se for livro
    if(%#id% = 387);
    slotclick(%#i%,l,true);
    endif;
    wait(50ms);
    next;
    endif;

    //Guardar blocos de escavacao para acelerar a venda de discos pegando mais por vez

    //Loop que irá abrir baús onde esta o material
    #bau_material_guarda = 1;
    log("");
    log("&e&l<Bulldozer Discos>&fGuardando &bmaterial de escavaçao &fpara acelerar a venda!");
    log("");
    do;
    //Abre bau onde estao os materiais
    gui();

    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;
    look(NORTH);
    wait(1);

    if(%#bau_material_guarda% = 1);
    //Bau 89
    look(-131,+16);
    elseif(%#bau_material_guarda% = 2);
    //Bau 88
    look(-143,+20);
    elseif(%#bau_material_guarda% = 3);
    //Bau 87
    look(-159,+22);
    elseif(%#bau_material_guarda% = 4);
    //Bau 86
    look(-179,+24);
    elseif(%#bau_material_guarda% = 5);
    //Bau 85
    look(+158,+22);
    elseif(%#bau_material_guarda% = 6);
    //Bau 84
    look(+141,+20);
    elseif(%#bau_material_guarda% = 7);
    //Bau 83
    look(+130,+16);
    endif;

    wait(1);
    key(USE);
    wait(3);
    loop;

    //Guardar material no bau, ja aberto

    //Passa materiais do inventario para o bau (Somente se for o material selecionado para escavar)
    for(#i,54,89);
    getslotitem(%#i%,#id);
    if(%#id% = %#bloco%);
    slotclick(%#i%,l,true);
    wait(50ms);
    endif;
    next;

    //Verifica se sobraram blocos no inventario
    #cont = 0;
    for(#i,54,89);
    getslotitem(%#i%,#id);
    if(%#id% = %#bloco%);
    inc(#cont);
    wait(10ms);
    endif;
    next;

    //Se material contado fechou 0: pare
    if(%#cont% = 0);
    //Para o do; until(); geral
    break;
    endif;

    //Se chegou até aqui é porque nao fechou 0, entao precisa tentar guardar em outro bau
    if(%#bau_material_guarda% < 7);
    inc(#bau_material_guarda);
    log("");
    log("&e&l<Bulldozer Discos>&cEsse bau nao tinha &bespaço &cpara guardar todos os blocos do inventario, passando para o proximo bau!");
    log("");
    else;
    log("");
    log("&e&l<Bulldozer Discos>&cTentei guardar os blocos e nao foi possivel, irei vender discos com eles no inventario mesmo");
    log("");
    break;
    endif;

    until(%#cont% = 0);

    //Guardar pas para acelerar a venda de discos pegando mais por vez

    //Loop que irá abrir baús onde estao as pas
    #bau_pa_guarda = 1;
    log("");
    log("&e&l<Bulldozer Discos>&fGuardando &bpas &fpara acelerar a venda!");
    log("");
    do;
    //Abre bau onde estao as pas
    gui();

    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;
    look(NORTH);
    wait(1);

    if(%#bau_pa_guarda% = 1);
    //Bau 93
    look(-75,+18);
    elseif(%#bau_pa_guarda% = 2);
    //Bau 92
    look(-89,+19);
    elseif(%#bau_pa_guarda% = 3);
    //Bau 91
    look(-106,+18);
    elseif(%#bau_pa_guarda% = 4);
    //Bau 90
    look(-120,+17);
    endif;
    wait(1);
    key(USE);
    wait(3);
    loop;

    //Guardar pas no bau, ja aberto

    //Passa pas do inventario para o bau (Somente se forem pas)
    for(#i,54,89);
    getslotitem(%#i%,#id);
    if(%#id% = 277);
    slotclick(%#i%,l,true);
    wait(50ms);
    endif;
    next;

    //Verifica se sobraram pas no inventario
    #cont = 0;
    for(#i,54,89);
    getslotitem(%#i%,#id);
    if(%#id% = 277);
    inc(#cont);
    wait(10ms);
    endif;
    next;

    //Se pas contadas fecharam 0: pare
    if(%#cont% = 0);
    //Para o do; until(); geral
    break;
    endif;

    //Se chegou até aqui é porque nao fechou 0, entao precisa tentar guardar em outro bau
    if(%#bau_pa_guarda% < 4);
    inc(#bau_pa_guarda);
    log("");
    log("&e&l<Bulldozer Discos>&cEsse bau nao tinha &bespaço &cpara guardar todos as pas, passando para o proximo bau!");
    log("");
    else;
    log("");
    log("&e&l<Bulldozer Discos>&cTentei guardar as pas e nao foi possivel, irei vender discos com elas no inventario mesmo");
    log("");
    break;
    endif;

    until(%#cont% = 0);

    #bau_venda = 1;
    gui();

    //Inicia venda
    do;
    //Olhando e tentando abrir baus
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;

    look(NORTH);
    wait(500ms);
    if(%#bau_venda%=1);look(-50,-24);endif;
    if(%#bau_venda%=2);look(-39,-28);endif;
    if(%#bau_venda%=3);look(-23,-32);endif;
    if(%#bau_venda%=4);look(+1,-34);endif;
    if(%#bau_venda%=5);look(+23,-32);endif;
    if(%#bau_venda%=6);look(+39,-28);endif;
    if(%#bau_venda%=7);look(+50,-24);endif;
    if(%#bau_venda%=8);look(+61,-23);endif;
    if(%#bau_venda%=9);look(+74,-24);endif;
    if(%#bau_venda%=10);look(+91,-26);endif;
    if(%#bau_venda%=11);look(+104,-25);endif;
    if(%#bau_venda%=12);look(+120,-23);endif;
    if(%#bau_venda%=13);look(+130,-24);endif;
    if(%#bau_venda%=14);look(+141,-28);endif;
    if(%#bau_venda%=15);look(+158,-32);endif;
    if(%#bau_venda%=16);look(-179,-34);endif;
    if(%#bau_venda%=17);look(-159,-32);endif;
    if(%#bau_venda%=18);look(-143,-27);endif;
    if(%#bau_venda%=19);look(-131,-24);endif;
    if(%#bau_venda%=20);look(-120,-23);endif;
    if(%#bau_venda%=21);look(-106,-24);endif;
    if(%#bau_venda%=22);look(-89,-26);endif;
    if(%#bau_venda%=23);look(-75,-25);endif;
    if(%#bau_venda%=24);look(-61,-23);endif;
    if(%#bau_venda%=25);look(-50,-10);endif;
    if(%#bau_venda%=26);look(-39,-12);endif;
    if(%#bau_venda%=27);look(-23,-14);endif;
    if(%#bau_venda%=28);look(+1,-16);endif;
    if(%#bau_venda%=29);look(+23,-14);endif;
    if(%#bau_venda%=30);look(+39,-12);endif;
    if(%#bau_venda%=31);look(+50,-10);endif;
    if(%#bau_venda%=32);look(+61,-10);endif;
    if(%#bau_venda%=33);look(+74,-11);endif;
    if(%#bau_venda%=34);look(+91,-11);endif;
    if(%#bau_venda%=35);look(+104,-11);endif;
    if(%#bau_venda%=36);look(+120,-10);endif;
    if(%#bau_venda%=37);look(+130,-10);endif;
    if(%#bau_venda%=38);look(+141,-12);endif;
    if(%#bau_venda%=39);look(+158,-14);endif;
    if(%#bau_venda%=40);look(-179,-16);endif;
    if(%#bau_venda%=41);look(-159,-14);endif;
    if(%#bau_venda%=42);look(-143,-12);endif;
    if(%#bau_venda%=43);look(-131,-10);endif;
    if(%#bau_venda%=44);look(-120,-10);endif;
    if(%#bau_venda%=45);look(-106,-11);endif;
    if(%#bau_venda%=46);look(-89,-11);endif;
    if(%#bau_venda%=47);look(-75,-11);endif;
    if(%#bau_venda%=48);look(-61,-10);endif;
    if(%#bau_venda%=49);look(-50,+4);endif;
    if(%#bau_venda%=50);look(-39,+4);endif;
    if(%#bau_venda%=51);look(-23,+4);endif;
    if(%#bau_venda%=52);look(+23,+4);endif;
    if(%#bau_venda%=53);look(+39,+4);endif;
    if(%#bau_venda%=54);look(+50,+4);endif;
    if(%#bau_venda%=55);look(+61,+4);endif;
    if(%#bau_venda%=56);look(+74,+4);endif;
    if(%#bau_venda%=57);look(+91,+4);endif;
    if(%#bau_venda%=58);look(+104,+4);endif;
    if(%#bau_venda%=59);look(+120,+4);endif;
    if(%#bau_venda%=60);look(+130,+4);endif;
    if(%#bau_venda%=61);look(+141,+4);endif;
    if(%#bau_venda%=62);look(+158,+4);endif;
    if(%#bau_venda%=63);look(-179,+4);endif;
    if(%#bau_venda%=64);look(-159,+4);endif;
    if(%#bau_venda%=65);look(-143,+4);endif;
    if(%#bau_venda%=66);look(-131,+4);endif;
    if(%#bau_venda%=67);look(-120,+4);endif;
    if(%#bau_venda%=68);look(-106,+4);endif;
    if(%#bau_venda%=69);look(-89,+4);endif;
    if(%#bau_venda%=70);look(-75,+4);endif;
    if(%#bau_venda%=71);look(-61,+4);endif;
    if(%#bau_venda%=72);look(-50,+16);endif;
    if(%#bau_venda%=73);look(-39,+20);endif;
    if(%#bau_venda%=74);look(-23,+22);endif;
    if(%#bau_venda%=75);look(+23,+22);endif;
    if(%#bau_venda%=76);look(+39,+20);endif;
    if(%#bau_venda%=77);look(+50,+16);endif;
    wait(2);
    key(USE);
    //Delay para repetir o loop de tentar abrir baú.
    wait(4);
    loop;

    //Passando discos pro inventario
    #cd67 = 0;
    for(#i, 0, 53);
    getslotitem(%#i%,#id);
    if(%#id% = 2267);
    slotclick(%#i%,l,true);
    inc(#cd67);

    //Se ja passou o numero maximo de discos que cabem no inventário: pare
    if(%#cd67% >= 36);
    break;
    endif;
    endif;
    wait(20ms);
    next;

    getslotitem(54,#id,#stack);

    //Se inventario cheio de discos: Iniciando venda
    if((%#stack% != 0) || (%#bau_venda% = 77));
    if(%#cd67% != 3);
    //Verifica quantos discos passaram realmente para o inventario
    #cd67 = 3;
    wait(100ms);
    gui(INVENTORY);
    for(#i,9,44);
    getslotitem(%#i%,#id);
    if(%#id%=2267);
    inc(#cd67);
    endif;
    next;

    //Loop para garantir que o personagem irá chegar na home de cds
    log("");
    log("&e&l<Bulldozer Discos>&3Indo para /home discos...");
    log("");
    }$$/home discos$${
    wait(7);
    do;
    if((%#xc%=%XPOS%)&&(%#yc%=%YPOS%)&&(%#zc%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer Discos>&cAlgo deu errado! Essas coordenadas nao sao da /home discos. &fTentando ir para /home discos");
    log("");
    }$$/home discos$${
    wait(5);
    endif;
    loop;

    gui();

    //Se tiver cds no inventario
    if(%#cd67%!=3);
    wait(50ms);
    do(%#cd67%);
    key(attack);
    wait(350ms);
    loop;
    endif;

    log("&e&l<Bulldozer Discos>&fDiscos vendidos, &3voltando a trap para pegar mais!");

    //Loop para garantir que o personagem irá chegar na home de baus
    log("");
    log("&e&l<Bulldozer Discos>&3Voltando para /home trapbaus...");
    log("");
    }$$/home trapbaus$${
    wait(7);
    do;
    if((%#xt%=%XPOS%)&&(%#yt%=%YPOS%)&&(%#zt%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer Discos>&cAlgo deu errado! Essas coordenadas nao sao da /home trapbaus. &fTentando ir para /home xlyz trapbaus");
    log("");
    }$$/home trapbaus$${
    wait(7);
    endif;
    loop;

    else;
    log("");
    log("&e&l<Bulldozer Discos>&c&lInventário sem discos, verificando próximo baú!");
    log("");
    endif;

    //Se entrou aqui por causa do bau 77 e ja vendeu, ira finalizar a venda
    if(%#bau_venda% = 77);
    log("");
    log("&e&l<Bulldozer Discos>&f&lTodos os discos dos baus foram vendidos com sucesso, &2&lfim da venda!");
    #bau = 1;
    set(baus_disponiveis);
    log("");
    break;
    endif;
    //Se inventario ainda nao encheu de discos
    elseif(%#stack% = 0);

    //Incrementa bau
    if(%#bau_venda% < 77);
    inc(#bau_venda);
    gui();
    else;
    log("");
    log("&e&l<Bulldozer Discos>&f&lTodos os discos dos baus foram vendidos com sucesso, &2&lfim da venda!");
    #bau = 1;
    set(baus_disponiveis);
    log("");
    break;
    endif;
    endif;

    loop;

    //Loop que irá abrir baús onde estao as pas para pegar novamente depois da venda
    #cont = 0;
    #bau_pa = 1;
    do;
    //Abre bau onde estao as pas
    gui();
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;
    look(NORTH);
    wait(1);

    if(%#bau_pa% = 1);
    //Bau 93
    look(-75,+18);
    elseif(%#bau_pa% = 2);
    //Bau 92
    look(-89,+19);
    elseif(%#bau_pa% = 3);
    //Bau 91
    look(-106,+18);
    elseif(%#bau_pa% = 4);
    //Bau 90
    look(-120,+17);
    endif;

    wait(1);
    key(USE);
    wait(3);
    loop;

    //Pegar pas do bau, ja aberto

    //Passa pas do bau para o inventario (Somente se forem pas)
    for(#i,0,53);
    getslotitem(%#i%,#id);
    if(%#id% = 277);
    slotclick(%#i%,l,true);
    inc(#cont);
    wait(100ms);
    endif;
    //Se pas colocadas no inventario ja somaram 6 ou mais: Pare
    if(%#cont% >= 6);
    break;
    endif;
    next;

    if(%#cont% >= 6);
    //Para o do; until(); geral
    break;
    endif;

    if(%#bau_pa% < 4);
    inc(#bau_pa);
    log("");
    log("&e&l<Bulldozer>&cEsse bau nao tinha &bpas &csuficientes, procurando no proximo bau!");
    log("");
    else;
    log("");
    log("&e&l<Bulldozer>&cProcurei nos 4 baus que fui programada e dentro deles nao encontrei 6 &bpas &cpara iniciar a macro.");
    log("&8___________________________________________________");
    log("&e&l<Bulldozer>&4&lSuspensa!");
    #cod_off = 4;
    &time = "&b&l*Hora: &f&l%TIME% &0/ &b&l*Data: &f&l%DATE% &f(Ano-Mês-Dia)";
    press(f2);
    playsound(random.break);
    wait(200ms);
    playsound(random.break);
    wait(100ms);
    playsound(random.break);
    if(%@#ups_skill% = 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l nível na ultima vez que a macro trabalhou!";
    elseif(%@#ups_skill% > 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l níveis na ultima vez que a macro trabalhou!";
    else;
    &skill_up = "";
    endif;
    //Guarda money ganho
    if(%@#discos% > 0);
    #total = %@#discos% * 95;
    &money = "&2&l*Você vendeu &a&n&l%@#discos%&2&l discos, e ganhou &b&n&l%#total%&2&l Coins!";
    else;
    &money = "";
    endif;
    log("");
    unset(@xlyz);
    stop();
    endif;

    gui();
    until(%#cont% >= 6);

    //Loop que irá abrir baús onde esta o material para pegar novamente depois da venda
    #cont = 0;
    #bau_material = 1;
    do;
    //Abre bau onde estao os materiais
    gui();
    do;
    ifmatches(%GUI%,GUICHEST);
    break;
    endif;
    look(NORTH);
    wait(1);

    if(%#bau_material% = 1);
    //Bau 89
    look(-131,+16);
    elseif(%#bau_material% = 2);
    //Bau 88
    look(-143,+20);
    elseif(%#bau_material% = 3);
    //Bau 87
    look(-159,+22);
    elseif(%#bau_material% = 4);
    //Bau 86
    look(-179,+24);
    elseif(%#bau_material% = 5);
    //Bau 85
    look(+158,+22);
    elseif(%#bau_material% = 6);
    //Bau 84
    look(+141,+20);
    elseif(%#bau_material% = 7);
    //Bau 83
    look(+130,+16);
    endif;

    wait(1);
    key(USE);
    wait(3);
    loop;

    //Pegar material do bau, ja aberto

    //Passa materiais do bau para o inventario (Somente se for o material selecionado para escavar)
    for(#i,0,53);
    getslotitem(%#i%,#id);
    if(%#id% = %#bloco%);
    slotclick(%#i%,l,true);
    inc(#cont);
    wait(100ms);
    endif;
    //Se material colocado no inventario junto com o que ja tinha, somou 12 ou mais: Pare
    if(%#cont% = 12);
    break;
    endif;
    next;

    //Se chegou aqui e ja somou 12, é porque parou (break) la em cima, entao precisa parar o loop de pegar material
    if(%#cont% = 12);
    //Para o do; until(); geral do material
    break;
    endif;

    //Se chegou até aqui é porque nao somou 12, entao precisa verificar em outro bau
    if(%#bau_material% < 7);
    inc(#bau_material);
    log("");
    log("&e&l<Bulldozer>&cEsse bau nao tinha &bmaterial &csuficiente, procurando no proximo bau!");
    log("");
    else;
    log("");
    log("&e&l<Bulldozer>&cProcurei nos 7 baus que fui programada e dentro deles nao encontrei &bmaterial &cpara repor.");
    log("&8___________________________________________________");
    log("&e&l<Bulldozer>&4&lSuspensa!");
    #cod_off = 8;
    &time = "&b&l*Hora: &f&l%TIME% &0/ &b&l*Data: &f&l%DATE% &f(Ano-Mês-Dia)";
    press(f2);
    playsound(random.break);
    wait(200ms);
    playsound(random.break);
    wait(100ms);
    playsound(random.break);
    if(%@#ups_skill% = 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l nível na ultima vez que a macro trabalhou!";
    elseif(%@#ups_skill% > 1);
    &skill_up = "&b&l*Você upou &9&n&l%@#ups_skill%&b&l níveis na ultima vez que a macro trabalhou!";
    else;
    &skill_up = "";
    endif;
    //Guarda money ganho
    if(%@#discos% > 0);
    #total = %@#discos% * 95;
    &money = "&2&l*Você vendeu &a&n&l%@#discos%&2&l discos, e ganhou &b&n&l%#total%&2&l Coins!";
    else;
    &money = "";
    endif;
    log("");
    unset(@xlyz);
    stop();
    endif;

    until(%#cont% = 12);

    //Verifica se pegou mais blocos do que deveria
    #blocos_sobraram = 0;
    for(#i, 54, 89);
    getslotitem(%#i%,#id);
    if(%#id% = %#bloco%);
    inc(#blocos_sobraram);
    endif;
    next;

    //Se blocos bugaram
    if(%#blocos_sobraram% > 14);

    //Passa materiais sobrando do inventario para o bau (Somente se for o material selecionado para escavar)
    #blocos_removidos = 0;
    for(#i,54,89);
    getslotitem(%#i%,#id);
    if(%#id% = %#bloco%);
    slotclick(%#i%,l,true);
    inc(#blocos_removidos);
    wait(50ms);
    endif;
    if((%#blocos_sobraram% - %#blocos_removidos%) <= 12);
    break;
    endif;
    next;
    endif;

    gui();

    //Loop para garantir que o personagem irá chegar na home de escavar
    log("");
    log("&e&l<Bulldozer>&3Voltando para /home escavar...");
    log("");
    }$$/home escavar$${
    wait(7);
    do;
    if((%#xe%=%XPOS%)&&(%#ye%=%YPOS%)&&(%#ze%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer>&cAlgo deu errado! Essas nao sao as coordenadas da /home escavar. &fTentando ir para /home escavar");
    log("");
    }$$/home escavar$${
    wait(7);
    endif;
    loop;

    gui();

    //Se baus estiverem cheios e o usuario nao quer vender discos
    elseif((!baus_disponiveis) && (!vender_discos));
    if(ta_na_trap);
    unset(ta_na_trap)
    //Loop para garantir que o personagem irá chegar na home de escavar
    log("");
    log("&e&l<Bulldozer>&3Voltando para /home escavar...");
    log("");
    }$$/home escavar$${
    wait(7);
    do;
    if((%#xe%=%XPOS%)&&(%#ye%=%YPOS%)&&(%#ze%=%ZPOS%));
    break;
    else;
    log("");
    log("&e&l<Bulldozer>&cAlgo deu errado! Essas nao sao as coordenadas da /home escavar. &fTentando ir para /home escavar");
    log("");
    }$$/home escavar$${
    wait(7);
    endif;
    loop;
    endif;
    gui();
    endif;

    endif;
    loop;
    endif;
    }$$

    Script macro no onchat:
    Você deve colocar sua senha onde está escrito SUA-SENHA, no inicio do código.
    $${
    if(@xlyz);
    &pl = %PLAYER%;

    //Login
    ifmatches(%CHATCLEAN%,"»Bem vindo de volta. Por favor digite /login sua-senha.");
    set(@logando);
    log("&e&l»Bulldozer»&d&lVoce esta reconectando, vou fazer login...");
    }$$/login SUA-SENHA$${
    endif;

    //Lista de comandos
    ifmatches(%CHATCLEAN%,"%&pl%: comandos");
    gui(CHAT);
    log("");
    log("");
    log("");
    log("&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@");
    log("&e&l<Bulldozer>&d&lComandos da macro:");
    log("");
    log("&b&l»Digite:&e&lauto tell &fou &e&lat &fpara alternar entre &2ligado &fou &cdesligado &fo tell automatico!");
    log("&b&l»Digite:&e&lquantos niveis &fpara saber quantos níveis de escavaçao você upou!");
    log("&b&l»Digite:&e&lqlivros &fpara saber quais livros você pegou!");
    log("&b&l»Digite:&e&lreset livros &fpara zerar o contador de livros!");
    log("&b&l»Digite:&e&lcreditos &fpara conhecer mais sobre a &e&lBulldozer&f e pegar o link do tópico!");
    log("&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@&b@&9@");
    log("");
    endif;

    //Desativar @logando
    ifmatches(%CHATCLEAN%,"»Agora você está logado. NUNCA use a mesma senha do Craftlandia em outros servidores. JAMAIS passe sua senha para outras pessoas. Admins NUNCA irao pedir sua senha!");
    unset(@logando);
    log("&e&l»Bulldozer»&2&lVocê logou com sucesso!");
    endif;
    ifmatches(%CHATCLEAN%,"»Você já está logado!");
    if(@logando);
    unset(@logando);
    log("&e&l»Bulldozer»&7&lAlarme falso!");
    endif;
    endif;
    ifmatches(%CHATCLEAN%,"»Senha incorreta");
    if(@logando);
    log("&e&l»Bulldozer»&4&lNossa! Parece que você colocou a senha errada na macro. Parabéns... Nunca vai logar!!! ");
    log("&e&l»Bulldozer»&7&lFATAL ERROR!!!");
    endif;
    endif;

    //Liga ou desliga auto tell
    ifmatches(%CHATCLEAN%,"%&pl%: auto tell");
    if(auto_tell);
    unset(auto_tell);
    log("&e&l<Bulldozer>&2&l[Auto tell]&4&lOFF: &cNao irei responder tell's automaticamente...");
    else;
    set(auto_tell);
    log("&e&l<Bulldozer>&2&l[Auto tell]&b&lON: &aIrei responder tell's automaticamente...");
    endif;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl%: at");
    if(auto_tell);
    unset(auto_tell);
    log("&e&l<Bulldozer>&2&l[Auto tell]&4&lOFF: &cNao irei responder tell's automaticamente...");
    else;
    set(auto_tell);
    log("&e&l<Bulldozer>&2&l[Auto tell]&b&lON: &aIrei responder tell's automaticamente...");
    endif;
    endif;

    //Auto-tell
    ifmatches(%CHATCLEAN%,"\(Mensagem de ([a-zA-Z0-9\-_]{2,16})\): .*");
    if(auto_tell);
    match(%CHATCLEAN%,"\(Mensagem de ([a-zA-Z0-9\-_]{2,16})\): (.*)",{&nickname,&message});
    logto("[%SERVER%] Bulldozer.txt","[%DATE%][%TIME%] %&nickname%: %&message%");
    playsound(random.drink);
    inc(@#tell);
    if(%@#tell% > 5);
    unset(auto_tell);
    log("&e&l<Bulldozer>&2&l[Auto tell]&d&lMuitas respostas de tell, aguardando...");
    wait(10);
    set(auto_tell);
    @#tell = 0;
    else;
    }$$/r [AFK upando/macro bulldozer by xlyz]: Sua mensagem foi gravada e irei responde-la posteriormente $${
    endif;

    endif;
    endif;

    //Pausa para limpar o chao
    ifmatches(%CHATCLEAN%,"\[Server\] » Limpando itens do chao em 5s");
    set(@limpando);
    wait(7);
    unset(@limpando);
    endif;

    //Conta money ganho com venda de discos
    ifmatches(%CHATCLEAN%,"Voce vendeu 1 Record 12 para AdminShop por 100.00 Coins.");
    log("Qisso?");
    inc(@#discos);
    endif;

    //Verifica niveis upados
    ifmatches(%CHATCLEAN%,"Habilidade em Escavaçao aumentada em 1. Total");
    log("");
    playsound(random.orb);
    wait(100ms);
    playsound(random.orb);
    wait(100ms);
    playsound(random.orb);
    log("&e&l<Bulldozer>&2&lOpa! Que bom, mais um nível upado!!!");
    log("");
    inc(@#ups_skill);
    endif;

    //Mostra niveis upados com macro ligada
    ifmatches(%CHATCLEAN%,"%&pl%: quantos niveis");
    if(%@#ups_skill% = 1);
    log("&e&l<Bulldozer>&b&lVocê upou &b&n&l%@#ups_skill%&b&l nível até agora!");
    elseif(%@#ups_skill% > 1);
    log("&e&l<Bulldozer>&2&lVocê upou &2&n&l%@#ups_skill%&2&l níveis até agora!");
    else;
    log("&e&l<Bulldozer>&6&lVocê ainda nao upou. :'(");
    endif;
    endif;

    //Contador de livros by Casal WIN
    setlabel(LV,&7&lLivros Bulldozer: %#livro%,LV);

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro:");
    #livro=%#livro%+1;
    setlabel(LV,&7&lLivros Bulldozer: %#livro%,LV);
    log("&e&lVocê encontrou um livro!");
    ACHIEVEMENTGET("Contagem by:Casal WIN",351:4);
    }$$/g [macro bulldozer by xlyz] opa, +1 livro hehe!!!$${
    playsound(random.click);
    wait(50ms);
    playsound(tile.piston.out);
    endif;

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro: Tesouro Nível 1");
    #nv1=%#nv1%+1;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro: Tesouro Nível 2");
    #nv2=%#nv2%+1;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro: Tesouro Nível 3");
    #nv3=%#nv3%+1;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro: Tesouro Nível 4");
    #nv4=%#nv4%+1;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro: Tesouro Nível 5");
    #nv5=%#nv5%+1;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro: Tesouro Nível 6");
    #nv6=%#nv6%+1;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro: Tesouro Nível 7");
    #nv7=%#nv7%+1;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro: Tesouro Nível 8");
    #nv8=%#nv8%+1;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro: Tesouro Nível 9");
    #nv9=%#nv9%+1;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro: Tesouro Nível 10");
    #nv10=%#nv10%+1;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl% encontrou um livro: Tesouro Nível 11");
    #nv11=%#nv11%+1;
    endif;

    ifmatches(%CHATCLEAN%,"%&pl%: qlivros");
    log( &a\o/ );
    log(&f&lLivros pegos:);
    #total=%#nv1%+%#nv2%+%#nv3%+%#nv4%+%#nv5%+%#nv6%+%#nv7%+%#nv8%+%#nv9%+%#nv10%+%#nv11%;
    log(&f&fNivel &6&l1&f&l: &a&l%#nv1%);
    log(&f&lNivel &6&l2&f&l: &a&l%#nv2%);
    log(&f&lNivel &6&l3&f&l: &a&l%#nv3%);
    log(&f&lNivel &6&l4&f&l: &a&l%#nv4%);
    log(&f&lNivel &6&l5&f&l: &a&l%#nv5%);
    log(&f&lNivel &6&l6&f&l: &a&l%#nv6%);
    log(&f&lNivel &6&l7&f&l: &a&l%#nv7%);
    log(&f&lNivel &6&l8&f&l: &a&l%#nv8%);
    log(&f&lNivel &6&l9&f&l: &a&l%#nv9%);
    log(&f&lNivel &c&l10&f&l: &a&l%#nv10%);
    log(&f&lNivel &4&l11&f&l: &a&l%#nv11%);
    log(&f&lTOTAL: &d&l%#total%);
    endif;

    ifmatches(%CHATCLEAN%,"%&pl%: reset livros");
    #livro=0;
    #nv1=0;
    #nv2=0;
    #nv3=0;
    #nv4=0;
    #nv5=0;
    #nv6=0;
    #nv7=0;
    #nv8=0;
    #nv9=0;
    #nv10=0;
    #nv11=0;
    setlabel(LV,&7&lLivros Bulldozer: %#livro%,LV);
    log(&e&lLivros resetados!);
    endif;

    ifmatches(%CHATCLEAN%,"%&pl%: creditos");
    log("");
    log("&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@");
    log("&e&l»Macro Principal Escavaçao 'Bulldozer' by &f&l&n&oxlyz&e&l!»");
    log("&e&l»Bulldozer»&f&lXLYZ &5&lOwna!");
    log("&d*Link: http://forum.craftlandia.com.br/ipb/index.php?/topic/590814-macro-escava%C3%A7%C3%A3o-bulldozer/");
    log("");
    log("&9&l»»SubMacro 'Contador de Livros' by &f&lJohnnyWin&9&l!»");
    log("&9&l»Contador»&f&lWIN &5&lOwna!");
    log("&d*Link: http://forum.craftlandia.com.br/ipb/index.php?/topic/507545-macro-contagem-de-livros-encontrados/");
    log("");
    log("&2&l»»SubMacro 'Auto tell' by &f&l13darkfire13&2&l!»");
    log("&2&l»AutoTell»&f&l13darkfire13 &5&lOwna!");
    log("&d*Link: http://forum.craftlandia.com.br/ipb/index.php?/topic/289315-macro-afk-salva-logs-shop/");
    log("");
    log("&9Copyleft – all rights reversed");
    log("&b&lObrigado! &4<3");
    log("&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@&a@&2@");
    log("");
    gui(chat);

    endif;

    endif;
    }$$
     
  2. ♕ByStarS♕

    ♕ByStarS♕ Excelente
    VIP

    Afiliado:
    26 Agosto 2015
    Mensagens:
    6,516
    Curtidas Recebidas:
    226
    Curtiu:
    0
    Sexo:
    Masculino
    Localização:
    Curitiba-PR
    Cubos:
    146.00
    Nick:
    ByStarS
    Eta macro pequeno -q
     
    xlyz curtiu isso.
  3. Anderson13fs

    Afiliado:
    4 Março 2013
    Mensagens:
    589
    Curtidas Recebidas:
    153
    Curtiu:
    589
    Sexo:
    Masculino
    Localização:
    Ribeirópolis...
    Cubos:
    793.00
    Nick:
    Anderson15fs
    Clan:
    Só Jogo Solo
    Facebook:
    /anderson13fs
    kkkk, boa. Quase que esse script não acabava, kacete grande
     
  4. xlyz

    xlyz Excelente
    VIP

    Afiliado:
    1 Agosto 2014
    Mensagens:
    229
    Curtidas Recebidas:
    228
    Curtiu:
    490
    Sexo:
    Masculino
    Cubos:
    492.00
    Nick:
    xlyz
    Clan:
    MGT
    É esta grande porque fiz ela ficar organizada. Melhor pra encontrar bugs e problemas...
     
  5. yButter

    yButter Neutro
    VIP

    Afiliado:
    8 Novembro 2014
    Mensagens:
    339
    Curtidas Recebidas:
    16
    Curtiu:
    0
    Sexo:
    Masculino
    Localização:
    Em Casa
    Cubos:
    397.00
    Nick:
    yButter
    Clan:
    BTH
    Facebook:
    With Week gostozion
    man faz um video explicando tudi direitin ta mt loco essa parada ai
     
  6. Lipitio

    Lipitio Neutro
    VIP

    Afiliado:
    2 Janeiro 2013
    Mensagens:
    52
    Curtidas Recebidas:
    2
    Curtiu:
    0
    Sexo:
    Masculino
    Localização:
    Gravataí RS
    Cubos:
    95.00
    Nick:
    G0TEN / Lipitio
    Clan:
    SOLO
    na real vo testar agora mesmo. pelo tamanho imagina o trampo slc
     
  7. xlyz

    xlyz Excelente
    VIP

    Afiliado:
    1 Agosto 2014
    Mensagens:
    229
    Curtidas Recebidas:
    228
    Curtiu:
    490
    Sexo:
    Masculino
    Cubos:
    492.00
    Nick:
    xlyz
    Clan:
    MGT
    Só ligando a macro instrutora no tópico tutorial você já pode conseguir usar a de escavação. Mas vou fazer esse fim de semana se der tempo.

    É...
     
    vitorjordao curtiu isso.
  8. BigMikeGR

    BigMikeGR Craftlandiano
    VIP

    Afiliado:
    7 Novembro 2014
    Mensagens:
    23,096
    Curtidas Recebidas:
    1,695
    Curtiu:
    872
    Sexo:
    Masculino
    Cubos:
    1,146.33
    Nick:
    BigMike_GR
    Gigante

    Enviado de meu LG-E425f usando Tapatalk
     
    xlyz curtiu isso.
  9. xlyz

    xlyz Excelente
    VIP

    Afiliado:
    1 Agosto 2014
    Mensagens:
    229
    Curtidas Recebidas:
    228
    Curtiu:
    490
    Sexo:
    Masculino
    Cubos:
    492.00
    Nick:
    xlyz
    Clan:
    MGT
    Galera, sugiro que removam a mensagem do global na macro, pois não é mais permitida '-'. Não estou conseguindo editar meus tópicos, vou reportar o bug... Assim que possível edito a macro daqui.
     
  10. DeathM4nzZ

    DeathM4nzZ Hardcore
    VIP

    Afiliado:
    27 Maio 2015
    Mensagens:
    17,225
    Curtidas Recebidas:
    2,377
    Curtiu:
    2,245
    Sexo:
    Masculino
    Cubos:
    1,109.00
    Nick:
    Meu nome é John
    uma dúvida,pra que serve esse macro ?'-'
     
  11. xlyz

    xlyz Excelente
    VIP

    Afiliado:
    1 Agosto 2014
    Mensagens:
    229
    Curtidas Recebidas:
    228
    Curtiu:
    490
    Sexo:
    Masculino
    Cubos:
    492.00
    Nick:
    xlyz
    Clan:
    MGT
    kkkkk... Pra upar escavação, ta la em cima...
     
  12. DeathM4nzZ

    DeathM4nzZ Hardcore
    VIP

    Afiliado:
    27 Maio 2015
    Mensagens:
    17,225
    Curtidas Recebidas:
    2,377
    Curtiu:
    2,245
    Sexo:
    Masculino
    Cubos:
    1,109.00
    Nick:
    Meu nome é John
    mds na moral,eu não tinha visto aquilo kkkkkkkkkkkk desculpa,mas eu não upo mais esc kkk mas parabéns pela macro :D
     
    xlyz curtiu isso.
  13. Gavstriky

    Gavstriky Hardcore
    VIP

    Afiliado:
    26 Março 2015
    Mensagens:
    17,437
    Curtidas Recebidas:
    2,206
    Curtiu:
    744
    Sexo:
    Masculino
    Cubos:
    1,610.75
    Nick:
    RiowZ
    Estou com umas dúvidas..
    Vem MP? ;-
     
  14. xlyz

    xlyz Excelente
    VIP

    Afiliado:
    1 Agosto 2014
    Mensagens:
    229
    Curtidas Recebidas:
    228
    Curtiu:
    490
    Sexo:
    Masculino
    Cubos:
    492.00
    Nick:
    xlyz
    Clan:
    MGT
    Sim pode enviar.
     
Status do Tópico:
Não esta aberto para novas mensagens.