ENTREGUE [Macro/Teste] Andar Automaticamente

Bem-vindo!

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

Inscreva-se agora!
Status
Não está aberto para novas respostas.

Xtycon

Bom
VIP
Entrou
Jan 22, 2014
Mensagens
634
Cubos
0
ATUALIZADO ULTIMA VEZ EM 13/09/2014 as 10:43

Eae galera, eu fiz um macro meio inutil mas que pode ser util para quem precisa fazer macros de andar ate determinada localidade.

ChangeLog
Codigo da macro atualizado (troque apenas a primeira macro), agora ele devia de lava e de blocos com mais de 1 de altura - em breve videos de demostraçao :)
Macro atualizada - agora ele pula apenas quando necessario, olha para a direçao em que esta indo e codigo organizado

A macro ta toda zuada por que tava fazendo testes consertando alguns problemas e talz, se tiver algum bug é só me avisar q eu tento resolver.

A instalaçao da macro é a mesma de sempre mas tem uma coisa diferente da normal e eu vo explicar como funciona.

IF(andar);
LOG([Macro] Desligado);
UNSET(andar);
KEYUP(JUMP);
KEYUP(FORWARD);
KEYUP(BACK);
KEYUP(RIGHT);
KEYUP(LEFT);
STOP;
ELSE;
LOG([Macro] Ligado);
SET(andar);
DO;


