Index: code/branches/SOBv2_HS17/SOB.oxw
===================================================================
--- code/branches/SOBv2_HS17/SOB.oxw	(revision 11647)
+++ code/branches/SOBv2_HS17/SOB.oxw	(revision 11650)
@@ -13,7 +13,4 @@
 	include("overlays/SOBHUD.oxo")
 	?>
-
-					<!--THEO-->
-
 
 	<Template name=mushroom defaults=0>
Index: code/branches/SOBv2_HS17/data/levels/SOB.oxw
===================================================================
--- code/branches/SOBv2_HS17/data/levels/SOB.oxw	(revision 11647)
+++ code/branches/SOBv2_HS17/data/levels/SOB.oxw	(revision 11650)
@@ -80,5 +80,5 @@
 
 	<Template name=gumbaShootable>
-		<SOBGumbaBoss collisionType="dynamic" speed=40>
+		<SOBGumbaBoss collisionType="dynamic" speed=60>
 			<attached>
 				<Model mesh="Goomba.mesh" position="0,0,1" scale=3 pitch=90/> 				
Index: code/branches/SOBv2_HS17/src/modules/superorxobros/SOBFigure.cc
===================================================================
--- code/branches/SOBv2_HS17/src/modules/superorxobros/SOBFigure.cc	(revision 11647)
+++ code/branches/SOBv2_HS17/src/modules/superorxobros/SOBFigure.cc	(revision 11650)
@@ -115,5 +115,5 @@
         SOBMushroom*    mush        = orxonox_cast<SOBMushroom*>    (otherObject);
         SOBGumba*       gumba       = orxonox_cast<SOBGumba*>       (otherObject);
-        SOBGumbaBoss*   gumbaBoss   = orxonox_cast<SOBGumbaBoss*>       (otherObject);
+        SOBGumbaBoss*   gumbaBoss   = orxonox_cast<SOBGumbaBoss*>   (otherObject);
         SOBFlagstone*   flagstone   = orxonox_cast<SOBFlagstone*>   (otherObject);
         SOBCastlestone* castlestone = orxonox_cast<SOBCastlestone*> (otherObject);
Index: code/branches/SOBv2_HS17/src/modules/superorxobros/SOBFlagstone.h
===================================================================
--- code/branches/SOBv2_HS17/src/modules/superorxobros/SOBFlagstone.h	(revision 11647)
+++ code/branches/SOBv2_HS17/src/modules/superorxobros/SOBFlagstone.h	(revision 11650)
@@ -29,5 +29,6 @@
 /**
     @file SOBFlagstone.h
-    @brief Declaration of the SOBFlagstone class. This class is used for the flag - for everz 10x10x10 stone we added a flagstone with different points. The higher you touch the flag, the more points you get.
+    @brief Declaration of the SOBFlagstone class. 
+            This class is used for the flag - for every 10x10x10 stone we added a flagstone with different points. The higher you touch the flag, the more points you get.
     @ingroup SOB
 */
Index: code/branches/SOBv2_HS17/src/modules/superorxobros/SOBGumba.cc
===================================================================
--- code/branches/SOBv2_HS17/src/modules/superorxobros/SOBGumba.cc	(revision 11647)
+++ code/branches/SOBv2_HS17/src/modules/superorxobros/SOBGumba.cc	(revision 11650)
@@ -124,6 +124,10 @@
 
         Vector3 velocity = getVelocity();
+        if(velocity.z > -1 && velocity.z < 1)
+        {
+            velocity.x = dir*speed_;
+        }      
+
         velocity.z -= gravityAcceleration_*dt;
-        velocity.x = dir*speed_;
         setVelocity(velocity);
 
Index: code/branches/SOBv2_HS17/src/modules/superorxobros/SOBGumbaBoss.cc
===================================================================
--- code/branches/SOBv2_HS17/src/modules/superorxobros/SOBGumbaBoss.cc	(revision 11647)
+++ code/branches/SOBv2_HS17/src/modules/superorxobros/SOBGumbaBoss.cc	(revision 11650)
@@ -31,5 +31,5 @@
     @file SOBGumbaBoss.cc
     @brief A Boss Gumba, which shoots small Gumbas
