-void allparticles_step (float dtime);
-void allparticlespawners_step (float dtime, ClientEnvironment &env);
+/**
+ * Class doing particle as well as their spawners handling
+ */
+class ParticleManager
+{
+friend class ParticleSpawner;
+public:
+ ParticleManager(ClientEnvironment* env);
+ ~ParticleManager();
+
+ void step (float dtime);
+
+ void handleParticleEvent(ClientEvent *event,IGameDef *gamedef,
+ scene::ISceneManager* smgr, LocalPlayer *player);
+
+ void addDiggingParticles(IGameDef* gamedef, scene::ISceneManager* smgr,
+ LocalPlayer *player, v3s16 pos, const TileSpec tiles[]);