Index: code/branches/towerdefenseFabien/data/levels/towerDefense.oxw
===================================================================
--- code/branches/towerdefenseFabien/data/levels/towerDefense.oxw	(revision 10592)
+++ code/branches/towerdefenseFabien/data/levels/towerDefense.oxw	(revision 10594)
@@ -220,5 +220,5 @@
         </links>
         <Weapon>
-          <SimpleRocketFire mode=0 muzzleoffset="0,0,0" damage=30 shielddamage=20 />
+          <<HsW01 mode=0 munitionpershot=0 delay=0.125 damage=9.3 material="Flares/point_lensflare" muzzleoffset=" 0,0,0" projectileMesh="LaserBeam2.mesh" />
         </Weapon>
       </WeaponPack>
Index: code/branches/towerdefenseFabien/src/modules/weapons/projectiles/CMakeLists.txt
===================================================================
--- code/branches/towerdefenseFabien/src/modules/weapons/projectiles/CMakeLists.txt	(revision 10592)
+++ code/branches/towerdefenseFabien/src/modules/weapons/projectiles/CMakeLists.txt	(revision 10594)
@@ -5,5 +5,4 @@
   Projectile.cc
   LightningGunProjectile.cc
-  SplitGunProjectile.cc
   Rocket.cc
   SimpleRocket.cc
Index: code/branches/towerdefenseFabien/src/modules/weapons/projectiles/SplitGunProjectile.cc
===================================================================
--- code/branches/towerdefenseFabien/src/modules/weapons/projectiles/SplitGunProjectile.cc	(revision 10592)
+++ code/branches/towerdefenseFabien/src/modules/weapons/projectiles/SplitGunProjectile.cc	(revision 10594)
@@ -21,5 +21,5 @@
  *
  *   Author:
- *      Joel Smely
+ *      Fabien Vultier
  *   Co-authors:
  *      ...
@@ -77,4 +77,8 @@
     }
 
+    /**
+    @brief
+        This function starts a timer that will cause the projectile to split after a time defined by the argument @param splitTime.        
+    */
     void SplitGunProjectile::setSplitTime(float splitTime)
     {
@@ -95,4 +99,8 @@
     }
 
+    /**
+    @brief
+        If this function is called the projectile splits up into many child projectiles. The original projectiles does not get destroyed but it will never split up again.
+    */
     void SplitGunProjectile::split()
     {
@@ -100,4 +108,7 @@
         {
             -- numberOfSplits_;
+
+            // Reduce damage of this projectile by the number of childs plus one. This way the total amount of possible damage contained in the original projectile and its childs is unchanged after s aplit.
+            this->setDamage(this->getDamage()/(numberOfChilds_+1));
 
             // Calculate a normalized vector (velocityOffset) that is perpendicluar to the velocity of this projectile. Since there are infinitly many perpendicular vectors a random one is chosen.
@@ -131,5 +142,5 @@
                 projectile->setDamage(this->getDamage());
                 projectile->setShieldDamage(this->getShieldDamage());
-                projectile->setHealthDamage(this->getHealthDamage());                
+                projectile->setHealthDamage(this->getHealthDamage());
             }
 
Index: code/branches/towerdefenseFabien/src/modules/weapons/projectiles/SplitGunProjectile.h
===================================================================
--- code/branches/towerdefenseFabien/src/modules/weapons/projectiles/SplitGunProjectile.h	(revision 10592)
+++ code/branches/towerdefenseFabien/src/modules/weapons/projectiles/SplitGunProjectile.h	(revision 10594)
@@ -21,5 +21,5 @@
  *
  *   Author:
- *      Joel Smely
+ *      Fabien Vultier
  *   Co-authors:
  *      ...
@@ -46,8 +46,7 @@
     /**
     @brief
-        The SplitGunProjectile is a projectile that is represented by a looped series of billboards.
-        
+        The SplitGunProjectile is a projectile that may split up into many child projectiles.
     @author
-        Joel Smely
+        Fabien Vultier
     @ingroup WeaponsProjectiles
     */
Index: code/branches/towerdefenseFabien/src/modules/weapons/weaponmodes/SplitGun.cc
===================================================================
--- code/branches/towerdefenseFabien/src/modules/weapons/weaponmodes/SplitGun.cc	(revision 10592)
+++ code/branches/towerdefenseFabien/src/modules/weapons/weaponmodes/SplitGun.cc	(revision 10594)
@@ -21,7 +21,7 @@
  *
  *   Author:
- *      Joel Smely
+ *      Fabien Vultier
  *   Co-authors:
- *      simonmie
+ *      ...
  *
  */
@@ -69,5 +69,5 @@
     /**
     @brief
-        XMLPort for the SplitGun. You can define how often the projectiles split, how many childs should be created per split and the time between two splits.
+        XMLPort for the SplitGun. You can define how often the projectiles split, how many childs should be created per split, the spread and the time between two splits.
     */
     void SplitGun::XMLPort(Element& xmlelement, XMLPort::Mode mode)
@@ -95,4 +95,5 @@
         projectile->setVelocity(this->getMuzzleDirection() * this->speed_);
 
+        // Pass important information to the projectile: Number of splits, Number of childs, split time, spread
         projectile->setNumberOfSplits(getNumberOfSplits());
         projectile->setNumberOfChilds(getNumberOfChilds());
Index: code/branches/towerdefenseFabien/src/modules/weapons/weaponmodes/SplitGun.h
===================================================================
--- code/branches/towerdefenseFabien/src/modules/weapons/weaponmodes/SplitGun.h	(revision 10592)
+++ code/branches/towerdefenseFabien/src/modules/weapons/weaponmodes/SplitGun.h	(revision 10594)
@@ -21,5 +21,5 @@
  *
  *   Author:
- *      Joel Smely
+ *      Fabien Vultier
  *   Co-authors:
  *      ...
@@ -45,5 +45,5 @@
         A slow ball of lightning.
     @author
-        Joel Smely
+        Fabien Vultier
     @ingroup WeaponsWeaponModes
     */
@@ -75,9 +75,9 @@
 
        private:
-            float speed_; //!< The speed of the fired projectile.
-            int numberOfSplits_;
-            int numberOfChilds_;
-            float splitTime_;
-            float spread_;
+            float speed_; //The speed of the fired projectile.
+            int numberOfSplits_; //The number of times the projectile will split into child projectiles
+            int numberOfChilds_; //The number of child projectiles that are created if the projectile splits
+            float splitTime_; //The time between creation of the projectile and the split of the projectile
+            float spread_; //Low spread means that the child projectiles are concentrated in a small area
     };
 }
