[DICA] Separando itens encantados.. será?

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.
Fiquei empolgado quando li o seu tópico e do [member=iBieel] referente ao comando ForEach(iterator), andei pesquisando e li muita coisa na internet, isso com o intuito de melhorar a minha macro de pesca para selecionar e guardar somente itens com Enchants nos baús...

Implementei alguns códigos para testar hoje e o resultado que obtive usando estes comandos após algumas longas horas, foi que ele só verifica se os itens tem encantamentos se os mesmos estiverem armazenados na HotBar, ou seja, caso estejam nas posições fora da HotBar a verificação não é realizada pelo comando ForEach(enchantments)...

Enfim, dá para fazer uma triagem e separar os itens com enchants através da hotbar (um pouco mais de trabalho), mas seria muito mais maneiro se a checagem do ForEach(enchantments) "rodasse" todo o inventário. :D

Ou será que implementando mais algumas coisinhas dá para fazer esta checagem no inventário?

Só quebrando a cabeça mesmo para testar... :wallbash:
 
caramba se a bydjuice seila se é assim que escreve. colocasse esse fragmeno no macro de pesca organizada 2.0 seria muito bom poderia guardar apenas p3/p4 s4/s4 eff5/ff4 e tall


alias bouaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Malaka81 disse:
Fiquei empolgado quando li o seu tópico e do [member=iBieel] referente ao comando ForEach(iterator), andei pesquisando e li muita coisa na internet, isso com o intuito de melhorar a minha macro de pesca para selecionar e guardar somente itens com Enchants nos baús...

Implementei alguns códigos para testar hoje e o resultado que obtive usando estes comandos após algumas longas horas, foi que ele só verifica se os itens tem encantamentos se os mesmos estiverem armazenados na HotBar, ou seja, caso estejam nas posições fora da HotBar a verificação não é realizada pelo comando ForEach(enchantments)...

Enfim, dá para fazer uma triagem e separar os itens com enchants através da hotbar (um pouco mais de trabalho), mas seria muito mais maneiro se a checagem do ForEach(enchantments) "rodasse" todo o inventário. :D

Ou será que implementando mais algumas coisinhas dá para fazer esta checagem no inventário?

Só quebrando a cabeça mesmo para testar... :wallbash:

boa sorte cara tomara que "rode" todo o inv.
 
iBieel disse:
http://forum.craftlandia.com.br/ipb/index.php?/topic/428021-code-verificando-encantamentos/
Obs.: Ele apenas verifica um item de cada vez no inventário, caso queira fazer com que verifique todos você pode realizar uma verificação do inventário para verificar os itens e utilizar o método while() para repetir o processo.

