package de.slikey.effectlib.effect;

import org.bukkit.Location;
import org.bukkit.entity.Entity;

import de.slikey.effectlib.EffectManager;
import de.slikey.effectlib.EffectType;
import de.slikey.effectlib.util.ParticleEffect;
import de.slikey.effectlib.util.RandomUtils;

public class SmokeEntityEffect extends EntityEffect {

	public SmokeEntityEffect(EffectManager effectManager, Entity entity) {
		super(effectManager, entity);
		type = EffectType.REPEATING;
		period = 1;
		iterations = 300;
	}

	@Override
	public void onRun() {
		for (int i = 0; i < 20; i++) {
			Location location = entity.getLocation();
			location.add(RandomUtils.getRandomCircleVector().multiply(RandomUtils.random.nextDouble() * 0.6d));
			location.add(0, RandomUtils.random.nextFloat() * 2, 0);
			ParticleEffect.SMOKE.display(location, visibleRange);
		}
	}

}

@@ -322,16 +322,132 @@
 fect %7B%0A%0A
+    /**%0A     * ParticleType of spawned particle%0A     */%0A    public ParticleEffect particle = ParticleEffect.SMOKE;%0A%0A
 %09public 
@@ -889,31 +889,28 @@
 0);%0A
-%09%09%09ParticleEffect.SMOKE
+            particle
 .dis

Allow customization of the SmokeEntityEffect