Index: code/branches/presentation3/src/orxonox/CMakeLists.txt
===================================================================
--- code/branches/presentation3/src/orxonox/CMakeLists.txt	(revision 7152)
+++ code/branches/presentation3/src/orxonox/CMakeLists.txt	(revision 7153)
@@ -34,4 +34,5 @@
   ChatHistory.cc
   ChatInputHandler.cc
+#  Test.cc
 COMPILATION_BEGIN SceneCompilation.cc
   CameraManager.cc
Index: code/branches/presentation3/src/orxonox/Level.h
===================================================================
--- code/branches/presentation3/src/orxonox/Level.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/Level.h	(revision 7153)
@@ -48,5 +48,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             inline void setDescription(const std::string& description)
@@ -62,4 +61,5 @@
 
         private:
+            void registerVariables();
             void addObject(BaseObject* object);
             BaseObject* getObject(unsigned int index) const;
Index: code/branches/presentation3/src/orxonox/Test.h
===================================================================
--- code/branches/presentation3/src/orxonox/Test.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/Test.h	(revision 7153)
@@ -50,5 +50,4 @@
 
       void setConfigValues();
-      void registerVariables();
 
       static void call(unsigned int clientID);
@@ -87,4 +86,6 @@
 
     private:
+      void registerVariables();
+
       UTYPE u1;
       UTYPE u2;
Index: code/branches/presentation3/src/orxonox/collisionshapes/CollisionShape.h
===================================================================
--- code/branches/presentation3/src/orxonox/collisionshapes/CollisionShape.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/collisionshapes/CollisionShape.h	(revision 7153)
@@ -45,5 +45,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             inline void setPosition(const Vector3& position)
@@ -88,4 +87,6 @@
 
         private:
+            void registerVariables();
+
             Vector3                 position_;
             Quaternion              orientation_;
Index: code/branches/presentation3/src/orxonox/graphics/Backlight.h
===================================================================
--- code/branches/presentation3/src/orxonox/graphics/Backlight.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/graphics/Backlight.h	(revision 7153)
@@ -45,5 +45,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             virtual void tick(float dt);
@@ -81,4 +80,5 @@
 
         private:
+            void registerVariables();
             virtual void startturnonoff();
             virtual void stopturnonoff();
Index: code/branches/presentation3/src/orxonox/graphics/Billboard.h
===================================================================
--- code/branches/presentation3/src/orxonox/graphics/Billboard.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/graphics/Billboard.h	(revision 7153)
@@ -46,5 +46,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             virtual void changedVisibility();
@@ -78,4 +77,5 @@
 
         private:
+            void registerVariables();
             void changedMaterial();
 //            void changedRotation();
Index: code/branches/presentation3/src/orxonox/graphics/BlinkingBillboard.cc
===================================================================
--- code/branches/presentation3/src/orxonox/graphics/BlinkingBillboard.cc	(revision 7152)
+++ code/branches/presentation3/src/orxonox/graphics/BlinkingBillboard.cc	(revision 7153)
@@ -66,7 +66,9 @@
     void BlinkingBillboard::registerVariables()
     {
-//        registerVariable(this->amplitude_, VariableDirection::ToClient);
-//        registerVariable(this->frequency_, VariableDirection::ToClient);
-//        registerVariable(this->phase_,     VariableDirection::ToClient);
+        unregisterVariable(this->getScale3D());
+        registerVariable(this->amplitude_,  VariableDirection::ToClient);
+        registerVariable(this->frequency_,  VariableDirection::ToClient);
+        registerVariable(this->phase_,      VariableDirection::ToClient);
+        registerVariable(this->bQuadratic_, VariableDirection::ToClient);
     }
 
@@ -75,5 +77,5 @@
         SUPER(BlinkingBillboard, tick, dt);
 
