Index: code/branches/Asteroid_HS17/data/levels/Asteroid.oxw
===================================================================
--- code/branches/Asteroid_HS17/data/levels/Asteroid.oxw	(revision 11667)
+++ 	(revision )
@@ -1,37 +1,0 @@
- <LevelInfo
- name = "AsteroidsTest"
- description = "A level with absolutely nothing in it."
- tags = "test"
- screenshot = "emptylevel.png"
-/>
-
-<?lua
-  include("stats.oxo")
-  include("HUDTemplates3.oxo")
-  include("templates/lodInformation.oxt")
-  include("templates/HeavyCruiser.oxt")
-?>
-
-<?lua
-  include("templates/spaceship.oxt")
-  include("templates/endurancetest_template.oxt")
-?>
-
-<Level>
-  <templates>
-    <Template link=lodtemplate_default />
-  </templates>
-  <?lua include("includes/notifications.oxi") ?>
-
-  <Scene
-    ambientlight = "0.8, 0.8, 0.8"
-    skybox       = "Orxonox/Starbox"
-  >
-
-    <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="0,0,0" lookat="0,0,0" spawnclass=SpaceShip pawndesign=spaceshipAsteroids />
-
-    
-  </Scene>
-</Level>
-
Index: code/branches/Asteroid_HS17/data/levels/templates/spaceshipAsteroids2D.oxt
===================================================================
--- code/branches/Asteroid_HS17/data/levels/templates/spaceshipAsteroids2D.oxt	(revision 11667)
+++ code/branches/Asteroid_HS17/data/levels/templates/spaceshipAsteroids2D.oxt	(revision 11668)
@@ -7,7 +7,7 @@
    explosionchunks        = 4
 
-   health            = 1000
-   maxhealth         = 1000
-   initialhealth     = 1000
+   health            = 10
+   maxhealth         = 10
+   initialhealth     = 10
 
    shieldhealth        = 20
Index: code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2D.cc
===================================================================
--- code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2D.cc	(revision 11667)
+++ code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2D.cc	(revision 11668)
@@ -36,5 +36,9 @@
         - Implement a counting system for the score
         - HUD can be improved (display health, points, level etc.)
-        - Projectiles still 
+        - Projectiles still fly in a mysterious direction 
+        - Problem: The asteroids spawn randomly on the playing field.
+            During spawn or level up, there is the possibility that they pawn at the position of the ship.
+            ->spawn somewhere with a safty distance/radius
+
 */
 
@@ -54,5 +58,5 @@
 
         bEndGame = false;
-        lives = 1000;
+        lives = 3; 
         level = 1;
         point = 0;
