Index: code/branches/FICN/src/orxonox/Arrival.h
===================================================================
--- code/branches/FICN/src/orxonox/Arrival.h	(revision 617)
+++ code/branches/FICN/src/orxonox/Arrival.h	(revision 618)
@@ -6,5 +6,5 @@
 #define Arrical_Class
 
-#include <Ogre.h>
+// #include <Ogre.h>
 #include <OgreVector3.h>
 
@@ -21,10 +21,10 @@
 
   public:
-    Vector3 location;  // locationvector of the element
-    Vector3 speed;  // speedvector of the element
-    Vector3 acceleration;  // accelerationvector of the element
-    Vector3 target;  //target to arrive
-    int accelerationForwards;  //from steering-interface
-    int MaxSpeed;  //from steering-interface
+    Vector3 location;           //!< locationvector of the element
+    Vector3 speed;              //!< speedvector of the element
+    Vector3 acceleration;       //!< accelerationvector of the element
+    Vector3 target;             //!< target to arrive
+    int accelerationForwards;   //!< from steering-interface
+    int MaxSpeed;               //!< from steering-interface
 
 
@@ -70,5 +70,5 @@
       speed = (speed+getDirection());
       speed.normalise();
-      speed = speed*length; 
+      speed = speed*length;
       if (relativeDirectApproach > 4) {
         //accelerate
Index: code/branches/FICN/src/orxonox/Flocking.h
===================================================================
--- code/branches/FICN/src/orxonox/Flocking.h	(revision 617)
+++ code/branches/FICN/src/orxonox/Flocking.h	(revision 618)
@@ -5,5 +5,5 @@
 #define Flocking_Class
 
-#include <Ogre.h>
+// #include <Ogre.h>
 #include <OgreVector3.h>
 
@@ -19,22 +19,27 @@
 
   public:
-    Ogre::Vector3 location;  // locationvector of the element
-    Ogre::Vector3 speed;  // speedvector of the element
-    Ogre::Vector3 acceleration;  // accelerationvector of the element
-    bool movable;  // movability of the element, (false) gives the possiblity that an object can`t be moved by flocking but still gets into the calculation
-    static int const SEPERATIONDISTANCE = 300;  //detectionradius of seperation
-    static int const ALIGNMENTDISTANCE = 300;  //detectionradius of alignment
-    static int const COHESIONDISTANCE = 5000;  //detectionradius of cohesion
-    static int const ANZELEMENTS = 9;  //number of elements
+    Ogre::Vector3 location;                       //!< locationvector of the element
+    Ogre::Vector3 speed;                          //!< speedvector of the element
+    Ogre::Vector3 acceleration;                   //!< accelerationvector of the element
+    bool movable;                                 //!< movability of the element, (false) gives the possiblity that an object can`t be moved by flocking but still gets into the calculation
+    static int const SEPERATIONDISTANCE = 300;    //!< detectionradius of seperation
+    static int const ALIGNMENTDISTANCE = 300;     //!< detectionradius of alignment
+    static int const COHESIONDISTANCE = 5000;     //!< detectionradius of cohesion
+    static int const ANZELEMENTS = 9;             //!< number of elements
 
-  //default constructor
+  //! default constructor
   Element() {
-    acceleration = (0,0,0);
-    speed = (0,0,0);
-    location = (0,0,0);
+    acceleration = Ogre::Vector3(0,0,0);
+    speed = Ogre::Vector3(0,0,0);
+    location = Ogre::Vector3(0,0,0);
     movable = true;
   }
 
-  //constructor
+  /** constructor
+   *  @param location_ sets locationvector of the element
+   *  @param speed_ sets speedvector of the element
+   *  @param acceleration_ sets accelerationvector of the element
+   *  @param movable_ sets movability of the element
+   */
   Element(Ogre::Vector3 location_, Ogre::Vector3 speed_, Ogre::Vector3 acceleration_, bool movable_) {
     acceleration = acceleration_;
@@ -44,5 +49,5 @@
   }
 
-  //function to chance values of an element
+  //! function to chance values of an element
   void setValues(Ogre::Vector3 location_, Ogre::Vector3 speed_, Ogre::Vector3 acceleration_, bool movable_) {
     acceleration = acceleration_;
@@ -52,21 +57,23 @@
   }
 
-  //calculates the distance between the element and an other point given by temp
-  float getDistance(Element temp) {
-    Ogre::Vector3 distance = temp.location-location;
+  /** calculates the distance between the element and an other point given by temp
+   * @param e remote object to calculate distance to
+   */
+  float getDistance(Element e) {
+    Ogre::Vector3 distance = e.location - location;
     return distance.length();
   }
 
-  //updates the data of an element
+  //! updates the data of an element
   void update(Element arrayOfElements[]) {
     if (this->movable == true) {calculateAcceleration(arrayOfElements);} //if element is movable, calculate acceleration
   }
 
-  //calculates the new acceleration of an element
+  //! calculates the new acceleration of an element
   void calculateAcceleration(Element arrayOfElements[]) {
     acceleration = separation(arrayOfElements) + alignment(arrayOfElements) + cohesion(arrayOfElements);  //acceleration consisting of flocking-functions
   }
 
-  //separation-function (keep elements separated, avoid crashs)
+  //! separation-function (keep elements separated, avoid crashs)
   Ogre::Vector3 separation(Element arrayOfElements[]) {
     using namespace Ogre;
@@ -94,5 +101,5 @@
   }
 
-  //alignment-function (lead elements to the same heading)
+  //! alignment-function (lead elements to the same heading)
   Ogre::Vector3 alignment(Element arrayOfElements[]) {
     using namespace Ogre;
@@ -113,5 +120,5 @@
   }
 
-  //cohseion-function (keep elements close to each other)
+  //! cohseion-function (keep elements close to each other)
   Ogre::Vector3 cohesion(Element arrayOfElements[]) {
     using namespace Ogre;
Index: code/branches/FICN/src/orxonox/Main.cc
===================================================================
--- code/branches/FICN/src/orxonox/Main.cc	(revision 617)
+++ code/branches/FICN/src/orxonox/Main.cc	(revision 618)
Index: code/branches/FICN/src/orxonox/hud/HUD.cc
===================================================================
--- code/branches/FICN/src/orxonox/hud/HUD.cc	(revision 617)
+++ code/branches/FICN/src/orxonox/hud/HUD.cc	(revision 618)
@@ -1,5 +1,5 @@
 #include "HUD.h"
-#include <Ogre.h>
-#include <OIS/OIS.h>
+// #include <Ogre.h>
+// #include <OIS/OIS.h>
 //#include <CEGUI/CEGUI.h>
 //#include <CEGUIRenderer.h>
Index: code/branches/FICN/src/orxonox/hud/HUD.h
===================================================================
--- code/branches/FICN/src/orxonox/hud/HUD.h	(revision 617)
+++ code/branches/FICN/src/orxonox/hud/HUD.h	(revision 618)
@@ -2,8 +2,11 @@
 #define MODULE_HUD_H
 
-#include <Ogre.h>
-#include <OIS/OIS.h>
+// #include <Ogre.h>
+// #include <OIS/OIS.h>
 //#include <CEGUI/CEGUI.h>
 //#include <CEGUIRenderer.h>
+#include <OgreOverlayManager.h>
+#include <OgreOverlayElement.h>
+#include <OgreStringConverter.h>
 
 
Index: code/branches/FICN/src/orxonox/objects/Camera.cc
===================================================================
--- code/branches/FICN/src/orxonox/objects/Camera.cc	(revision 617)
+++ code/branches/FICN/src/orxonox/objects/Camera.cc	(revision 618)
@@ -30,42 +30,42 @@
     void Camera::loadParams(TiXmlElement* xmlElem)
     {
-    	Ogre::SceneManager* mgr = orxonox::Orxonox::getSingleton()->getSceneManager();
+      Ogre::SceneManager* mgr = orxonox::Orxonox::getSingleton()->getSceneManager();
 
-    	if (xmlElem->Attribute("name") && xmlElem->Attribute("pos") && xmlElem->Attribute("lookat") && xmlElem->Attribute("node"))
-    	{
-    		//		<Camera name="Camera" pos="0,0,-250" lookat="0,0,0" />
+      if (xmlElem->Attribute("name") && xmlElem->Attribute("pos") && xmlElem->Attribute("lookat") && xmlElem->Attribute("node"))
+      {
+        //    <Camera name="Camera" pos="0,0,-250" lookat="0,0,0" />
 
-    		std::string name = xmlElem->Attribute("name");
-    		std::string pos = xmlElem->Attribute("pos");
-    		std::string lookat = xmlElem->Attribute("lookat");
+        std::string name = xmlElem->Attribute("name");
+        std::string pos = xmlElem->Attribute("pos");
+        std::string lookat = xmlElem->Attribute("lookat");
 
-    		Ogre::Camera *cam = mgr->createCamera(name);
+        Ogre::Camera *cam = mgr->createCamera(name);
 
-	    	float x, y, z;
-	    	std::vector<std::string> posVec = tokenize(xmlElem->Attribute("pos"),",");
-    	 	String2Number<float>(x, posVec[0]);
-	    	String2Number<float>(y, posVec[1]);
-	    	String2Number<float>(z, posVec[2]);
+        float x, y, z;
+        std::vector<std::string> posVec = tokenize(xmlElem->Attribute("pos"),",");
+         String2Number<float>(x, posVec[0]);
+        String2Number<float>(y, posVec[1]);
+        String2Number<float>(z, posVec[2]);
 
-    		cam->setPosition(Vector3(x,y,z));
+        cam->setPosition(Vector3(x,y,z));
 
-	    	posVec = tokenize(xmlElem->Attribute("lookat"),",");
-    	 	String2Number<float>(x, posVec[0]);
-	    	String2Number<float>(y, posVec[1]);
-	    	String2Number<float>(z, posVec[2]);
+        posVec = tokenize(xmlElem->Attribute("lookat"),",");
+        String2Number<float>(x, posVec[0]);
+        String2Number<float>(y, posVec[1]);
+        String2Number<float>(z, posVec[2]);
 
-    		cam->lookAt(Vector3(x,y,z));
+        cam->lookAt(Vector3(x,y,z));
 
-    		std::string node = xmlElem->Attribute("node");
+        std::string node = xmlElem->Attribute("node");
 
-		    Ogre::SceneNode* sceneNode = (Ogre::SceneNode*)mgr->getRootSceneNode()->createChildSceneNode(node); //getChild(node);
-		    sceneNode->attachObject((Ogre::MovableObject*)cam);
+        Ogre::SceneNode* sceneNode = (Ogre::SceneNode*)mgr->getRootSceneNode()->createChildSceneNode(node); //getChild(node);
+        sceneNode->attachObject((Ogre::MovableObject*)cam);
 
 
-		    Ogre::Viewport* vp = orxonox::Orxonox::getSingleton()->getOgrePointer()->getRoot()->getAutoCreatedWindow()->addViewport(cam);
+        Ogre::Viewport* vp = orxonox::Orxonox::getSingleton()->getOgrePointer()->getRoot()->getAutoCreatedWindow()->addViewport(cam);
 
 
-	    	COUT(4) << "Loader: Created camera "<< name  << std::endl << std::endl;
-    	}
+        COUT(4) << "Loader: Created camera "<< name  << std::endl << std::endl;
+      }
    }
 }
Index: code/branches/FICN/src/orxonox/objects/SceneNode.cc
===================================================================
--- code/branches/FICN/src/orxonox/objects/SceneNode.cc	(revision 617)
+++ code/branches/FICN/src/orxonox/objects/SceneNode.cc	(revision 618)
@@ -25,21 +25,21 @@
     void SceneNode::loadParams(TiXmlElement* xmlElem)
     {
-    	if (xmlElem->Attribute("name") && xmlElem->Attribute("pos"))
-    	{
-    		name_ = xmlElem->Attribute("name");
+      if (xmlElem->Attribute("name") && xmlElem->Attribute("pos"))
+      {
+        name_ = xmlElem->Attribute("name");
 
-	    	std::vector<std::string> pos = tokenize(xmlElem->Attribute("pos"),",");
-	    	//float x, y, z_;
-    	 	String2Number<float>(x_, pos[0]);
-	    	String2Number<float>(y_, pos[1]);
-	    	String2Number<float>(z_, pos[2]);
+        std::vector<std::string> pos = tokenize(xmlElem->Attribute("pos"),",");
+        //float x, y, z_;
+         String2Number<float>(x_, pos[0]);
+        String2Number<float>(y_, pos[1]);
+        String2Number<float>(z_, pos[2]);
 
         sx_ = 1; sy_ = 1; sz_ = 1;
         if (xmlElem->Attribute("scale"))
         {
-	    	  pos = tokenize(xmlElem->Attribute("scale"),",");
-    	 	  String2Number<float>(sx_, pos[0]);
-	    	  String2Number<float>(sy_, pos[1]);
-	    	  String2Number<float>(sz_, pos[2]);
+          pos = tokenize(xmlElem->Attribute("scale"),",");
+           String2Number<float>(sx_, pos[0]);
+          String2Number<float>(sy_, pos[1]);
+          String2Number<float>(sz_, pos[2]);
         }
         yaw_ = 0.0;
@@ -67,5 +67,5 @@
 
         COUT(4) << "Loader: loaded node "<< name_ <<" : "<< x_ <<" " << y_ << " " << z_ << std::endl << std::endl;
-    	}
+      }
    }
 
Index: code/branches/FICN/src/orxonox/particle/ParticleInterface.cc
===================================================================
--- code/branches/FICN/src/orxonox/particle/ParticleInterface.cc	(revision 617)
+++ code/branches/FICN/src/orxonox/particle/ParticleInterface.cc	(revision 618)
@@ -27,5 +27,6 @@
 
 #include "ParticleInterface.h"
-#include <Ogre.h>
+// #include <OgreParticleSystem.h>
+// #include <Ogre.h>
 //#include <OIS/OIS.h>
 // #include <CEGUI/CEGUI.h>
Index: code/branches/FICN/src/orxonox/particle/ParticleInterface.h
===================================================================
--- code/branches/FICN/src/orxonox/particle/ParticleInterface.h	(revision 617)
+++ code/branches/FICN/src/orxonox/particle/ParticleInterface.h	(revision 618)
@@ -3,8 +3,11 @@
 
 // #include "ParticleInterface.h"
-#include <Ogre.h>
-#include <OIS/OIS.h>
+// #include <Ogre.h>
+// #include <OIS/OIS.h>
 // #include <CEGUI/CEGUI.h>
 // #include <CEGUIRenderer.h>
+#include <OgreParticleSystem.h>
+#include <OgreParticleEmitter.h>
+#include <OgreSceneManager.h>
 
 