-        if (GameMode::isMaster() && this->isActive())
+        if (this->isActive())
         {
             this->time_ += dt;
Index: code/branches/presentation3/src/orxonox/graphics/BlinkingBillboard.h
===================================================================
--- code/branches/presentation3/src/orxonox/graphics/BlinkingBillboard.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/graphics/BlinkingBillboard.h	(revision 7153)
@@ -45,5 +45,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             virtual void tick(float dt);
@@ -70,4 +69,6 @@
 
         private:
+            void registerVariables();
+            
             float amplitude_;
             float frequency_;
Index: code/branches/presentation3/src/orxonox/graphics/FadingBillboard.h
===================================================================
--- code/branches/presentation3/src/orxonox/graphics/FadingBillboard.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/graphics/FadingBillboard.h	(revision 7153)
@@ -46,5 +46,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             virtual void tick(float dt);
@@ -66,4 +65,5 @@
 
         protected:
+            void registerVariables();
             virtual void startturnonoff();
             virtual void stopturnonoff();
Index: code/branches/presentation3/src/orxonox/graphics/GlobalShader.h
===================================================================
--- code/branches/presentation3/src/orxonox/graphics/GlobalShader.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/graphics/GlobalShader.h	(revision 7153)
@@ -45,5 +45,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             virtual void changedVisibility();
@@ -53,4 +52,5 @@
 
         private:
+            void registerVariables();
             void changedCompositor();
 
Index: code/branches/presentation3/src/orxonox/graphics/Light.h
===================================================================
--- code/branches/presentation3/src/orxonox/graphics/Light.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/graphics/Light.h	(revision 7153)
@@ -57,5 +57,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             virtual void changedVisibility();
@@ -132,4 +131,5 @@
 
         private:
+            void registerVariables();
             void setTypeString(const std::string& type);
             std::string getTypeString() const;
Index: code/branches/presentation3/src/orxonox/graphics/Model.h
===================================================================
--- code/branches/presentation3/src/orxonox/graphics/Model.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/graphics/Model.h	(revision 7153)
@@ -45,5 +45,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             virtual void changedVisibility();
@@ -63,4 +62,5 @@
 
         protected:
+            void registerVariables();
             void changedMesh();
             void changedShadows();
Index: code/branches/presentation3/src/orxonox/graphics/ParticleEmitter.h
===================================================================
--- code/branches/presentation3/src/orxonox/graphics/ParticleEmitter.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/graphics/ParticleEmitter.h	(revision 7153)
@@ -44,5 +44,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             virtual void changedVisibility();
@@ -74,4 +73,7 @@
             std::string        source_;
             LODParticle::Value   LOD_;
+
+        private:
+            void registerVariables();
     };
 }
Index: code/branches/presentation3/src/orxonox/infos/GametypeInfo.h
===================================================================
--- code/branches/presentation3/src/orxonox/infos/GametypeInfo.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/infos/GametypeInfo.h	(revision 7153)
@@ -45,6 +45,4 @@
             virtual ~GametypeInfo();
 
-            void registerVariables();
-
             inline bool hasStarted() const
                 { return this->bStarted_; }
@@ -74,4 +72,6 @@
 
         private:
+            void registerVariables();
+
             bool bStarted_;
             bool bEnded_;
Index: code/branches/presentation3/src/orxonox/infos/HumanPlayer.h
===================================================================
--- code/branches/presentation3/src/orxonox/infos/HumanPlayer.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/infos/HumanPlayer.h	(revision 7153)
@@ -43,5 +43,4 @@
             virtual ~HumanPlayer();
 
-            void registerVariables();
             void setConfigValues();
 
@@ -101,4 +100,6 @@
             std::string gametypeHudTemplate_;
             OverlayGroup* gametypeHud_;
+        private:
+            void registerVariables();
     };
 }
Index: code/branches/presentation3/src/orxonox/infos/PlayerInfo.h
===================================================================
--- code/branches/presentation3/src/orxonox/infos/PlayerInfo.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/infos/PlayerInfo.h	(revision 7153)
@@ -43,6 +43,4 @@
             PlayerInfo(BaseObject* creator);
             virtual ~PlayerInfo();
-
-            void registerVariables();
 
             virtual void changedName();
@@ -92,4 +90,5 @@
 
         private:
+            void registerVariables();
             void networkcallback_changedcontrollableentityID();
             void networkcallback_changedgtinfoID();
Index: code/branches/presentation3/src/orxonox/items/Engine.h
===================================================================
--- code/branches/presentation3/src/orxonox/items/Engine.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/items/Engine.h	(revision 7153)
@@ -46,5 +46,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
             void setConfigValues();
 
@@ -127,4 +126,5 @@
 
         private:
+            void registerVariables();
             void networkcallback_shipID();
 
Index: code/branches/presentation3/src/orxonox/items/MultiStateEngine.h
===================================================================
--- code/branches/presentation3/src/orxonox/items/MultiStateEngine.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/items/MultiStateEngine.h	(revision 7153)
@@ -53,5 +53,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             virtual void tick(float dt);
@@ -68,4 +67,6 @@
 
         private:
+            void registerVariables();
+
             int state_;
             int oldState_;