//by: iBieel and Jimmy
$${
gui(inventory);
FOR(#slot,9,44);
GETSLOTITEM(%#slot%,#id,#stack);
IFMATCHES(%#id%,IDAQUI);
SLOTCLICK(%#slot%);
SLOTCLICK(36);
break;
ENDIF;
NEXT;
slot(1);
FOREACH(enchantments);
IF(%#encant%=1);&enc1=%ENCHANTMENT%;endif;
IF(%#encant%=2);&enc2=%ENCHANTMENT%;endif;
IF(%#encant%=3);&enc3=%ENCHANTMENT%;endif;
IF(%#encant%=4);&enc4=%ENCHANTMENT%;endif;
INC(#encant,1);NEXT;

if(%#encant% == null);
log(Item sem encantamento);
elseif(%#encant% == 1);
log(O encantamento do item é: %&enc1%);
elseif(%#encant% == 2);
log(Os encantamentos do item sao: %&enc1%, %&enc2%);
elseif(%#encant% == 3);
log(Os encantamentos do item sao: %&enc1%, %&enc2%, %&enc3%);
elseif(%#encant% == 4);
log(Os encantamentos do item sao: %&enc1%, %&enc2%, %&enc3%, %&enc4%);
endif;
#encant = 0;
}$$

Verificar encantamento.:

if(%#encant% == null);
log(Item sem encantamento);
elseif(%#encant% == 1);
if(%&encant% == Fire Aspect I");
//Use a criatividade
endif;
elseif(%#encant% == 2);
ifmatches(%&enc1%, Fire Aspect I|Knockback I);
ifmatches(%&enc2%, Fire Aspect I|Knockback I);
//Use a criatividade
endif;
endif;
elseif(%#encant% == 3);
ifmatches(%&enc1%, Fire Aspect I|Knockback I|Smite I);
ifmatches(%&enc2%, Fire Aspect I|Knockback I|Smite I);
ifmatches(%&enc3%, Fire Aspect I|Knockback I|Smite I);
//Use a criatividade
endif;
endif;
endif;
elseif(%#encant% == 4);
ifmatches(%&enc1%, Fire Aspect I|Knockback I|Smite I|Sharpness I);
ifmatches(%&enc2%, Fire Aspect I|Knockback I|Smite I|Sharpness I);
ifmatches(%&enc3%, Fire Aspect I|Knockback I|Smite I|Sharpness I);
ifmatches(%&enc4%, Fire Aspect I|Knockback I|Smite I|Sharpness I);
//Use a criatividade
endif;
endif;
endif;
endif
endif;
Testei o primeiro macro e ele funcionou até de forma correta mas verifiquei que ele não mostrava o primeiro encantamento por isso decidi mexer no código e consegui arrumar espero ter ajudado
$${
gui(inventory);
FOR(#slot,9,44);
GETSLOTITEM(%#slot%,#id,#stack);
IFMATCHES(%#id%,IDAQUI);
SLOTCLICK(%#slot%);
SLOTCLICK(36);
break;
ENDIF;
NEXT;
slot(1);
FOREACH(enchantments);
IF(%#encant%=0);&enc=%ENCHANTMENT%;endif;
IF(%#encant%=1);&enc1=%ENCHANTMENT%;endif;
IF(%#encant%=2);&enc2=%ENCHANTMENT%;endif;
IF(%#encant%=3);&enc3=%ENCHANTMENT%;endif;
IF(%#encant%=4);&enc4=%ENCHANTMENT%;endif;
INC(#encant,1);NEXT;

if(%#encant% == null);
log(Item sem encantamento);
elseif(%#encant% == 1);
log(O encantamento do item é: %&enc%;
elseif(%#encant% == 2);
log(Os encantamentos do item sao: %&enc% %&enc1%);
elseif(%#encant% == 3);
log(Os encantamentos do item sao: %&enc%, %&enc1%, %&enc2%);
elseif(%#encant% == 4);
log(Os encantamentos do item sao: %&enc%, %&enc1%, %&enc2%, %&enc3%);
elseif(%#encant% == 5);
log(Os encantamentos do item sao: %&enc%, %&enc1%, %&enc2%, %&enc3%, %&enc4%);
endif;
#encant = 0;
}$$
 
Reavik disse:
boa sorte cara tomara que "rode" todo o inv.


Yes! :banana:

Após muitos dias quebrando a cabeça :wallbash: testando o FOREACH(ENCHANTMENTS) consegui incrementar minha macro de pesca, agora separa e guarda nos baús somente itens com enchants! E os peixes tb é claro...


Por enquanto a macro guarda todos os itens encantados, até porque ainda estou chegando ao level 400 em pesca, mas dá para fazer "miséria" com esse comando e guardar somente os itens com os encantamentos que desejar!


Por enquanto não irei postar o código como forma de incentivo para que os demais usuários também estudem, leiam e pesquisem mais sobre os Macros!


Thanks [member=jimmyfilips] e [member=iBieel] por postarem sobre o FOREACH, valeu o incentivo!


Uma dica: O comando FOREACH(ENCHANTMENTS) só funciona com itens que estão nas posições de 1 a 9 da Hotbar!


T+
 
Status
Não está aberto para novas respostas.

Users who are viewing this thread

Voltar
Topo