Ir para conteúdo

[Duvida] Remover quantia XP do Jogador


yLR111

Posts Recomendados

Você pode utilizar o seguinte metódo:

player.setExperience(player.getExperience() - quantidadearemover);

 

se ajudei, deixa o like e marca como melhor resposta para alguém fechar o tópico.

Link para o comentário
Compartilhar em outros sites

3 minutos atrás, zAryonn disse:

Você pode utilizar o seguinte metódo:


player.setExperience(player.getExperience() - quantidadearemover);

 

se ajudei, deixa o like e marca como melhor resposta para alguém fechar o tópico.

remove o XP mas nao muda de nivel

usei isso:

				int s = 2;
				p.setExp(p.getExp() - s);

 

Link para o comentário
Compartilhar em outros sites

1 minuto atrás, yLR111 disse:

remove o XP mas nao muda de nivel

usei isso:


				int s = 2;
				p.setExp(p.getExp() - s);

 

Se eu não estou enganado, há um método que é: setTotalExperience e getTotalExperience, dá uma olhada ai. E é só você checar, se a experiência do cara for <= 0 (não sei se pode ser negativa, mas se for), você remove o level do player.

// código aqui
if (p.getExp <= 0)
  p.setLevel(p.getLevel() - 1);

 

Editado por zAryonn
Link para o comentário
Compartilhar em outros sites

2 minutos atrás, zAryonn disse:

Se eu não estou enganado, há um método que é: setTotalExperience e getTotalExperience, dá uma olhada ai.

				int s = 2;
				p.setTotalExperience(p.getTotalExperience() - s);

fiz, mas agora o xp não desce, não acontece nada.

Link para o comentário
Compartilhar em outros sites

1 minuto atrás, yLR111 disse:

				int s = 2;
				p.setTotalExperience(p.getTotalExperience() - s);

fiz, mas agora o xp não desce, não acontece nada.

Recarrega a página, eu editei a minha postagem.

Link para o comentário
Compartilhar em outros sites

9 minutos atrás, zAryonn disse:

Recarrega a página, eu editei a minha postagem.

funcionou, mas esta removendo o Nível, e queria remover a Experiencia dele!

 

Exemplo:

500 experiencia (19 de nivel) / nao queria remover o nivel dele

Link para o comentário
Compartilhar em outros sites

Hm... então. Se você quer remover a experiência, você tem que usar o "getExp" e o "setExp". Como está no site do spigot, o "getExp" retorna um valor float, ele representa a experiência do jogador para atingir o próximo nível(1 como indo para o próximo nível).

Você pode fazer algo tipo assim:
 

float exp = player.getExp();
//Checando se tem mais de 500 de experiência, se não tiver, apenas coloca como '0'.
if(exp >= .5){
  player.setExp(exp - .5);
}else{
  player.setExp(0);
}
//ou...
player.setExp(exp >= .5 ? exp - .5 : 0);

 

 

Editado por bieel1503
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...