Index: trunk/src/lib/lang/base_object.cc
===================================================================
--- trunk/src/lib/lang/base_object.cc	(revision 5446)
+++ trunk/src/lib/lang/base_object.cc	(revision 5447)
@@ -52,5 +52,6 @@
   //  delete []this->className;
   if (this->objectName)
-    delete[] this->objectName;}
+    delete[] this->objectName;
+}
 
 /**
Index: trunk/src/lib/particles/particle_engine.cc
===================================================================
--- trunk/src/lib/particles/particle_engine.cc	(revision 5446)
+++ trunk/src/lib/particles/particle_engine.cc	(revision 5447)
@@ -18,6 +18,5 @@
 #include "particle_engine.h"
 
-#include "particle_system.h"
-#include "particle_emitter.h"
+#include "class_list.h"
 
 #include "list.h"
@@ -120,5 +119,4 @@
 }
 
-#include "class_list.h"
 /**
 * @brief Connects a ParticleSystem to a ParticleSystem thus emitting Particles.
@@ -216,4 +214,17 @@
 }
 
+
+/**
+ *  removes a Connection between an Emitter and a System
+ * @param connection the connection to remove
+ *
+ * \see bool ParticleEngine::breakConnection(ParticleEmitter* emitter, ParticleSystem* system)
+ */
+bool ParticleEngine::breakConnection(ParticleConnection* connection)
+{
+  this->connectionList->remove(connection);
+  return true;
+}
+
 /**
  *  removes a Connection between an Emitter and a System
@@ -221,6 +232,6 @@
  * @param system The system of the connection to remove
  * @returns true, if the connection was broken, false if the conntection was not found
-
-   only if both system and emitter are in the connection the Connection will be broken
+ *
+ * only if both system and emitter are in the connection the Connection will be broken
 */
 bool ParticleEngine::breakConnection(ParticleEmitter* emitter, ParticleSystem* system)
@@ -245,14 +256,50 @@
 /**
  *  removes a Connection between an Emitter and a System
- * @param connection the connection to remove
-
-   \see bool ParticleEngine::breakConnection(ParticleEmitter* emitter, ParticleSystem* system)
-*/
-bool ParticleEngine::breakConnection(ParticleConnection* connection)
-{
-  this->connectionList->remove(connection);
-  return true;
-}
-
+ * @param emitter The emitter of the connections to remove
+ * @returns the count of connections that were broken, 0 if no conntection was not found
+ */
+unsigned int ParticleEngine::breakConnections(ParticleEmitter* emitter)
+{
+  unsigned int retVal = 0;
+  // look, if we have already added this connection
+  tIterator<ParticleConnection>* tmpConIt = connectionList->getIterator();
+  ParticleConnection* tmpConnection = tmpConIt->firstElement();
+  while(tmpConnection)
+  {
+    if (tmpConnection->emitter == emitter)
+    {
+      this->breakConnection(tmpConnection);
+      retVal++;
+    }
+    tmpConnection = tmpConIt->nextElement();
+  }
+  delete tmpConIt;
+  return retVal;
+}
+
+
+/**
+ *  removes a Connection between an Emitter and a System
+ * @param system The system of the connections to remove
+ * @returns the count of connections that were broken, 0 if no conntection was not found
+ */
+unsigned int ParticleEngine::breakConnections(ParticleSystem* system)
+{
+  unsigned int retVal = 0;
+  // look, if we have already added this connection
+  tIterator<ParticleConnection>* tmpConIt = connectionList->getIterator();
+  ParticleConnection* tmpConnection = tmpConIt->firstElement();
+  while(tmpConnection)
+  {
+    if (tmpConnection->system == system)
+    {
+      this->breakConnection(tmpConnection);
+      retVal++;
+    }
+    tmpConnection = tmpConIt->nextElement();
+  }
+  delete tmpConIt;
+  return retVal;
+}
 
 /**
@@ -406,2 +453,3 @@
 
 }
+
Index: trunk/src/lib/particles/particle_engine.h
===================================================================
--- trunk/src/lib/particles/particle_engine.h	(revision 5446)
+++ trunk/src/lib/particles/particle_engine.h	(revision 5447)
@@ -50,6 +50,8 @@
   bool removeSystem(ParticleSystem* system);
   bool removeEmitter(ParticleEmitter* emitter);
+  bool breakConnection(ParticleConnection* connection);
   bool breakConnection(ParticleEmitter* emitter, ParticleSystem* system);
-  bool breakConnection(ParticleConnection* connection);
+  unsigned int breakConnections(ParticleEmitter* emitter);
+  unsigned int breakConnections(ParticleSystem* system);
 
    ParticleSystem* getSystemByNumber(unsigned int number) const;
