É um macro simples para construir muros.
Você precisa por ele no
EDIT FILES!
Não abra o inventário durante a construção, recomendado deixar o
inventário lotado de blocos.
É recomendado que você inicie ele olhando para o
Norte, e do seu lado
DIREITO.
Bom, vamos ver como ele funciona:
Então, quando você ligar ele ele vai te fazer 3 perguntas:
1. Altura máxima que você quer fazer.
2. Qual o comprimento?
3. Qual o comprimento?2
Vamos imaginar que minha region seja assim:
Então eu quero fazer um muro com uma altura de 20 blocos, logo eu vou responder assim:
1. 20
2. 20
3. 60
Simples, espero que tenham entendido!
[hr]
Macro
Macro que coloca um bloco por vez:
$${
if(boboconstrutor);
log(&6[&b!&6] &4Macro Desligado);
unset(boboconstrutor);
stop;else;
log(&6[&b!&6] &aIniciando o Trabalho);
set(boboconstrutor);
ifmatches(%DIRECTION%,N);&dir=NORTH;endif;
ifmatches(%DIRECTION%,S);&dir=SOUTH;endif;
ifmatches(%DIRECTION%,W);&dir=WEST;endif;
ifmatches(%DIRECTION%,E);&dir=EAST;endif;
if(%ITEM%=0);
log(&6[&b!&6] &aVocê Precisa Estar com um bloco na mão);
unset(boboconstrutor);stop;endif;
gui(INVENTORY);wait(500ms);
getslotitem(35,#i,#s);
if(%#s%=0);
log(&6[&b!&6] &aVocê precisa por algo no slot 35 (Ultimo SLOT));
log(&6[&b!&6] &aMacro Desligado!);gui;stop;
endif;gui;
PROMPT(#mx,$$?,Qual sera a altura MAXIMA?);
PROMPT(#q,$$?,Qual o Comprimento?);
PROMPT(#qq,$$?,Qual o Comprimento?2);
#bloco=%ITEM%;
#q=%#q%-1;
#qq=%#qq%-1;
#mn=%YPOS%;
#max=%YPOS%+%#mx%;
do;
if(%#mn%>=%#max%);keyup(sneak);
log(&6[&b!&6] &aTrabalho Encerrado);
unset(boboconstrutor);stop;endif;
#x=%XPOS%;#z=%ZPOS%;#y=%YPOS%;
//=================JUMP
do;
keydown(JUMP);pick(%#bloco%);
Key(use);until(%YPOS%=%#y%+1);
keyup(JUMP);
//=================FORWARD
do;
look(%&dir%);look(,90);
getslotitem(9,#id,#stacksize);
if(%#stacksize%=0);
keyup(FORWARD);
gui(INVENTORY);wait(500ms);
getslotitem(35,#id,#stacksize);
if(%#stacksize%=0);
log(&6[&b!&6] &4Seus Blocos Acabaram Senhor);
stop;elseif(%#stacksize%!=0);
for(#i,9,35);slotclick(%#i%,l,true);
wait(70ms);next;gui;endif;
endif;pick(%#bloco%);
keydown(sneak);keydown(FORWARD);key(use);
until((%ZPOS%=%#z%+%#q%)|(%ZPOS%=%#z%-%#q%)|(%XPOS%=%#x%-%#q%)|(%XPOS%=%#x%+%#q%));
keyup(FORWARD);key(use);wait(1ms);
#x=%XPOS%;#z=%ZPOS%;#y=%YPOS%;
//=================LEFT
do;
look(%&dir%);look(,90);
getslotitem(9,#id,#stacksize);
if(%#stacksize%=0);
keyup(LEFT);
gui(INVENTORY);wait(500ms);
getslotitem(35,#id,#stacksize);
if(%#stacksize%=0);
log(&6[&b!&6] &4Seus Blocos Acabaram Senhor);
stop;elseif(%#stacksize%!=0);
for(#i,9,35);slotclick(%#i%,l,true);
wait(70ms);next;gui;endif;
endif;pick(%#bloco%);
keydown(sneak);keydown(LEFT);key(use);
until((%ZPOS%=%#z%+%#qq%)|(%ZPOS%=%#z%-%#qq%)|(%XPOS%=%#x%-%#qq%)|(%XPOS%=%#x%+%#qq%));
keyup(LEFT);key(use);wait(1ms);
//====================BACK
#x=%XPOS%;#z=%ZPOS%;#y=%YPOS%;
do;
look(%&dir%);look(,90);
getslotitem(9,#id,#stacksize);
if(%#stacksize%=0);
keyup(BACK);
gui(INVENTORY);wait(500ms);
getslotitem(35,#id,#stacksize);
if(%#stacksize%=0);
log(&6[&b!&6] &4Seus Blocos Acabaram Senhor);
stop;elseif(%#stacksize%!=0);
for(#i,9,35);slotclick(%#i%,l,true);
wait(70ms);next;gui;endif;
endif;pick(%#bloco%);
keydown(sneak);keydown(BACK);key(use);
until((%ZPOS%=%#z%+%#q%)|(%ZPOS%=%#z%-%#q%)|(%XPOS%=%#x%-%#q%)|(%XPOS%=%#x%+%#q%));
keyup(BACK);key(use);wait(1ms);
//====================RIGHT
#x=%XPOS%;#z=%ZPOS%;#y=%YPOS%;
do;
look(%&dir%);look(,90);
getslotitem(9,#id,#stacksize);
if(%#stacksize%=0);
keyup(RIGHT);
gui(INVENTORY);wait(500ms);
getslotitem(35,#id,#stacksize);
if(%#stacksize%=0);
log(&6[&b!&6] &4Seus Blocos Acabaram Senhor);
stop;elseif(%#stacksize%!=0);
for(#i,9,35);slotclick(%#i%,l,true);
wait(70ms);next;gui;endif;
endif;pick(%#bloco%);
keydown(sneak);keydown(RIGHT);key(use);
until((%ZPOS%=%#z%+%#qq%)|(%ZPOS%=%#z%-%#qq%)|(%XPOS%=%#x%-%#qq%)|(%XPOS%=%#x%+%#qq%));
keyup(RIGHT);key(use);wait(1ms);
inc(#mn,1);
loop;
}$$
Macro que coloca dois blocos por vez:
$${
if(boboconstrutor);
log(&6[&b!&6] &4Macro Desligado);
unset(boboconstrutor);
stop;else;
log(&6[&b!&6] &aIniciando o Trabalho);
set(boboconstrutor);
ifmatches(%DIRECTION%,N);&dir=NORTH;endif;
ifmatches(%DIRECTION%,S);&dir=SOUTH;endif;
ifmatches(%DIRECTION%,W);&dir=WEST;endif;
ifmatches(%DIRECTION%,E);&dir=EAST;endif;
if(%ITEM%=0);
log(&6[&b!&6] &aVocê Precisa Estar com um bloco na mão);
unset(boboconstrutor);stop;endif;
gui(INVENTORY);wait(500ms);
getslotitem(35,#i,#s);
if(%#s%=0);
log(&6[&b!&6] &aVocê precisa por algo no slot 35 (Ultimo SLOT));
log(&6[&b!&6] &aMacro Desligado!);gui;stop;
endif;gui;
PROMPT(#mx,$$?,Qual sera a altura MAXIMA?);
PROMPT(#q,$$?,Qual o Comprimento?);
PROMPT(#qq,$$?,Qual o Comprimento?2);
#bloco=%ITEM%;
#q=%#q%-1;
#qq=%#qq%-1;
#mn=%YPOS%;
#max=%YPOS%+%#mx%;
do;
if(%#mn%>=%#max%);keyup(sneak);
log(&6[&b!&6] &aTrabalho Encerrado);
unset(boboconstrutor);stop;endif;
#x=%XPOS%;#z=%ZPOS%;#y=%YPOS%;
//=================JUMP
do;
keydown(JUMP);pick(%#bloco%);
Key(use);until(%YPOS%=%#y%+2);
keyup(JUMP);
//=================FORWARD
do;
look(%&dir%);look(,90);
getslotitem(9,#id,#stacksize);
if(%#stacksize%=0);
keyup(FORWARD);
gui(INVENTORY);wait(500ms);
getslotitem(35,#id,#stacksize);
if(%#stacksize%=0);
log(&6[&b!&6] &4Seus Blocos Acabaram Senhor);
stop;elseif(%#stacksize%!=0);
for(#i,9,35);slotclick(%#i%,l,true);
wait(70ms);next;gui;endif;
endif;pick(%#bloco%);
keydown(sneak);keydown(FORWARD);key(use);
until((%ZPOS%=%#z%+%#q%)|(%ZPOS%=%#z%-%#q%)|(%XPOS%=%#x%-%#q%)|(%XPOS%=%#x%+%#q%));
keyup(FORWARD);key(use);wait(1ms);
#x=%XPOS%;#z=%ZPOS%;#y=%YPOS%;
//=================LEFT
do;
look(%&dir%);look(,90);
getslotitem(9,#id,#stacksize);
if(%#stacksize%=0);
keyup(LEFT);
gui(INVENTORY);wait(500ms);
getslotitem(35,#id,#stacksize);
if(%#stacksize%=0);
log(&6[&b!&6] &4Seus Blocos Acabaram Senhor);
stop;elseif(%#stacksize%!=0);
for(#i,9,35);slotclick(%#i%,l,true);
wait(70ms);next;gui;endif;
endif;pick(%#bloco%);
keydown(sneak);keydown(LEFT);key(use);
until((%ZPOS%=%#z%+%#qq%)|(%ZPOS%=%#z%-%#qq%)|(%XPOS%=%#x%-%#qq%)|(%XPOS%=%#x%+%#qq%));
keyup(LEFT);key(use);wait(1ms);
//====================BACK
#x=%XPOS%;#z=%ZPOS%;#y=%YPOS%;
do;
look(%&dir%);look(,90);
getslotitem(9,#id,#stacksize);
if(%#stacksize%=0);
keyup(BACK);
gui(INVENTORY);wait(500ms);
getslotitem(35,#id,#stacksize);
if(%#stacksize%=0);
log(&6[&b!&6] &4Seus Blocos Acabaram Senhor);
stop;elseif(%#stacksize%!=0);
for(#i,9,35);slotclick(%#i%,l,true);
wait(70ms);next;gui;endif;
endif;pick(%#bloco%);
keydown(sneak);keydown(BACK);key(use);
until((%ZPOS%=%#z%+%#q%)|(%ZPOS%=%#z%-%#q%)|(%XPOS%=%#x%-%#q%)|(%XPOS%=%#x%+%#q%));
keyup(BACK);key(use);wait(1ms);
//====================RIGHT
#x=%XPOS%;#z=%ZPOS%;#y=%YPOS%;
do;
look(%&dir%);look(,90);
getslotitem(9,#id,#stacksize);
if(%#stacksize%=0);
keyup(RIGHT);
gui(INVENTORY);wait(500ms);
getslotitem(35,#id,#stacksize);
if(%#stacksize%=0);
log(&6[&b!&6] &4Seus Blocos Acabaram Senhor);
stop;elseif(%#stacksize%!=0);
for(#i,9,35);slotclick(%#i%,l,true);
wait(70ms);next;gui;endif;
endif;pick(%#bloco%);
keydown(sneak);keydown(RIGHT);key(use);
until((%ZPOS%=%#z%+%#qq%)|(%ZPOS%=%#z%-%#qq%)|(%XPOS%=%#x%-%#qq%)|(%XPOS%=%#x%+%#qq%));
keyup(RIGHT);key(use);wait(1ms);
inc(#mn,2);
loop;
}$$
Eu lembro que alguém tinha postado um, mas me pediram ontem na Shout, então bom uso!Clique para expandir...