-*/
+**/
 
 #include "SOB.h"
@@ -54,7 +54,9 @@
         RegisterObject(SOBGumbaBoss);
 
-        gumbaMaxTime_ = 1;
-        gumbaTime_ = 0;
-        maxGumbas = 2; //Max Gumbas spawnable by a Boss
+        gumbaMaxTime_   = 1;
+        gumbaTime_      = 0;
+        maxGumbas_      = 10; //Max Gumbas spawnable by a Boss
+        jumpTime_       = 0;
+        jumpTimeMax_    = 5;
         
     }
@@ -63,6 +65,15 @@
     bool SOBGumbaBoss::collidesAgainst(WorldEntity* otherObject, const btCollisionShape* ownCollisionShape, btManifoldPoint& contactPoint) {
 
+        SOBGumba*       gumba       = orxonox_cast<SOBGumba*>(otherObject);
+        SOBGumbaBoss*   gumbaBoss   = orxonox_cast<SOBGumbaBoss*>(otherObject);
+
+        if (gumba != nullptr && gumbaBoss == nullptr && !(gumba->hasCollided_)) {
+            gumba->destroyLater();
+            gumba->hasCollided_ = true;
+        }
+
+
         //Every object with mass -1 does not change the direction of the GumbaBoss. For example the ground floor! The other objects switch the direction of the GumbaBoss.
-        if (changeAllowed_ && otherObject->getMass() != -1) {
+        else if (changeAllowed_ && otherObject->getMass() != -1) {
             goesRight_ = !goesRight_;
             changeAllowed_ = false;
@@ -78,4 +89,6 @@
     {
         SUPER(SOBGumbaBoss, tick, dt);
+        gumbaTime_ += dt;
+        jumpTime_  += dt; 
 
         if (!changeAllowed_) {
@@ -89,5 +102,4 @@
         }
     
-        gumbaTime_ += dt;
 
         if(gumbaTime_ > gumbaMaxTime_){ //Spawn Gumba
@@ -103,5 +115,5 @@
 
 
-            if(gumbaCounter<maxGumbas){    //only maxGumbas are allowed at one time per Gumbaboss
+            if(gumbaCounter<maxGumbas_){    //only maxGumbas are allowed at one time per Gumbaboss
                 spawnGumba();
                 gumbaTime_ = 0;
@@ -114,5 +126,12 @@
 
         Vector3 velocity = getVelocity();
-        velocity.z -= gravityAcceleration_*dt;
+        if(jumpTime_ > jumpTimeMax_){
+            velocity.z = speed_*15;
+            jumpTime_ = 0;
+        }
+        else{
+            velocity.z -= gravityAcceleration_*dt;
+        }
+
         velocity.x = dir*speed_;
         setVelocity(velocity);
@@ -132,7 +151,6 @@
         {
             gumba->addTemplate("gumbaShootable");
-            bool direction = ((this->getWorldOrientation().getRoll().valueRadians())>-1.6&&(this->getWorldOrientation().getRoll().valueRadians()<1.6));
-            gumba->setDirection(direction);
-            if(direction)
+            gumba->setDirection(goesRight_);
+            if(goesRight_)
             {
                 spawnpos.x+=20;
@@ -148,5 +166,6 @@
 
         Vector3 velocity = gumba->getVelocity();
-        velocity.z -= 100;
+        velocity.x += (2*goesRight_ -1) * 100;
+        velocity.z += 200;
         gumba->setVelocity(velocity);
      }
Index: code/branches/SOBv2_HS17/src/modules/superorxobros/SOBGumbaBoss.h
===================================================================
--- code/branches/SOBv2_HS17/src/modules/superorxobros/SOBGumbaBoss.h	(revision 11647)
+++ code/branches/SOBv2_HS17/src/modules/superorxobros/SOBGumbaBoss.h	(revision 11650)
@@ -56,5 +56,8 @@
             float gumbaTime_;
             float gumbaMaxTime_;
-            int maxGumbas;
+            float jumpTimeMax_;
+            float jumpTime_;
+            int maxGumbas_;
+
 
            
