Ir para conteúdo
  • 0

NoDrop


yurirp4

Pergunta

galera eu tentei  usa o 

	public void signClick(BlockBreakEvent e) {
if (e.getBlock().getType() == Material.stone) {
            e.getBlock().getWorld().getBlockAt(e.getBlock().getLocation()).setType(Material.AIR);

Mais todos bloco que eu quebro n dropa e so queroque nao drope o bloco que eu coloquei(Lembrando e no evento BlockBreakEvent )

 

 

Quem Puder Me ajudar  eu agradeço 

Link para o comentário
Compartilhar em outros sites

26 respostass a esta questão

Posts Recomendados

Brother assim é a forma correta.

 

      @EventHandler(priority = EventPriority.HIGH)

    public void Quebrar(BlockBreakEvent event)
    {
        if(event.getBlock().equals(Material.SEUMATERIALAQUI)
        {
            event.getBlock().getDrops().clear();
            event.getPlayer().sendMessage("SUA MENSAGEM AQUI");
        }
    }
 
}
 
 
Ajudei ? 
Link para o comentário
Compartilhar em outros sites

  Em 07/09/2017 em 20:37, KACEY disse:

Material.STONE

Colocou @EventHandler?

 

registrou o evento?

ss , ss mais mesmo assim todos bloco que eu quebro n dropa 

 

  Em 07/09/2017 em 20:36, leonardosc disse:

É Material.STONE, não Material.stone.

isso coloquei agora n eu corrigi mais mesmo assim buga 

Link para o comentário
Compartilhar em outros sites

  Em 07/09/2017 em 22:04, leonardosc disse:

Coloca o código completo aqui, por favor.

@EventHandler
	public void signClick(BlockBreakEvent e) {
if (e.getBlock().getType() == Material.STONE) 
        {
            e.getBlock().getWorld().getBlockAt(e.getBlock().getLocation()).setType(Material.AIR);
        }
	}
Link para o comentário
Compartilhar em outros sites

n entendi nada o que vc quer mas acho que é isso, vc n quer dropar o item de alguns blocos correto?

	@EventHandler
	public void nodrop(BlockBreakEvent e) {
		if (e.getBlock().getType() == Material.STONE) {
			e.getBlock().getDrops().clear();
		}
	}
	
Link para o comentário
Compartilhar em outros sites

@EventHandler

private void onBreak(BlockBreakEvent e) {

if (e.getBlock().getType() == Material.STONE) {

e.getBlock().setType(Material.AIR);

e.getBlock().getDrops().clear();

}

}

//Não esqueça de registrar o evento no onEnable e implementar a interface Listener.

Link para o comentário
Compartilhar em outros sites

  Em 08/09/2017 em 21:25, TequilAxBr disse:
	@EventHandler
	private void onBreak(BlockBreakEvent e) {
		if (e.getBlock().getType() == Material.STONE) {
			e.getBlock().setType(Material.AIR);
			e.getBlock().getDrops().clear();
		}
	}
	//Não esqueça de registrar o evento no onEnable e implementar a interface Listener.

olha fiz assim mais n funfo pqp ? http://prntscr.com/giug74

Link para o comentário
Compartilhar em outros sites

  Em 08/09/2017 em 23:07, yurirp4 disse:

olha fiz assim mais n funfo pqp ? http://prntscr.com/giug74

Esclareça, o que você quer de fato?...

Isso ai, irá limpar os drops do bloco quebrado(caso o bloco seja um dos que esteja no if) e também irá remover o bloco.

Link para o comentário
Compartilhar em outros sites

  Em 08/09/2017 em 23:51, TequilAxBr disse:

Esclareça, o que você quer de fato?...

Isso ai, irá limpar os drops do bloco quebrado(caso o bloco seja um dos que esteja no if) e também irá remover o bloco.

 

quero que  ao querbrar o bloco dos minerios o drop limpe

  Em 09/09/2017 em 00:13, N0CRYB4BY disse:

 

 
		@EventHandler
		public void nodrop(BlockBreakEvent e) {
			if (e.getBlock().getType() == Material.STONE) {
				e.getBlock().setType(Material.AIR);

 

isso ai da pra fazer com varios minerios ? 

Link para o comentário
Compartilhar em outros sites

  Em 18/09/2017 em 22:51, Jheyson disse:
@EventHandler
public void quandoquebrar(BlockBreakEvent event) {
if (event.getBlock().getType() == Material.STONE) {
event.setCancelled(true);
event.getBlock().setTypeId(0);
}
}

mandei pv , fail

Link para o comentário
Compartilhar em outros sites

  Em 24/09/2017 em 21:17, SaimonBr disse:

Você que que tipo ele drope o item aí tipo dps de 2 segundos ele limpa e mais ou menos isso ? Ou vc quer q limpe direto ?

não tipo ao quebrar o bloco vai cancelar o drop dos blocos eu to fazendo com varios blocos ja to falando pra vc fica lgd 

Link para o comentário
Compartilhar em outros sites

  Em 24/09/2017 em 21:31, B E E D disse:

 

Brother assim é a forma correta.

 

      @EventHandler(priority = EventPriority.HIGH)

    public void Quebrar(BlockBreakEvent event)
    {
        if(event.getBlock().equals(Material.SEUMATERIALAQUI)
        {
            event.getBlock().getDrops().clear();
            event.getPlayer().sendMessage("SUA MENSAGEM AQUI");
        }
    }
 
}
 
 
Ajudei ? 

 

vou testa aqui mais me fala para eu colocar varios materias e so fazer assim ?     if(event.getBlock().equals(Material.SEUMATERIALAQUI || event.getBlock().equals(Material.SEUMATERIALAQUI )

        {
            event.getBlock().getDrops().clear();
            event.getPlayer().sendMessage("SUA MENSAGEM AQUI");
        }
    }
 
}
assim ? 
Link para o comentário
Compartilhar em outros sites

  Em 24/09/2017 em 21:42, yurirp4 disse:

 

vou testa aqui mais me fala para eu colocar varios materias e so fazer assim ?     if(event.getBlock().equals(Material.SEUMATERIALAQUI || event.getBlock().equals(Material.SEUMATERIALAQUI )

        {

            event.getBlock().getDrops().clear();

            event.getPlayer().sendMessage("SUA MENSAGEM AQUI");

        }

    }

 

}

assim ? 

 

 

Não tenho 100% de certeza mais if significa  então na teoria deve funcionar perfeitamente, caso não funcionar fale aqui que vou tentar auxilio de melhor forma possível.

 

Ou Assim tmb 

 

      @EventHandler(priority = EventPriority.HIGH)

    public void Quebrar(BlockBreakEvent event)

    {

        if(event.getBlock().equals(Material.SEUMATERIALAQUI)

 if(event.getBlock().equals(Material.SEUMATERIALAQUI)

 if(event.getBlock().equals(Material.SEUMATERIALAQUI)

 if(event.getBlock().equals(Material.SEUMATERIALAQUI)

        {

            event.getBlock().getDrops().clear();

            event.getPlayer().sendMessage("SUA MENSAGEM AQUI");

        }

    }

 

Mais é melhor tipo criar varios eventos, como nomes diferentes

 

}

 

Editado por B E E D
Link para o comentário
Compartilhar em outros sites

  Em 24/09/2017 em 21:47, B E E D disse:

 

Não tenho 100% de certeza mais if significa  então na teoria deve funcionar perfeitamente, caso não funcionar fale aqui que vou tentar auxilio de melhor forma possível.

 

Ou Assim tmb 

 

      @EventHandler(priority = EventPriority.HIGH)

    public void Quebrar(BlockBreakEvent event)
    {
        if(event.getBlock().equals(Material.SEUMATERIALAQUI)
 if(event.getBlock().equals(Material.SEUMATERIALAQUI)
 if(event.getBlock().equals(Material.SEUMATERIALAQUI)
 if(event.getBlock().equals(Material.SEUMATERIALAQUI)
        {
            event.getBlock().getDrops().clear();
            event.getPlayer().sendMessage("SUA MENSAGEM AQUI");
        }
    }
 
Mais é melhor tipo criar varios eventos, como nomes diferentes
 
}

 

olha n sei sifiz ago de errado http://prntscr.com/gp8b8lmais n funfo os minerios continuam dropando 

Link para o comentário
Compartilhar em outros sites

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