Index: code/branches/presentation3/src/orxonox/sound/BaseSound.cc
===================================================================
--- code/branches/presentation3/src/orxonox/sound/BaseSound.cc	(revision 7152)
+++ code/branches/presentation3/src/orxonox/sound/BaseSound.cc	(revision 7153)
@@ -248,5 +248,5 @@
         else // No source acquired so far, but might be set to playing or paused
         {
-            State state = this->state_; // save
+            State state = static_cast<State>(this->state_); // save
             if (this->isPlaying() || this->isPaused())
                 doPlay();
Index: code/branches/presentation3/src/orxonox/sound/BaseSound.h
===================================================================
--- code/branches/presentation3/src/orxonox/sound/BaseSound.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/sound/BaseSound.h	(revision 7153)
@@ -112,5 +112,5 @@
         float           volume_;
         bool            bLooping_;
-        State           state_;
+        uint8_t         state_;       // This Variable is actually of type State
         float           pitch_;
 
Index: code/branches/presentation3/src/orxonox/sound/WorldSound.cc
===================================================================
--- code/branches/presentation3/src/orxonox/sound/WorldSound.cc	(revision 7152)
+++ code/branches/presentation3/src/orxonox/sound/WorldSound.cc	(revision 7153)
@@ -58,5 +58,5 @@
         registerVariable(bLooping_, ObjectDirection::ToClient, new NetworkCallback<WorldSound>(this, &WorldSound::loopingChanged));
         registerVariable(pitch_,    ObjectDirection::ToClient, new NetworkCallback<WorldSound>(this, &WorldSound::pitchChanged));
-        registerVariable((int&)(BaseSound::state_), ObjectDirection::ToClient, new NetworkCallback<WorldSound>(this, &WorldSound::stateChanged));
+        registerVariable((uint8_t&)(BaseSound::state_), ObjectDirection::ToClient, new NetworkCallback<WorldSound>(this, &WorldSound::stateChanged));
     }
 
Index: code/branches/presentation3/src/orxonox/worldentities/BigExplosion.cc
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/BigExplosion.cc	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/BigExplosion.cc	(revision 7153)
@@ -101,4 +101,9 @@
         this->debrisEntity3_ = new MovableEntity(this);
         this->debrisEntity4_ = new MovableEntity(this);
+        
+        this->debrisEntity1_->setSyncMode(0);
+        this->debrisEntity2_->setSyncMode(0);
+        this->debrisEntity3_->setSyncMode(0);
+        this->debrisEntity4_->setSyncMode(0);
 
         this->debris1_ = new Model(this);
@@ -106,6 +111,12 @@
         this->debris3_ = new Model(this);
         this->debris4_ = new Model(this);
+        
+        this->debris1_->setSyncMode(0);
+        this->debris2_->setSyncMode(0);
+        this->debris3_->setSyncMode(0);
+        this->debris4_->setSyncMode(0);
 
         this->explosion_ = new StaticEntity(this);
+        this->explosion_->setSyncMode(0);
 
         this->debrisSmoke1_ = new ParticleInterface(this->getScene()->getSceneManager(), "Orxonox/smoke7", this->LOD_);
@@ -158,4 +169,5 @@
         effect->setSource("Orxonox/explosion2b");
         effect->setLifetime(4.0f);
+        effect->setSyncMode(0);
 
         ParticleSpawner* effect2 = new ParticleSpawner(this->getCreator());
@@ -163,4 +175,5 @@
         effect2->setSource("Orxonox/smoke6");
         effect2->setLifetime(4.0f);
+        effect2->setSyncMode(0);
 
         this->explosion_->attach(effect);
@@ -181,4 +194,9 @@
             MovableEntity* partEntity1 = new MovableEntity(this);
             MovableEntity* partEntity2 = new MovableEntity(this);
+            
+            part1->setSyncMode(0);
+            part2->setSyncMode(0);
+            partEntity1->setSyncMode(0);
+            partEntity2->setSyncMode(0);
 
             partEntity1->setVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1))*rnd(10,100));
Index: code/branches/presentation3/src/orxonox/worldentities/BigExplosion.h
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/BigExplosion.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/BigExplosion.h	(revision 7153)
@@ -45,5 +45,4 @@
 
             virtual void tick(float dt);
-            void registerVariables();
 
             inline void setLOD(LODParticle::Value level)
@@ -53,4 +52,5 @@
 
         private:
+            void registerVariables();
 
             void LODchanged();
Index: code/branches/presentation3/src/orxonox/worldentities/ControllableEntity.h
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/ControllableEntity.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/ControllableEntity.h	(revision 7153)
@@ -49,5 +49,4 @@
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
             virtual void tick(float dt);
-            void registerVariables();
             void setConfigValues();
 
@@ -167,4 +166,5 @@
 
         private:
+            void registerVariables();
             void setXMLController(Controller* controller);
 
