Ir para conteúdo
  • 0

Plugin de limpar chão


Astaroth

Pergunta

Gente, estou com um projeto de plugin de lixeira e nele queria adicionar o evento


de limpar o chão (deletar todos os itens que estão no chão em x tempo)


mas não tenho noção de por onde começar, alguém poderia me ajudar 


 


 


(Não quero o seu código para eu copiar e colar, só quero que alguém me guie) ;-;


 


(Sim, sou iniciante em java ;-)


Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

Bom, já que você quer só a logica


 


cria um Runnable > loopa todas as entidades do mundo > verifica se a entidade é um item > remove a entidade


 


Codigo se tiver em dúvida


 



new BukkitRunnable() {
@Override
public void run() {
world.getEntities().stream().filter(Item.class::isInstance).forEach(Entity::remove);
}
}.runTaskTimer(plugin, -segundos para iniciar- * 20, -segundos para repetir denovo- * 20) 

 


Link para o comentário
Compartilhar em outros sites

  • 0

 

Bom, já que você quer só a logica

 

cria um Runnable > loopa todas as entidades do mundo > verifica se a entidade é um item > remove a entidade

 

Codigo se tiver em dúvida

 

new BukkitRunnable() {
    @Override
    public void run() { 
        world.getEntities().stream().filter(Item.class::isInstance).forEach(Entity::remove);
    }
}.runTaskTimer(plugin, -segundos para iniciar- * 20, -segundos para repetir denovo- * 20) 

 

 

Podeira explicar de uma forma mais clara para mim (sou leigo ainda no assunto) ;-;

Link para o comentário
Compartilhar em outros sites

  • 0

//isso aqui dentro de uma runnable

 

//percorrendo todos os mundos

for(World world : Bukkit.getWorlds()) {

//percorrendo todas as entidades(itens, mobs, players e etc) do mundo respectivo

for(Entity entity : world.getEntities()) {

//verifico se a entidade é um Item

if(entity instanceof Item) {

//removo a entidade

entity.remove();

}

}

}

Link para o comentário
Compartilhar em outros sites

  • 0


//isso aqui dentro de uma runnable

 

//percorrendo todos os mundos

for(World world : Bukkit.getWorlds()) {

//percorrendo todas as entidades(itens, mobs, players e etc) do mundo respectivo

for(Entity entity : world.getEntities()) {

//verifico se a entidade é um Item

if(entity instanceof Item) {

//removo a entidade

entity.remove();

}

}

}

E para adicionar um certo time algo tipo de 5 em 5 minutos

Link para o comentário
Compartilhar em outros sites

  • 0

 

E para adicionar um certo time algo tipo de 5 em 5 minutos

 

"//isso dentro de uma runnable"

A runnable existe de exemplo no código do @​​​​​​​Aureom

Caso não saiba criar mesmo tendo o código para ver: 

 

https://bukkit.org/threads/repeating-tasks.134389/

https://bukkit.gamepedia.com/Scheduler_Programming

Link para o comentário
Compartilhar em outros sites

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