Ir para conteúdo
  • 0

[Resolvido] [Inativo][Duvida] Kit Stomper


LuizB

Pergunta

Eu tenho um Codigo De Stomper só que quando O Player Stompa o outro n aparece a mensagem de quem pulou emcima do Cara Matou o Alvo

aparece que o Alvo Stompado Caiu De Um Lugar Alto ME Ajuda Pfv

Link para o comentário
Compartilhar em outros sites

29 respostass a esta questão

Posts Recomendados

não entendi :(

 

Bom, vou tentar explicar de um jeito mais "simples". Talvez você entenda.

 

 

O dano que os jogadores que foram stompados estão recebendo no seu código é um dano de queda. Por isso, o servidor interpreta como uma morte por dano de queda. Caso você queira que o dano seja um dano dado pelo stomper, você deveria colocar que o dano que os jogadores stompados recebem é um dano ocasionado pelo jogador. Segue o meu código de stomper, no caso de você não ter entendido.

 

Código de Stomper: http://hastebin.com/giganejubu.avrasm

 

 

Faça bom uso. Espero ter ajudado dessa vez.  ><

Link para o comentário
Compartilhar em outros sites

Como Assim Amigo?

Voce da de kit Stomper Certo ? Entao claro que vc vai tar em um lugar Alto e vai ver um player, e quando vc pular nele ele vai morrer só que em vez de aparecer que vc matou ele ( Aparece que o Alvo ( O Player ) caiu de um lugar alto

Link para o comentário
Compartilhar em outros sites

Posta o código no pastebin.com pra gente entender melhor. Acho que já peguei a sua dúvida, mas tenho que ter certeza antes de ajudar.

Aqui Esta o código:

 

 

@EventHandler
	  public void stomperqueda(EntityDamageEvent e) {
	  Player p = (Player)e.getEntity();
	  if ((ArrayL.stomper.contains(p.getName()))) {
	  {
	    if ((e.getEntity() instanceof Player)) {
	      if ((ArrayL.stomper.contains(p.getName())) &&
	        (e.getCause().equals(EntityDamageEvent.DamageCause.FALL))) {
	        e.setDamage((int)p.getFallDistance() / 8);
	        if (p.getFallDistance() > 3.0F) {
	          List<Entity> nearby = p.getNearbyEntities(5.0D, 2.0D, 5.0D);
	          e.setDamage((int)p.getFallDistance() / 8);
	          for (Entity tmp : nearby)
	            if ((tmp instanceof Player)) {
	              ((Player)tmp).damage((int)(p.getFallDistance() / 1.5D));
	              if (((Player)tmp).isSneaking())
	                ((Player)tmp).damage((int)(p.getFallDistance() / 8.0D));
	            }
	        }
	      }
	    }
	    }
	  }
	}

Tipo Eu seleciono o kit Stomper, ai eu vej um alvo ( Player ) ai eu pulo emcima dele e ele morre só que não aparece que eu matei Ele ( Aparece que ele caiu de um Lugar Alto )

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

Aparece que o player caiu de um lugar alto pois o dano que é aplicado é um dano de queda, e não um dano ocasionado por uma entidade, no caso, o jogador. Você poderia fazer o seguinte:

 1. Pegar o dano inicial do evento.
 2. Cancelá-lo.

 3. Aplicar o dano do evento nas entidades próximas, e declarar que quem deu o dano foi o jogador que inicialmente tomou o dano de queda.

 4. Mandar mensagem para as entidades (jogadores) próximos, informando-os de que eles foram stompados.

Se não entendeu, eu posso deixar o meu código de Stomper pra você.
Espero ter ajudado.

Link para o comentário
Compartilhar em outros sites

Aparece que o player caiu de um lugar alto pois o dano que é aplicado é um dano de queda, e não um dano ocasionado por uma entidade, no caso, o jogador. Você poderia fazer o seguinte:

 

 1. Pegar o dano inicial do evento.

 2. Cancelá-lo.

 3. Aplicar o dano do evento nas entidades próximas, e declarar que quem deu o dano foi o jogador que inicialmente tomou o dano de queda.

 4. Mandar mensagem para as entidades (jogadores) próximos, informando-os de que eles foram stompados.

 

Se não entendeu, eu posso deixar o meu código de Stomper pra você.

Espero ter ajudado.

não entendi :(

Link para o comentário
Compartilhar em outros sites

Bom, vou tentar explicar de um jeito mais "simples". Talvez você entenda.

 

 

O dano que os jogadores que foram stompados estão recebendo no seu código é um dano de queda. Por isso, o servidor interpreta como uma morte por dano de queda. Caso você queira que o dano seja um dano dado pelo stomper, você deveria colocar que o dano que os jogadores stompados recebem é um dano ocasionado pelo jogador. Segue o meu código de stomper, no caso de você não ter entendido.

 

Código de Stomper: http://hastebin.com/giganejubu.avrasm

 

 

Faça bom uso. Espero ter ajudado dessa vez.  ><

Vlw Mano Consegui Entender pelo codigo

Link para o comentário
Compartilhar em outros sites

Bom, vou tentar explicar de um jeito mais "simples". Talvez você entenda.

 

 

O dano que os jogadores que foram stompados estão recebendo no seu código é um dano de queda. Por isso, o servidor interpreta como uma morte por dano de queda. Caso você queira que o dano seja um dano dado pelo stomper, você deveria colocar que o dano que os jogadores stompados recebem é um dano ocasionado pelo jogador. Segue o meu código de stomper, no caso de você não ter entendido.

 

Código de Stomper: http://hastebin.com/giganejubu.avrasm

 

 

Faça bom uso. Espero ter ajudado dessa vez.  ><

Esta Parte

 

 

if (KitAPI.getKit(p) == "Stomper"

è pra verificar se o player selecionou o kit stomper né ?

Link para o comentário
Compartilhar em outros sites

Bom, vou tentar explicar de um jeito mais "simples". Talvez você entenda.

 

 

O dano que os jogadores que foram stompados estão recebendo no seu código é um dano de queda. Por isso, o servidor interpreta como uma morte por dano de queda. Caso você queira que o dano seja um dano dado pelo stomper, você deveria colocar que o dano que os jogadores stompados recebem é um dano ocasionado pelo jogador. Segue o meu código de stomper, no caso de você não ter entendido.

 

Código de Stomper: http://hastebin.com/giganejubu.avrasm

 

 

Faça bom uso. Espero ter ajudado dessa vez.  ><

Ultima Dúvida Como Faço pra Fazer Isto Tambem com poções ?

 

tipo eu mato um jogador com poções ai aparece que ele foi morto por Magia

Link para o comentário
Compartilhar em outros sites

O mesmo procedimento. Você deve cancelar o dano da poção e substituí-lo por um dano dado pelo jogador que lançou a poção. Tenho um código aqui mas não vou postar pois você deve aprender sozinho.  :salve: 

Link para o comentário
Compartilhar em outros sites

O mesmo procedimento. Você deve cancelar o dano da poção e substituí-lo por um dano dado pelo jogador que lançou a poção. Tenho um código aqui mas não vou postar pois você deve aprender sozinho.  :salve: 

Vo tentar ahsuahusha

 

Pode me mostrar no código do stomper onde esta cancelando o dano ?

 

vc tem algum canal no Youtube de tutoriais ?

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

É só tu checar a causa da morte do jogador.

 

Usa o player.getLastDamageCause().getCause()

Mas se um player matar só de poções Sem Hit

 

Ai Vai aparecer que ele foi morto por magia 

Link para o comentário
Compartilhar em outros sites

Então cara... usa isso no PlayerDeathEvent

Mano Pera Buguei Aqui

 

Tipo o 

player.getLastDamageCause().getCause()

Vai pegar o Ultimo Dano e se for por poção n vai contar kill ;-;

 

 

Link para o comentário
Compartilhar em outros sites

tu quer mandar uma mensagem? 

 

tipo 

 

¨Player¨ Morreru por "Magia"??

já tem um plugin que quando o player mata o outro Aparece a mensagem " Jogador matou alvo "

 

só que quando o jogador mata o Alvo com poção

 

aparece " Alvo foi morto por magia "

Link para o comentário
Compartilhar em outros sites

já tem um plugin que quando o player mata o outro Aparece a mensagem " Jogador matou alvo "

 

só que quando o jogador mata o Alvo com poção

 

aparece " Alvo foi morto por magia "

 

É só tu modificar a mensagem.

 

Faz assim, quando ele morrer tu usa aquilo pra ver se ele morreu por poção, ai tu seta a mensagem pra "jogador matou alvo"

 

https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/entity/PlayerDeathEvent.html#setDeathMessage(java.lang.String)

Link para o comentário
Compartilhar em outros sites

É só tu modificar a mensagem.

 

Faz assim, quando ele morrer tu usa aquilo pra ver se ele morreu por poção, ai tu seta a mensagem pra "jogador matou alvo"

 

https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/entity/PlayerDeathEvent.html#setDeathMessage(java.lang.String)

Ai não vai contar Kill no Scoreboard 

Link para o comentário
Compartilhar em outros sites

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