Index: code/branches/presentation3/src/orxonox/worldentities/ExplosionChunk.h
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/ExplosionChunk.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/ExplosionChunk.h	(revision 7153)
@@ -44,5 +44,4 @@
 
             virtual void tick(float dt);
-            void registerVariables();
 
             inline void setLOD(LODParticle::Value level)
@@ -52,4 +51,5 @@
 
         private:
+            void registerVariables();
             void LODchanged();
             void checkStop();
Index: code/branches/presentation3/src/orxonox/worldentities/MobileEntity.cc
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/MobileEntity.cc	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/MobileEntity.cc	(revision 7153)
@@ -46,6 +46,4 @@
         this->angularAcceleration_ = Vector3::ZERO;
         this->angularVelocity_     = Vector3::ZERO;
-
-        this->registerVariables();
     }
 
Index: code/branches/presentation3/src/orxonox/worldentities/MovableEntity.h
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/MovableEntity.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/MovableEntity.h	(revision 7153)
@@ -48,5 +48,4 @@
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
             virtual bool collidesAgainst(WorldEntity* otherObject, btManifoldPoint& contactPoint);
-            void registerVariables();
 
             using WorldEntity::setPosition;
@@ -79,4 +78,5 @@
 
         private:
+            void registerVariables();
             void clientConnected(unsigned int clientID);
             void clientDisconnected(unsigned int clientID);
Index: code/branches/presentation3/src/orxonox/worldentities/StaticEntity.h
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/StaticEntity.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/StaticEntity.h	(revision 7153)
@@ -42,6 +42,4 @@
             virtual ~StaticEntity();
 
-            void registerVariables();
-
             using WorldEntity::setPosition;
             using WorldEntity::setOrientation;
@@ -51,4 +49,5 @@
 
         private:
+            void registerVariables();
             bool isCollisionTypeLegal(CollisionType type) const;
 
Index: code/branches/presentation3/src/orxonox/worldentities/WorldEntity.h
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/WorldEntity.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/WorldEntity.h	(revision 7153)
@@ -94,5 +94,4 @@
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
-            void registerVariables();
 
             inline const Ogre::SceneNode* getNode() const
@@ -214,4 +213,6 @@
 
         private:
+            void registerVariables();
+            
             inline void lookAt_xmlport(const Vector3& target)
                 { this->lookAt(target); }
Index: code/branches/presentation3/src/orxonox/worldentities/pawns/Pawn.cc
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/pawns/Pawn.cc	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/pawns/Pawn.cc	(revision 7153)
@@ -130,5 +130,5 @@
         registerVariable(this->shieldAbsorption_, VariableDirection::ToClient);
         registerVariable(this->bReload_,          VariableDirection::ToServer);
-        registerVariable(this->aimPosition_,      Bidirectionality::ServerMaster, 0, true);
+        registerVariable(this->aimPosition_,      VariableDirection::ToServer);  // For the moment this variable gets only transfered to the server
     }
 
Index: code/branches/presentation3/src/orxonox/worldentities/pawns/Pawn.h
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/pawns/Pawn.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/pawns/Pawn.h	(revision 7153)
@@ -50,5 +50,4 @@
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
             virtual void tick(float dt);
-            void registerVariables();
 
             inline bool isAlive() const
@@ -166,4 +165,5 @@
 
         private:
+            void registerVariables();
             inline void setWeaponSystem(WeaponSystem* weaponsystem)
                 { this->weaponSystem_ = weaponsystem; }
Index: code/branches/presentation3/src/orxonox/worldentities/pawns/SpaceShip.h
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/pawns/SpaceShip.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/pawns/SpaceShip.h	(revision 7153)
@@ -47,5 +47,4 @@
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
             virtual void tick(float dt);
-            void registerVariables();
             void setConfigValues();
 
@@ -99,7 +98,7 @@
 
         private:
+            void registerVariables();
             virtual bool isCollisionTypeLegal(WorldEntity::CollisionType type) const;
 
-        private:
             void loadEngineTemplate();
 
Index: code/branches/presentation3/src/orxonox/worldentities/pawns/Spectator.h
===================================================================
--- code/branches/presentation3/src/orxonox/worldentities/pawns/Spectator.h	(revision 7152)
+++ code/branches/presentation3/src/orxonox/worldentities/pawns/Spectator.h	(revision 7153)
@@ -44,5 +44,4 @@
 
             void setConfigValues();
-            void registerVariables();
             virtual void tick(float dt);
 
@@ -63,4 +62,5 @@
 
         private:
+            void registerVariables();
             void changedGreeting();
             void changedFlareVisibility();
