Ir para conteúdo
  • 0

[Resolvido] [Dúvida] Erro.


Guest » MickCraft » xKizame »

Pergunta

Guest » MickCraft » xKizame »

Porque a mensagem está aparecendo quando o jogador joga a vara mesmo sem ter pescado nada.

	@EventHandler
    public void onPlayerFishing(PlayerFishEvent e){
    	e.getHook().setBiteChance(0.07D);
		Player p = e.getPlayer();
	      p.sendMessage("§3[MickCraft] §bVocê pescou um item =)");
	}

Eu criei achando que a mensagem so iria aparecer quando um jogador(a) pesca um item que tem certa quantidade de chance pra vim.

Link para o comentário
Compartilhar em outros sites

16 respostass a esta questão

Posts Recomendados

Esse evento é chamado quando o jogador joga a vara.

 

Use isso.

	@EventHandler
	public void onPlayerFishing(PlayerFishEvent e)
	{
		e.getHook().setBiteChance(0.07D);
		
		if (e.getCaught() != null)
		{
			Player p = e.getPlayer();
			p.sendMessage("§3[MickCraft] §bVocê pescou um item =)");
		}
	}

pseudocódigo

 

se evento.getItemPescado nao é igual a nulo

     envie a msg pro player

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

	@EventHandler
	public void onPlayerFishing(PlayerFishEvent e)
	{
		e.getHook().setBiteChance(0.1D);
		
		if (e.getCaught() != null && e.getCaught().getType() == EntityType.DROPPED_ITEM)
		{
			Player p = e.getPlayer();
			p.sendMessage("§3[MickCraft] §bVocê pescou um item =)");
		}
	}

DIhmKZD.png

 

 Existe um enum para isso, 100% mais facil, e se o player jogar a vara em algum mob e pegar nele, a mensagem irá ser enviada, pois o e.getCaught() é um entity

Simples

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

Guest » MickCraft » xKizame »
@EventHandler
public void onPlayerFishing(PlayerFishEvent e){
e.getHook().setBiteChance(0.09D);
Player p = e.getPlayer();
if(e.getState() == State.CAUGHT_FISH){
p.sendMessage("§3[MickCraft] §bVocê pescou um item raro =)");
e.setCancelled(true); 
//da o item pro cara ak, se vira pra o item vir q nem peixe
Bukkit.broadcastMessage("tiozin "+p.getName()+" pego um item raro");
}
 }

//Não fiz com IDE, ve se errei em alguma coisa

 

O id e o nome do item tipo "§6§lGAIOLA BETA"

Link para o comentário
Compartilhar em outros sites

Guest » MickCraft » xKizame »

Mano, praticamente te dei o código pronto, só adicionar o item no inv do player, se não sabe fazer isso recomendo a ti a estudar um pouco mais a API do bukkit

Kkkkkk sou iniciante, ainda tou no começo da quele tutorial de java IXV

Link para o comentário
Compartilhar em outros sites

 

Mano, praticamente te dei o código pronto, só adicionar o item no inv do player, se não sabe fazer isso recomendo a ti a estudar um pouco mais a API do bukkit

E leonardo, agora bota a vara num mob, vai dar a mensagem (pelo menos na minha build da)

Ja arrumei isso parca

 

 

 

Kkkkkk sou iniciante, ainda tou no começo da quele tutorial de java IXV

O que você quer exatamente?

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

Guest » MickCraft » xKizame »

wtf

Eu tinha falado com ele por MP pedindo que adicione algumas coisas no código, mais ele adicionou 2 :c

 

Assim.

Vim algumas coisas na pescaria.

 

- Um mobspawn com 7% de chance.

- Anúncia uma mensagem no global "[TESTE] &aplayer pescou um item raro =)"

- Aparecer uma mensagem no chat do player quando pesca o item "[TESTE] &bVocê pescou um item raro"

- O jogador receber 10k quando pesca o item.

- No mobspawn pescado vim o mobspawn com o nome "&6&lGaiola beta"

Editado por » MickCraft » xKizame »
Link para o comentário
Compartilhar em outros sites

Guest » MickCraft » xKizame »

Vo faze, quero melhor resposta e.e, só falta 1 pra entra no top (eu acho)

Relaxa, te ajudo igual fiz com o cookie, ele chego em primeiro ushgushsuhsu :p

Link para o comentário
Compartilhar em outros sites

Relaxa, te ajudo igual fiz com o cookie, ele chego em primeiro ushgushsuhsu :p

	@EventHandler
	public void onPlayerFishing(PlayerFishEvent e)
	{
		e.getHook().setBiteChance(0.07D);
		
		if (e.getState() == State.CAUGHT_FISH)
		{
			Player p = e.getPlayer();
			String playerName = e.getPlayer().getName();
			
			ItemStack spawner = new ItemStack(Material.MOB_SPAWNER);
			ItemMeta spawnerMeta = spawner.getItemMeta();
			spawnerMeta.setDisplayName("§6§lGAIOLA BETA");
			spawner.setItemMeta(spawnerMeta);
			p.getInventory().addItem(spawner);
			
			Bukkit.broadcastMessage("§3[MickCraft] §b" + playerName + " pescou um item raro =)");
			p.sendMessage("§3[MickCraft] §bVocê pescou um item raro =)");
			Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "money give " + playerName + " 10000");
		}
	}

Da até pra dar uns xp a mais usando o e.setExpblablabla :p

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

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