package ludumdare.game;

import java.awt.Graphics2D;
import java.util.ArrayList;

import org.crusty.math.Vec2double;

public class ParticleManager {

	static ArrayList<Particle> particles = new ArrayList<Particle>();
	
	public ParticleManager() {
		
	}
	
	public void update(double dt) {
		for (int i = 0; i < particles.size(); i++) {
			particles.get(i).logic(dt);
			if (particles.get(i).alpha == 0)
				particles.remove(particles.get(i));
		}
	}
	
	public void draw(Graphics2D g) {
		for (int i = 0; i < particles.size(); i++) {
			particles.get(i).draw(g);
		}
	}
	
	public static void addParticle(int num, Sprite sprite, Vec2double pos, String type) {
		addParticle(num, sprite, pos, type, null);
	}
	
	public static void addParticle(int num, Sprite sprite, Vec2double pos, String type, Vec2double dir) {
		for (int i = 0; i < num; i++) {
			Particle p = new Particle(sprite, pos, type, dir);
			particles.add(p);
		}
	}
	
}
