/*
 * Explosion.h
 *
 *  Created on: 05.01.2011
 *      Author: gmueller
 */

#ifndef EXPLOSION_H_
#define EXPLOSION_H_

#include "SPK.h"
#include "SPK_GL.h"

namespace gln {

class Explosion {
public:
	~Explosion();
	void initialize(GLuint textureExplosion, GLuint textureFlash,
			GLuint textureSpark, GLuint texturePoint, GLuint textureWave);
	void add(double x, double y, double z);
	void update(double dt, double cx, double cy, double cz);
	void render();
private:
	SPK::SPK_ID system_id;
	std::list<SPK::System*> particleSystems;
};

} // namespace grln

#endif /* EXPLOSION_H_ */