@@ -75,5 +79,5 @@
         {
 
-            //kann schoener gemacht werden
+            //Do something that indicates a level up
             for (int i = 0; i < 7; i++)
             {
@@ -94,5 +98,5 @@
 
 
-        //After level up -> spawn stones
+        //After level up -> spawn stones. Modify for different difficulty level
         for(int i = 0; i < level*2; i++){
             spawnStone();
@@ -111,5 +115,5 @@
                 spawnStone();
             }
-
+            //after first tick, firstTick_ will remain false
             this->firstTick_ = false;
         }
@@ -121,8 +125,9 @@
     {
 
-        //stones are created with a size
+        //stones are created with a size -> second constructor in Asteroids2DStone class
         Asteroids2DStone* newStone = new Asteroids2DStone(this->center_->getContext());
         newStone->setAsteroids2DPlayer(player);
 
+        //look at templates in data/levels/templates/asteroidsAsteroids2D.oxt
         switch(newStone->getSize()){
             case 1:
@@ -165,5 +170,5 @@
     void Asteroids2D::start()
     {
-        orxout() << "start" << endl;
+        //orxout() << "start" << endl;
 
         // Set variable to temporarily force the player to spawn.
@@ -188,5 +193,5 @@
     }
 
-    //wird gerufen, falls man einen Asteroiden trifft->Aufruf durch Schiffklasse
+    //This function will be called from the ship or the stone class (if the stone was hit)
     void Asteroids2D::addPoints(int numPoints)
     {
Index: code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2D.h
===================================================================
--- code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2D.h	(revision 11667)
+++ code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2D.h	(revision 11668)
@@ -77,4 +77,5 @@
             virtual void end() override;
 
+            //updates the game every few ns
             virtual void tick(float dt) override;
 
@@ -99,4 +100,6 @@
             // checks if multiplier should be reset.
             void costLife();
+
+            //Returns player (ship) of the game
             Asteroids2DShip* getPlayer();
 
Index: code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.cc
===================================================================
--- code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.cc	(revision 11667)
+++ code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.cc	(revision 11668)
@@ -29,5 +29,4 @@
 /*  TODO: 
 
-/**
     @file Asteroids2DShip.cc
     @brief Implementation of the Asteroids2DShip class.
@@ -46,7 +45,5 @@
         RegisterObject(Asteroids2DShip);
 
-        speed = 830;
         isFireing = false;
-        damping = 10;
         this->width = 1043;
         this->height = 646;
Index: code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.h
===================================================================
--- code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.h	(revision 11667)
+++ code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DShip.h	(revision 11668)
@@ -63,13 +63,19 @@
             virtual void rotatePitch(const Vector2& value) override{}; // Rotate in pitch direction.
             virtual void rotateRoll(const Vector2& value) override{}; // Rotate in roll direction.
-            virtual void boost(bool boost) override;
+            virtual void boost(bool boost) override; //Override, so that the ship does not shake
             virtual void updateLevel();
 
             virtual inline bool collidesAgainst(WorldEntity* otherObject, const btCollisionShape* ownCollisionShape, btManifoldPoint& contactPoint) override;
 
-            float speed, damping;
             bool isFireing;
+            
+            /*Functions that can be helpful while debugging.
+                - Set a timer so that the function is called for instance every 3s to display the coordinates
+                - Open console with "~`"-key in when you start the Asteroids2D - Minigame.
+            */
             void showposition();
             void showorientation();
+
+
             void toggleImmune()
             {
Index: code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DStone.cc
===================================================================
--- code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DStone.cc	(revision 11667)
+++ code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DStone.cc	(revision 11668)
@@ -111,8 +111,6 @@
     inline bool Asteroids2DStone::collidesAgainst(WorldEntity* otherObject, const btCollisionShape* ownCollisionShape, btManifoldPoint& contactPoint)
     {
-        orxout() << "AsteroidStone getroffen" << endl;
         if(orxonox_cast<Asteroids2DShip*>(otherObject))
         {
-            orxout() << "getroffen von Ship" << endl;
             split();
         }
@@ -140,5 +138,5 @@
     void Asteroids2DStone::split()
     {
-        orxout() << "split" << endl;
+        //orxout() << "split" << endl;
         if(size == 3)
         {
Index: code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DWeapon.cc
===================================================================
--- code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DWeapon.cc	(revision 11667)
+++ code/branches/Asteroid_HS17/src/modules/asteroids2D/Asteroids2DWeapon.cc	(revision 11668)
@@ -93,10 +93,9 @@
         this->computeMuzzleParameters(this->getWeapon()->getWeaponPack()->getWeaponSystem()->getPawn()->getAimPosition());
 
-        //projectile->setOrientation(this->getGame()->getPlayer()->getOrientation());
-        projectile->setPosition(this->getMuzzlePosition());
-
+        projectile->setOrientation(this->getWeapon()->getWeaponPack()->getWeaponSystem()->getPawn()->getOrientation());
+        projectile->setPosition(this->getWeapon()->getWeaponPack()->getWeaponSystem()->getPawn()->getPosition());
 
         //auf 2D Ebene druecken
-        Vector3 muzzle2D = this->getMuzzleDirection();
+        Vector3 muzzle2D = this->getWeapon()->getWeaponPack()->getWeaponSystem()->getPawn()->getOrientation()* WorldEntity::FRONT;
         muzzle2D.y = 0; 
 