IF(@#andarx=%XPOS%);
IF(@#andarz=%ZPOS%);
LOG([Macro] Voce Chegou no Destino);
LOG([Macro] Desligado);
UNSET(andar);
STOP;
ENDIF;
ENDIF;




@#localx = %XPOS%-@#andarx;





IF(@#localx<0);
LOOK(EAST);
KEYDOWN(FORWARD);
DO;
GETIDREL(0,0,0,#chao,#chaodata);
GETIDREL(1,0,0,#xe);
GETIDREL(1,1,0,#oxe);
GETIDREL(1,-1,0,#cxe);

IF(%#cxe%=10);
BREAK;
ELSEIF(%#cxe%=11);
BREAK;
ENDIF;

IF(%#oxe%!=0);
BREAK;
ELSEIF(%#oxe%=8);

ELSEIF(%#oxe%=9);

ENDIF;

IF(%#chao%=9);
KEYDOWN(JUMP);
ELSEIF(%#chao%=8);
KEYDOWN(JUMP);
ELSEIF(%#xe%=10);
KEYUP(JUMP);
BREAK;
ELSEIF(%#xe%=11);
KEYUP(JUMP);
BREAK;
ELSEIF(%#xe%!=0);
KEYDOWN(JUMP);
ELSE;
KEYUP(JUMP);
ENDIF;

IF(@#andarx=%XPOS%);
KEYUP(FORWARD);
KEYUP(JUMP);
BREAK;
ENDIF;
LOOP;
ELSE;
LOOK(WEST);
KEYDOWN(FORWARD);
DO;
GETIDREL(0,0,0,#chao,#chaodata);
GETIDREL(-1,0,0,#xw);
GETIDREL(-1,1,0,#oxw);
GETIDREL(-1,-1,0,#cxw);

IF(%#cxw%=10);
BREAK;
ELSEIF(%#cxw%=11);
BREAK;
ENDIF;

IF(%#oxw%!=0);
BREAK;
ELSEIF(%#oxw%=8);

ELSEIF(%#oxw%=9);

ENDIF;


IF(%#chao%=9);
KEYDOWN(JUMP);
ELSEIF(%#chao%=8);
KEYDOWN(JUMP);
ELSEIF(%#xw%=10);
KEYUP(JUMP);
BREAK;
ELSEIF(%#xw%=11);
KEYUP(JUMP);
BREAK;
ELSEIF(%#xw%!=0);
KEYDOWN(JUMP);
ELSE;
KEYUP(JUMP);
ENDIF;

IF(@#andarx=%XPOS%);
KEYUP(FORWARD);
KEYUP(JUMP);
BREAK;
ENDIF;
LOOP;
ENDIF;

@#localz = %ZPOS%-@#andarz;

IF(@#localz<0);
LOOK(SOUTH);
KEYDOWN(FORWARD);
DO;
GETIDREL(0,0,0,#chao,#chaodata);
GETIDREL(0,0,1,#zs);
GETIDREL(0,1,1,#ozs);
GETIDREL(0,-1,1,#czs);

IF(%#czs%=10);
BREAK;
ELSEIF(%#czs%=11);
BREAK;
ENDIF;

IF(%#ozs%!=0);
BREAK;
ELSEIF(%#ozs%=8);

ELSEIF(%#ozs%=9);

ENDIF;


IF(%#chao%=9);
KEYDOWN(JUMP);
ELSEIF(%#chao%=8);
KEYDOWN(JUMP);
ELSEIF(%#zs%=10);
KEYUP(JUMP);
BREAK;
ELSEIF(%#zs%=11);
KEYUP(JUMP);
BREAK;
ELSEIF(%#zs%!=0);
KEYDOWN(JUMP);
ELSE;
KEYUP(JUMP);
ENDIF;

IF(@#andarz=%ZPOS%);
KEYUP(FORWARD);
KEYUP(JUMP);
BREAK;
ENDIF;
LOOP;
ELSE;
LOOK(NORTH);
KEYDOWN(FORWARD);
DO;
GETIDREL(0,0,0,#chao,#chaodata);
GETIDREL(0,0,-1,#zn);
GETIDREL(0,1,-1,#ozn);
GETIDREL(0,-1,-1,#czn);

IF(%#czn%=10);
BREAK;
ELSEIF(%#czn%=11);
BREAK;
ENDIF;

IF(%#ozn%!=0);
BREAK;
ELSEIF(%#ozn%=8);

ELSEIF(%#ozn%=9);

ENDIF;


IF(%#chao%=9);
KEYDOWN(JUMP);
ELSEIF(%#chao%=8);
KEYDOWN(JUMP);
ELSEIF(%#zn%=10);
KEYUP(JUMP);
BREAK;
ELSEIF(%#zn%=11);
KEYUP(JUMP);
BREAK;
ELSEIF(%#zn%!=0);
KEYDOWN(JUMP);
ELSE;
KEYUP(JUMP);
ENDIF;

IF(@#andarz=%ZPOS%);
KEYUP(FORWARD);
KEYUP(JUMP);
BREAK;
ENDIF;
LOOP;
ENDIF;


LOOP;
ENDIF;

Para instalar voce cria um arquivo de texto, escolhe um nome, cola o codigo e salva.

escolha uma tecla que nao esta em uso e coloque $${$$<Nome que voce deu.txt>}$$ ( nao esqueça de colocar o .txt no final).


e depois de instalar voce escolhe uma outra tecla qualquer que nao esteja em uso e cole o codigo abaixo

$${SET(@#andarx,%XPOS%);LOG(%@#andarx%);SET(@#andarz,%ZPOS%);LOG(%@#andarz%);SET(@#andary,%YPOS%);LOG(%@#andary%)}$$
------------------------------------------------------------------------------------------------------------------------------------------------------

Para iniciar ela voce vai para algum lugar e precione a tecla da segunda macro para setar o local que voce vai ir.(nao escolha locais absurdos)

depois va para outro local qualquer e ative a primeira macro que ele vai começar a andar e pular ( ele primeiro se ajeita a posiçao X e depois vai para a posiçao Z entao tome cuidado com os obstaculos ex: lava , cactus , penhascos , e qualquer coisa fatal)

ele atravessa lagos, sobe alguns obstaculos com 1 bloco de altura e quando chega no fim ele se desliga automaticamente.

se voce quiser é só adaptar a alguma macro que precise andar e pronto.


Aviso: nao me responsabilizo por itens perdidos por mortes pela tragetoria.

Aviso²: se voce ver algum erro de portugues faça de conta que nao viu :P

Macro feito totalmente por eu
 
Xtycon disse:
eu to dando uma melhoradinha na macro , quando tiver tempo eu do um update aqui no forum
"Macro totalmente feita por eu" o correto é "mim" em vez de "eu". :P
 
Atualizei a macro

ele desvia da lava que esta na altura do chao e a lava que esta acima do chao, desvia de paredes(caso fique cercado ele via fica doidaum olhando pro lado e pro otro bem rapidaum, depois eu tento ajeita isso).

é só isso mesmo depois eu upo uns videos de demostraçao pq agr to sem tempo.

flw e obrigado a todos :P
 
Status
Não está aberto para novas respostas.

Users who are viewing this thread

Voltar
Topo