Index: branches/spaceshipcontrol/src/world_entities/space_ships/hover.cc
===================================================================
--- branches/spaceshipcontrol/src/world_entities/space_ships/hover.cc	(revision 6584)
+++ branches/spaceshipcontrol/src/world_entities/space_ships/hover.cc	(revision 6605)
@@ -118,11 +118,6 @@
   xMouse = yMouse = 0;
   mouseSensitivity = 0.05;
-  //rotorspeed = 1;
-  //tailrotorspeed = 0;
-
-  //cycle = 0.0;
-
-
-  //travelSpeed = 15.0;
+
+
   this->velocity = Vector(0.0,0.0,0.0);
   this->velocityDir = Vector(1.0,0.0,0.0);
@@ -138,5 +133,4 @@
   registerEvent(KeyMapper::PEV_LEFT);
   registerEvent(KeyMapper::PEV_RIGHT);
-  //registerEvent(SDLK_q);
   registerEvent(SDLK_e);
   registerEvent(SDLK_c);
@@ -144,6 +138,4 @@
   registerEvent(KeyMapper::PEV_NEXT_WEAPON);
   registerEvent(KeyMapper::PEV_PREVIOUS_WEAPON);
-  //registerEvent(SDLK_PAGEUP);
-  //registerEvent(SDLK_PAGEDOWN);
   registerEvent(EV_MOUSE_MOTION);
 
@@ -249,13 +241,27 @@
 void Hover::tick (float time)
 {
-  /*
-  tailrotorspeed += xMouse/20;
-  if (tailrotorspeed >= 0.07) tailrotorspeed = 0.07;
-  else if (tailrotorspeed <= -0.07) tailrotorspeed = -0.07;
-
-  if (tailrotorspeed > 0.0008) tailrotorspeed -= 0.001;
-  else if (tailrotorspeed < -0.0008) tailrotorspeed += 0.001;
-  if (tailrotorspeed <= 0.001 && tailrotorspeed >= -0.001) tailrotorspeed = 0;
-  */
+  
+  
+  Quaternion xDir = Quaternion(-M_PI/4*xMouse*mouseSensitivity, Vector(0,1,0));
+  Quaternion yDir = Quaternion(-M_PI/4*yMouse*mouseSensitivity, Vector(0,0,1));
+    
+  if ((this->getAbsDirY()).y < 0.8)
+  {
+     if((this->getAbsDirX()).y > 0)
+     {
+        if(yMouse > 0)  this->shiftDir(xDir*yDir);
+        else this->shiftDir(xDir);
+     }
+     else
+     {
+         if(yMouse < 0) this->shiftDir(xDir*yDir);
+         else this->shiftDir(xDir);
+     }
+  }
+  else this->shiftDir(xDir*yDir);
+  
+  if((this->getAbsDirZ()).y > 0.1) this->shiftDir(Quaternion(0.01,Vector(1,0,0)));
+  else if((this->getAbsDirZ()).y < -0.1) this->shiftDir(Quaternion(-0.01,Vector(1,0,0)));
+
   
   // spaceship controlled movement
@@ -266,18 +272,4 @@
   // this is the air friction (necessary for a smooth control)
   if(velocity.len() != 0) velocity -= velocity*0.1;
-  
-  //travelSpeed = velocity.len();
-
-  //physics: Gravity
-  /*this->shiftCoor(Vector(0,-1,0));
-
-  this->shiftCoor(getAbsDirY()*rotorspeed);
-  */
-  
-  /*
-  //hoover effect
-  cycle += time;
-  this->shiftCoor(Vector(0,1,0)*cos(this->cycle*2.0)*0.02);
-  */
 
   //readjust
@@ -313,9 +305,5 @@
      
      accel += Vector((this->getAbsDirX()).x,0,(this->getAbsDirX()).z);
-     if((this->getAbsDirX()).y >= -0.1) rotValZ -= time;
-   }
-   else
-   {
-       if(this->getAbsDirX().y < -.02) this->shiftDir(Quaternion(time, Vector(0,0,1)));
+     //if((this->getAbsDirX()).y >= -0.1) rotValZ -= time;
    }
 
@@ -326,9 +314,5 @@
      
      accel -= Vector((this->getAbsDirX()).x,0,(this->getAbsDirX()).z);
-     rotValZ += time;
-   }
-   else
-   {
-         if(this->getAbsDirX().y > 0.02) this->shiftDir(Quaternion(-time, Vector(0,0,1)));
+     //rotValZ += time;
    }
 
@@ -340,10 +324,6 @@
     
     accel -= Vector((this->getAbsDirZ()).x,0,(this->getAbsDirZ()).z);
-    rotValX -= time;
-  }
-  else
-   {
-         if(this->getAbsDirZ().y > 0.02) this->shiftDir(Quaternion(time, Vector(1,0,0)));
-   }
+    //rotValX -= time;
+  }
 
   if( this->bRight /* > this->getRelCoor().z*2*/)
@@ -354,10 +334,6 @@
     
     accel += Vector((this->getAbsDirZ()).x,0,(this->getAbsDirZ()).z);
-    rotValX += time;
-  }
-  else
-   {
-         if(this->getAbsDirZ().y < -0.02) this->shiftDir(Quaternion(-time, Vector(1,0,0)));
-   }
+    //rotValX += time;
+  }
 
   if( this->bRollL /* > -this->getRelCoor().z*2*/)
@@ -410,7 +386,7 @@
   }
 
-  velocity += accel*3;
-  if((this->getAbsDirX()).y <= 0.3 && (this->getAbsDirX()).y >= -0.3) this->shiftDir(Quaternion(rotValZ, Vector(0,0,1)));
-  if((this->getAbsDirZ()).y <= 0.3 && (this->getAbsDirZ()).y >= -0.3) this->shiftDir(Quaternion(rotValX, Vector(1,0,0)));
+  velocity += accel*4;
+  //if((this->getAbsDirX()).y <= 0.3 && (this->getAbsDirX()).y >= -0.3) this->shiftDir(Quaternion(rotValZ, Vector(0,0,1)));
+  //if((this->getAbsDirZ()).y <= 0.3 && (this->getAbsDirZ()).y >= -0.3) this->shiftDir(Quaternion(rotValX, Vector(1,0,0)));
 }
 
@@ -464,6 +440,4 @@
     this->xMouse = event.xRel*mouseSensitivity;
     this->yMouse = event.yRel*mouseSensitivity;
-
-    this->shiftDir(Quaternion(-M_PI/4*xMouse*mouseSensitivity, Vector(0,1,0))/*Quaternion(-M_PI/4*yMouse*mouseSensitivity, Vector(0,0,1))*/);
   }
 }
Index: branches/spaceshipcontrol/src/world_entities/space_ships/hover.h
===================================================================
--- branches/spaceshipcontrol/src/world_entities/space_ships/hover.h	(revision 6584)
+++ branches/spaceshipcontrol/src/world_entities/space_ships/hover.h	(revision 6605)
@@ -58,5 +58,4 @@
     float                 yMouse;             //!< mouse moved in y-Direction
     float                 mouseSensitivity;   //!< the mouse sensitivity
-    //float                 cycle;              //!< hovercycle
 
     Vector                velocity;           //!< the velocity of the player.
@@ -64,7 +63,5 @@
     float                 travelSpeed;        //!< the current speed of the player (to make soft movement)
     float                 acceleration;       //!< the acceleration of the player.
-    //float                 rotorspeed;         //!< the speed of the rotor.
-    //float                 tailrotorspeed;     //!< the relativ speed ot the tail rotor
-
+    
     float                 airViscosity;
 
