Index: code/branches/invaders/data/levels/Invaders.oxw
===================================================================
--- code/branches/invaders/data/levels/Invaders.oxw	(revision 9702)
+++ code/branches/invaders/data/levels/Invaders.oxw	(revision 9709)
@@ -30,5 +30,7 @@
 
     <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 team=0 position="-200,0,0" lookat="0,0,0" spawnclass=SpaceShip pawndesign=spaceshipinvader />
+    <SpawnPoint team=0 position="-200,0,0" lookat="0,0,0" spawnclass=InvaderShip pawndesign=spaceshipinvader />
+
+    <InvaderCenterPoint name=invadercenter />
     
   </Scene>
Index: code/branches/invaders/data/levels/templates/spaceshipInvader.oxt
===================================================================
--- code/branches/invaders/data/levels/templates/spaceshipInvader.oxt	(revision 9702)
+++ code/branches/invaders/data/levels/templates/spaceshipInvader.oxt	(revision 9709)
@@ -1,4 +1,4 @@
 <Template name=spaceshipinvader>
-  <SpaceShip
+  <InvaderShip
    hudtemplate            = spaceshiphud
    camerapositiontemplate = spaceshipescortcameras
@@ -59,16 +59,16 @@
   include("../includes/weaponSettingsEscort.oxi")
 ?>
-  </SpaceShip>
+  </InvaderShip>
 </Template>
 
 <Template name=spaceshipescortcameras defaults=0>
-  <SpaceShip>
+  <InvaderShip>
     <camerapositions>
-      <CameraPosition position="0,15, 60" drag=true mouselook=true />
+<!--       <CameraPosition position="0,15, 60" drag=true mouselook=true />
       <CameraPosition position="0,20, 90" drag=true mouselook=true />
-      <CameraPosition position="0,30,120" drag=true mouselook=true />
+      <CameraPosition position="0,30,120" drag=true mouselook=true /> -->
       <CameraPosition position="0,300,-100" direction="0, -1, 0" drag=true mouselook=true />
     </camerapositions>
-  </SpaceShip>
+  </InvaderShip>
 </Template>
 
Index: code/branches/invaders/src/modules/invader/CMakeLists.txt
===================================================================
--- code/branches/invaders/src/modules/invader/CMakeLists.txt	(revision 9702)
+++ code/branches/invaders/src/modules/invader/CMakeLists.txt	(revision 9709)
@@ -2,4 +2,6 @@
 BUILD_UNIT InvaderBuildUnit.cc
   Invader.cc
+  InvaderCenterPoint.cc
+  InvaderShip.cc
 END_BUILD_UNIT
 )
Index: code/branches/invaders/src/modules/invader/Invader.cc
===================================================================
--- code/branches/invaders/src/modules/invader/Invader.cc	(revision 9702)
+++ code/branches/invaders/src/modules/invader/Invader.cc	(revision 9709)
@@ -42,4 +42,10 @@
 #include "chat/ChatManager.h"
 
+#include "InvaderShip.h"
+// ! HACK
+#include "infos/PlayerInfo.h"
+
+#include "InvaderCenterPoint.h"
+
 namespace orxonox
 {
@@ -50,4 +56,6 @@
         RegisterObject(Invader);
 
+        this->center_ = 0;
+        //this->context = context;
     }
 
@@ -56,4 +64,12 @@
     }
 
+    // inject custom player controller
+ /**   void Invader::spawnPlayer(PlayerInfo* player)
+    {
+        assert(player);
+
+        //player->startControl(new InvaderShip(this->center_->getContext() ) );
+    }*/
+
     void Invader::start()
     {
@@ -61,4 +77,10 @@
         this->bForceSpawn_ = true;
 
+        if (this->center_ == NULL)  // abandon mission!
+        {
+            orxout(internal_error) << "Invader: No Centerpoint specified." << endl;
+            GSLevel::startMainMenu();
+            return;
+        }
         // Call start for the parent class.
         Deathmatch::start();
Index: code/branches/invaders/src/modules/invader/Invader.h
===================================================================
--- code/branches/invaders/src/modules/invader/Invader.h	(revision 9702)
+++ code/branches/invaders/src/modules/invader/Invader.h	(revision 9709)
@@ -40,4 +40,6 @@
 #include "gametypes/Deathmatch.h"
 
+#include "InvaderCenterPoint.h"
+
 namespace orxonox
 {
@@ -51,4 +53,12 @@
             virtual void start(); //!< Starts the Invader minigame.
             virtual void end(); ///!< Ends the Invader minigame.
+
+            //virtual void spawnPlayer(PlayerInfo* player); //!< Spawns the input player.
+
+            void setCenterpoint(InvaderCenterPoint* center)
+            { this->center_ = center; }
+        private:
+            WeakPtr<InvaderCenterPoint> center_;
+            //Context* context;
     };
 }
Index: code/branches/invaders/src/modules/invader/InvaderPrereqs.h
===================================================================
--- code/branches/invaders/src/modules/invader/InvaderPrereqs.h	(revision 9702)
+++ code/branches/invaders/src/modules/invader/InvaderPrereqs.h	(revision 9709)
@@ -69,4 +69,6 @@
 {
     class Invader;
+    class InvaderCenterPoint;
+    class InvaderShip;
 }
 
