mizebox

PEDIDO
NPC Trocar 1 Item por Classe

15 posts neste tópico

Preciso de um NPC que troque um certo item pela Classe Desejada


ex:


Trocar 1x 607 por Classe Cavaleiro


Só preciso pra ultimas classes 2RD


0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para realizar uma troca básica podes configurar assim. Basta copiar o if (class == id) várias vezes e ir fazendo o seu npc. Caso não saiba os id's das classes basta digitar @job e procurar o id correspondente a classe que você quer.

 
mapa,x,y,posição <tab> script <tab> nome_do_npc <tab> sprite_id,{
 
if (entregue == 0) { // verifica se o item já foi entregue
     if (Class == id_da_classe){ // verifica a classe
          getitem id,quantidade; // entrega o item
          set entregue,1; // garante que ele não irá receber novamente
     }
} else { // caso já tenha recebido exibe mensagem.
    mes "desculpe, mas você já recebeu sua recompensa.";
    close; 
}

}
 
Editado por Strow
0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá.

        setarray .Class[1], 4016, 4017, 4018;
	setarray .Item[1], 607, 608, 609;
	
		if ( transform ){ end; }
	
			for (set [email protected], 1; [email protected] < getarraysize(.Class); set [email protected], [email protected] + 1)
			{
			set [email protected]$, [email protected]$ + ""+JobName(.Class[[email protected]])+"";
				set [email protected]$, [email protected]$ + ":";	
			}
			set [email protected], select ([email protected]$);
			
			if( countitem(.Item[[email protected]]) < 1 ){ close; }
			jobchange .Class[[email protected]];
			delitem .Item[[email protected]],1;
			set transform,1;
			close;
	end;
			
0

Compartilhar este post


Link para o post
Compartilhar em outros sites
Strow

Valew mano, mais não entendi muito o seu, tipo ae é o NPC pronto, e so tenho que adicionar a classe e os itens ?

 

Mikeias

já o seu é o código pra adicionar a um NPC ? sé for mano sou muito foda em Script não =/* sou meio entermediario faço modificações e reconstruo outros baseado em outros

0

Compartilhar este post


Link para o post
Compartilhar em outros sites

O código já está pronto.

 

Configure as classes desejadas:

setarray .Class[1], 4016, 4017, 4018;

Configure os itens:

setarray .Item[1], 607, 608, 609;

OBS.: Para cada classe há um item necessário que é configurado acima.

 

Code:

prontera,150,150,5<TAB>script<TAB>Script Name<TAB>123,{
        

       // -> Configure
        setarray .Class[1], 4016, 4017, 4018; // Classes desejadas.
	setarray .Item[1], 607, 608, 609;     // Itens necessários para conseguir determinada classe.
       // ----------------------------------
	
		if ( transform ){ end; }
	
			for (set [email protected], 1; [email protected] < getarraysize(.Class); set [email protected], [email protected] + 1)
			{
			set [email protected]$, [email protected]$ + ""+JobName(.Class[[email protected]])+"";
				set [email protected]$, [email protected]$ + ":";	
			}
			set [email protected], select ([email protected]$);
			
			if( countitem(.Item[[email protected]]) < 1 ){ close; }
			jobchange .Class[[email protected]];
			delitem .Item[[email protected]],1;
			set transform,1;
			close;
	end;
}
0

Compartilhar este post


Link para o post
Compartilhar em outros sites
Mikeias

entendi, acho que da pra usar já, mais me diz uma coisa, eu vou colocar 1 item pra ele poder vira 1 classe que pode ser qualquer uma,

voce acha melhor desse jeito que voce fez, ou colocar pra ter acesso ao npc com item e ele escolher a classe desejada ?

0

Compartilhar este post


Link para o post
Compartilhar em outros sites

O Script funciona das 2 formas.

Na forma de 1 item para qualquer classe:

setarray .Item[1], 607; // 607 = Berry. Quem tiver 1 ygg poderá escolher a classe que desejar.

Faça bom proveito.

0

Compartilhar este post


Link para o post
Compartilhar em outros sites

No meu não há erros.

Não utilizo brAthena, apenas emulador customizado. Sorry.

 

Mas tente essa modificação:

set [email protected]$, [email protected]$ + jobname(.Class[[email protected]]);

#Edit

 

Lembro que já reportaram um erro relacionado:

 

eAthena ->

Announce "anúncio",bc_all; or announce "anúncio",bc_all;

brAthena ->

 announce "anúncio",bc_all;
Editado por Mikeias
0

Compartilhar este post


Link para o post
Compartilhar em outros sites
Mikeias

Pronto, Obrigado amigo tudo certo,

 

fiz uma alteração no

 

 

if( countitem(.Item[[email protected]]) < 1 ){ close; }

para

 

 

if( countitem(.Item[[email protected]]) < 1 )

mes " Você não tem o Item Solicitado ";
mes " Favor Visitar o Site para Mais Informações ";
mes " seu site ";
{ close; }

 

besteira, mais se nao tiver o item, ele iria sair do npc sem nenhuma informação, eu adicionei a informção pra deixa

mais legalzin rsrs, obrigado ^~^

0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Apenas fiz o código, os diálogos é com você. Boa sorte!

 

#Edit

 

O correto do seu código seria:

if( countitem(.Item[[email protected]]) < 1 )
{
mes " Você não tem o Item Solicitado ";
mes " Favor Visitar o Site para Mais Informações ";
mes " seu site ";
close; 
}

Do modo feito por você, o jogador tendo ou não o item receberia a mensagem:

mes " Você não tem o Item Solicitado ";
mes " Favor Visitar o Site para Mais Informações ";
mes " seu site ";

Estava dando prioridade ao close;

Editado por Mikeias
0

Compartilhar este post


Link para o post
Compartilhar em outros sites
Mikeias

Opa, verdade agora que eu reparei rsrs, pronto concertado vlw,. agora so me diz uma coisa, voce sabe como adicionar itens custon na nova versao do emulador ?

conseguir adicionar tudo certinho, porem nao esta aparecendo no char e nao da erro :X se tiver como ajudar

0

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Não utilizo brAthena, apenas emulador customizado. Sorry.

 

 

Abra um tópico na área correta, com certeza alguém lhe ajudará.

0

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.