Index: branches/proxy/src/world_entities/space_ships/turbine_hover.cc
===================================================================
--- branches/proxy/src/world_entities/space_ships/turbine_hover.cc	(revision 9408)
+++ branches/proxy/src/world_entities/space_ships/turbine_hover.cc	(revision 9456)
@@ -126,5 +126,6 @@
   this->cameraNode.addNodeFlags(PNODE_PROHIBIT_CHILD_DELETE);
   //this->cameraNode.setParentMode(PNODE_ROTATE_MOVEMENT);
-  //this->cameraNode.setParent(this);
+  this->cameraNode.setParent(this);
+  this->cameraNode.setRelCoor(0,5,0);
 
   // rotors
@@ -211,5 +212,5 @@
   this->getWeaponManager().getFixedTarget()->setParent(&this->cameraNode);
   this->getWeaponManager().getFixedTarget()->setRelCoor(1000,0,0);
-  
+
   registerVar( new SynchronizeableBool( &bForward, &bForward, "bForward", PERMISSION_OWNER ) );
   registerVar( new SynchronizeableBool( &bBackward, &bBackward, "bBackward", PERMISSION_OWNER ) );
@@ -218,5 +219,5 @@
   registerVar( new SynchronizeableBool( &bAscend, &bAscend, "bAscend", PERMISSION_OWNER ) );
   registerVar( new SynchronizeableBool( &bDescend, &bDescend, "bDescend", PERMISSION_OWNER ) );
-  //registerVar( new SynchronizeableQuaternion( &direction, &direction, "direction", PERMISSION_OWNER ) );
+  registerVar( new SynchronizeableQuaternion( &direction, &direction, "direction", PERMISSION_OWNER ) );
   registerVar( new SynchronizeableFloat( &cameraLook, &cameraLook, "cameraLook", PERMISSION_OWNER ) );
   registerVar( new SynchronizeableFloat( &rotation, &rotation, "rotation", PERMISSION_OWNER ) );
@@ -298,7 +299,10 @@
 
   // TRYING TO FIX PNode.
-  this->cameraNode.setAbsCoorSoft(this->getAbsCoor() + Vector(0.0f, 5.0f, 0.0f), 30.0f);
-  this->cameraNode.setRelDirSoft(this->getAbsDir(), 30.0f);
-}
+  //this->cameraNode.setAbsCoor(this->getAbsCoor() + Vector(0.0f, 5.0f, 0.0f));//, 30.0f);
+  //this->cameraNode.setAbsDir(this->getAbsDir());//, 30.0f);
+}
+
+
+#include "shared_network_data.h"
 
 /**
@@ -349,5 +353,6 @@
 
         this->velocity += (accelerationDir - damping)* dt;
-        this->shiftCoor (this->velocity * dt);
+        //if (this->getOwner() != SharedNetworkData::getInstance()->getHostID())
+          this->shiftCoor (this->velocity * dt);
 
         // limit the maximum rotation speed.
@@ -362,5 +367,6 @@
         }
 
-        this->setRelDirSoft(this->direction * Quaternion(-cameraLook, Vector(0,0,1)), 5);
+        //if (this->getOwner() != SharedNetworkData::getInstance()->getHostID())
+          this->setRelDirSoft(this->direction * Quaternion(-cameraLook, Vector(0,0,1)), 5);
 
         this->wingNodeLeft.setRelDirSoft(Quaternion(accel.z * .05 +this->rotation, Vector(1,0,0)), 5);
@@ -407,24 +413,24 @@
 
     case Playable::Vertical:
-    {
-      accel.z = 0;
-      Vector accelerationDir = this->getAbsDir().apply(accel * this->acceleration);
-      accelerationDir.z=0;
+      {
+        accel.z = 0;
+        Vector accelerationDir = this->getAbsDir().apply(accel * this->acceleration);
+        accelerationDir.z=0;
 
         // this is the air friction (necessary for a smooth control)
-      Vector damping = (this->velocity * this->airFriction);
-
-      this->velocity += (accelerationDir - damping)* dt;
-      this->shiftCoor (this->velocity * dt);
-
-      this->setRelDirSoft(this->direction * Quaternion(-cameraLook, Vector(0,0,1)), 5);
-
-      this->wingNodeLeft.setRelDirSoft(Quaternion(accel.z * .05 +this->rotation, Vector(1,0,0)), 5);
-      this->rotorNodeLeft.setRelDirSoft(Quaternion(-accel.x * .07+this->rotation + cameraLook, Vector(0,0,1)), 5);
-
-      this->wingNodeRight.setRelDirSoft(Quaternion(accel.z * .05 +this->rotation, Vector(1,0,0)), 5);
-      this->rotorNodeRight.setRelDirSoft(Quaternion(-accel.x*.07 -this->rotation + cameraLook, Vector(0,0,1)), 5);
-    }
-    break;
+        Vector damping = (this->velocity * this->airFriction);
+
+        this->velocity += (accelerationDir - damping)* dt;
+        this->shiftCoor (this->velocity * dt);
+
+        this->setRelDirSoft(this->direction * Quaternion(-cameraLook, Vector(0,0,1)), 5);
+
+        this->wingNodeLeft.setRelDirSoft(Quaternion(accel.z * .05 +this->rotation, Vector(1,0,0)), 5);
+        this->rotorNodeLeft.setRelDirSoft(Quaternion(-accel.x * .07+this->rotation + cameraLook, Vector(0,0,1)), 5);
+
+        this->wingNodeRight.setRelDirSoft(Quaternion(accel.z * .05 +this->rotation, Vector(1,0,0)), 5);
+        this->rotorNodeRight.setRelDirSoft(Quaternion(-accel.x*.07 -this->rotation + cameraLook, Vector(0,0,1)), 5);
+      }
+      break;
     default:
       PRINTF(2)("Playmode %s Not Implemented\n", Playable::playmodeToString(this->getPlaymode()).c_str());
