Olá.
Hoje estou liberando uma API para fazer suas partículas personalizadas!
Código: https://pastebin.com/jDnAb7Zt
Criador da API: Krash0 is Alive
Tópico sobre o assunto: http://gamersboard.com.br/topic/43576-class-como-criar-part%C3%ADcula-em-volta-do-jogador/
class ParticleEffect_ { private Player player; private Particle particle; private float radius = 2; private float angle = 0; private float pos_y = 1; private BukkitTask bukkitTask; ParticleEffect_(Player player, Particle particle, float radius){ this.player = player; this.particle = particle; this.radius = radius; startRunnable(); } void startRunnable() { bukkitTask = new BukkitRunnable() { @Override public void run() { angle += 0.5f; double x = radius * Math.cos(angle); double z = radius * Math.sin(angle); random_y(1.9f, 0); Location particleLocationOne = player.getLocation().clone().add(x, pos_y, z); Location particleLocationTwo = player.getLocation().clone().add(0, 2, 0).subtract(x, pos_y, z); particleLocationOne.getWorld().spawnParticle(particle, particleLocationOne, 0); particleLocationTwo.getWorld().spawnParticle(particle, particleLocationTwo, 0); } }.runTaskTimerAsynchronously(kMMORPG.getInstance(), 20L, 20L); } public void cancel() { bukkitTask.cancel(); } private void random_y(float max, float min) { pos_y += Math.random()*0.5-0.25; if(pos_y > max) { pos_y = max; } else if(pos_y < min) { pos_y = min; } } }