Index: /code/branches/fps/data/levels/empty_level.oxw
===================================================================
--- /code/branches/fps/data/levels/empty_level.oxw	(revision 6865)
+++ /code/branches/fps/data/levels/empty_level.oxw	(revision 6866)
@@ -17,7 +17,13 @@
     skybox       = "Orxonox/Starbox"
   >
-    
+  
+  <MovableEntity position="0,0,0" rotationrate="10" >
+    <attached>
+      <Model scale="100" mesh="ast2.mesh" shadow=false />
+    </attached>
+  </MovableEntity>
+        
     <Light type=directional position="0,0,0" direction="0.253, 0.593, -0.765" diffuse="1.0, 0.9, 0.9, 1.0" specular="1.0, 0.9, 0.9, 1.0" />
-    <SpawnPoint position="0,0,100" spawnclass=SpaceShip pawndesign=spaceshipassff />
+    <SpawnPoint position="0,0,20" spawnclass=FpsPlayer pawndesign=spaceshipassff />
   </Scene>
 </Level>
Index: /code/branches/fps/src/orxonox/Scene.cc
===================================================================
--- /code/branches/fps/src/orxonox/Scene.cc	(revision 6865)
+++ /code/branches/fps/src/orxonox/Scene.cc	(revision 6866)
@@ -338,5 +338,5 @@
         SmartPtr<WorldEntity> object0 = static_cast<WorldEntity*>(colObj0->getUserPointer());
         SmartPtr<WorldEntity> object1 = static_cast<WorldEntity*>(colObj1->getUserPointer());
-
+	
         // false means that bullet will assume we didn't modify the contact
         bool modified = false;
Index: /code/branches/fps/src/orxonox/controllers/HumanController.cc
===================================================================
--- /code/branches/fps/src/orxonox/controllers/HumanController.cc	(revision 6865)
+++ /code/branches/fps/src/orxonox/controllers/HumanController.cc	(revision 6866)
@@ -41,4 +41,5 @@
 namespace orxonox
 {
+    
     SetConsoleCommand(HumanController, moveFrontBack, true).setAsInputCommand();
     SetConsoleCommand(HumanController, moveRightLeft, true).setAsInputCommand();
Index: /code/branches/fps/src/orxonox/controllers/NewHumanController.cc
===================================================================
--- /code/branches/fps/src/orxonox/controllers/NewHumanController.cc	(revision 6865)
+++ /code/branches/fps/src/orxonox/controllers/NewHumanController.cc	(revision 6866)
@@ -210,5 +210,5 @@
                 if (!controlPaused_ )
                 {
-                    if (this->getControllableEntity() && (this->getControllableEntity()->isExactlyA(ClassByString("SpaceShip")) || this->getControllableEntity()->isExactlyA(ClassByString("Rocket"))))
+                    if (this->getControllableEntity() && (this->getControllableEntity()->isExactlyA(ClassByString("SpaceShip")) || this->getControllableEntity()->isExactlyA(ClassByString("Rocket")) || this->getControllableEntity()->isExactlyA(ClassByString("FpsPlayer"))))
                         this->showOverlays();
 
@@ -425,5 +425,6 @@
             HumanController::yaw(value);
 
-        this->currentYaw_ = value.x;
+        if (this->getControllableEntity() && !this->getControllableEntity()->isExactlyA(ClassByString("FpsPlayer")))
+            this->currentYaw_ = value.x;
     }
 
@@ -434,5 +435,6 @@
             HumanController::pitch(value);
 
-        this->currentPitch_ = value.x;
+        if (this->getControllableEntity() && !this->getControllableEntity()->isExactlyA(ClassByString("FpsPlayer")))
+            this->currentPitch_ = value.x;
     }
 
Index: /code/branches/fps/src/orxonox/worldentities/CameraPosition.cc
===================================================================
--- /code/branches/fps/src/orxonox/worldentities/CameraPosition.cc	(revision 6865)
+++ /code/branches/fps/src/orxonox/worldentities/CameraPosition.cc	(revision 6866)
@@ -65,8 +65,8 @@
     void CameraPosition::attachCamera(Camera* camera)
     {
-        if (!this->bDrag_)
+        
+        this->attach(camera);
+		  if (!this->bDrag_)
             camera->setDrag(false);
-
-        this->attach(camera);
 
         if (this->bDrag_)
Index: /code/branches/fps/src/orxonox/worldentities/ControllableEntity.h
===================================================================
--- /code/branches/fps/src/orxonox/worldentities/ControllableEntity.h	(revision 6865)
+++ /code/branches/fps/src/orxonox/worldentities/ControllableEntity.h	(revision 6866)
@@ -161,4 +161,6 @@
             inline void setHudTemplate(const std::string& name)
                 { this->hudtemplate_ = name; }
+
+            Ogre::SceneNode* cameraPositionRootNode_;
 
         private:
@@ -208,5 +210,4 @@
             bool bMouseLook_;
             float mouseLookSpeed_;
-            Ogre::SceneNode* cameraPositionRootNode_;
             std::list<SmartPtr<CameraPosition> > cameraPositions_;
             CameraPosition* currentCameraPosition_;
Index: /code/branches/fps/src/orxonox/worldentities/pawns/CMakeLists.txt
===================================================================
--- /code/branches/fps/src/orxonox/worldentities/pawns/CMakeLists.txt	(revision 6865)
+++ /code/branches/fps/src/orxonox/worldentities/pawns/CMakeLists.txt	(revision 6866)
@@ -1,3 +1,4 @@
 ADD_SOURCE_FILES(ORXONOX_SRC_FILES
+  FpsPlayer.cc
   Spectator.cc
   Pawn.cc
