Index: branches/presentation/src/lib/graphics/importer/static_model.cc
===================================================================
--- branches/presentation/src/lib/graphics/importer/static_model.cc	(revision 10759)
+++ branches/presentation/src/lib/graphics/importer/static_model.cc	(revision 10760)
@@ -103,5 +103,5 @@
   // go through all groups and check if they are mounts
   std::vector<StaticModelData::Group>::iterator groupIt = this->data->getGroups().begin();
-  for( ; groupIt != this->data->getGroups().end(); groupIt++)
+  for( ; groupIt != this->data->getGroups().end();)
   {
     //PRINTF(0)("Found a MountPoint: %s\n", groupName.c_str());
@@ -113,4 +113,5 @@
     // check if the name has a "MP" prefix or else it won't work
     if( groupName.find("MP.", 0) == std::string::npos){
+      groupIt++;
       continue;
     }
@@ -125,4 +126,5 @@
       PRINTF(4)("the face count of %s is wrong, perhaps you missnamed this object or used the wrong mount point object (got %i faces)\n",
                 groupName.c_str(), (*groupIt)._faces.size());
+      groupIt++;
       continue;
     }
@@ -211,5 +213,8 @@
 //     printf("adding MP\n");
      this->addMountPoint( zAxis, yAxis, center, groupName);
-
+      // remove the group from the model list (mount points do not need to be drawn) 
+//      std::vector<StaticModelData::Group>::iterator tmpIt =  groupIt; 
+     groupIt++; 
+//      this->data->getGroups().erase(tmpIt); 
   }
 }
Index: branches/presentation/src/world_entities/projectiles/hbolt.cc
===================================================================
--- branches/presentation/src/world_entities/projectiles/hbolt.cc	(revision 10759)
+++ branches/presentation/src/world_entities/projectiles/hbolt.cc	(revision 10760)
@@ -182,5 +182,9 @@
 //     float matrix[4][4];
     glTranslatef (this->getAbsCoor ().x, this->getAbsCoor ().y, this->getAbsCoor ().z);
+    glPushAttrib(GL_ENABLE_BIT);
+    glEnable( GL_ALPHA_TEST);
+    glAlphaFunc( GL_GEQUAL, .5);
     this->halo->draw();
+    glPopAttrib();
 
     Vector tmpRot = this->getAbsDir().getSpacialAxis();
Index: branches/presentation/src/world_entities/space_ships/space_ship.cc
===================================================================
--- branches/presentation/src/world_entities/space_ships/space_ship.cc	(revision 10759)
+++ branches/presentation/src/world_entities/space_ships/space_ship.cc	(revision 10760)
@@ -305,7 +305,7 @@
 
 
-  dynamic_cast<WorldEntity*>(this)->createHealthWidget();
-  dynamic_cast<WorldEntity*>(this)->createShieldWidget();
-  dynamic_cast<WorldEntity*>(this)->createElectronicWidget();
+  this->createHealthWidget();
+  this->createShieldWidget();
+  this->createElectronicWidget();
 
   if ( this->hasPlayer() ){
@@ -428,7 +428,5 @@
 void SpaceShip::tick (float time)
 {
-  
-  printf("Ship Status: %f, %f\n", this->getHealth(), this->getShield());
-  
+
   if(caminit)
   {
@@ -1084,7 +1082,7 @@
 void SpaceShip::hit( float damage, WorldEntity * killer )
 {
-  printf("SS HIT: %f, %f \n", this->getHealth() , this->getShield());
+  PRINTF(4)("SS HIT: %f, %f \n", this->getHealth(), this->getShield());
   Playable::hit( damage, killer );
-  PRINTF(4)("SS HIT: %f\n", this->getHealth());
+  PRINTF(4)("SS HIT: %f, %f \n", this->getHealth(), this->getShield());
 }
 
Index: branches/presentation/src/world_entities/world_entity.cc
===================================================================
--- branches/presentation/src/world_entities/world_entity.cc	(revision 10759)
+++ branches/presentation/src/world_entities/world_entity.cc	(revision 10760)
@@ -272,5 +272,5 @@
     {
       PRINTF(4)("fetching OBJ file: %s\n", fileName.c_str());
-      // creating the model and loading it
+      // creating the model and loading it  OrxGui::GLGuiEnergyWidgetVertical* implantWidget;
       StaticModel* model = new StaticModel();
       *model = ResourceOBJ(fileName, this->scaling);
@@ -831,8 +831,8 @@
     float retShield = this->shieldMax - this->shield;
     this->shield = this->shieldMax;
-//     this->updateShieldWidget();
+    this->updateShieldWidget();
     return retShield;
   }
-//   this->updateShieldWidget();
+  this->updateShieldWidget();
   return 0.0;
 }
@@ -849,9 +849,9 @@
   {
     float retShield = -this->shield;
-//     this->updateShieldWidget();
+    this->updateShieldWidget();
     this->bShieldActive = false;
     return retShield;
   }
-//   this->updateShieldWidget();
+  this->updateShieldWidget();
   return 0.0;
 }
@@ -944,5 +944,6 @@
 OrxGui::GLGuiWidget* WorldEntity::getImplantWidget()
 {
-  this->createImplantWidget();
+  if(this->implantWidget == NULL)
+    this->createImplantWidget();
   return this->implantWidget;
 }
@@ -1083,7 +1084,7 @@
     this->shieldWidget = new OrxGui::GLGuiEnergyWidgetVertical();
     this->shieldWidget->getBarWidget()->setChangedValueColor(Color(1,0,0,1));
-    //this->shieldWidget->setDisplayedName("Shield:");
-    //his->shieldWidget->setSize2D(100,20);
-    //this->shieldWidget->setAbsCoor2D(200,200);
+//     this->shieldWidget->setDisplayedName("Shield:");
+//     his->shieldWidget->setSize2D(100,20);
+//     this->shieldWidget->setAbsCoor2D(200,200);
     this->updateShieldWidget();
 //     if (dynamic_cast<SpaceShip*>(this)->hasPlayer())
Index: branches/presentation/src/world_entities/world_entity.h
===================================================================
--- branches/presentation/src/world_entities/world_entity.h	(revision 10759)
+++ branches/presentation/src/world_entities/world_entity.h	(revision 10760)
@@ -272,4 +272,5 @@
   float                   healthRegen;            //!< Regeneration Rate of Health, mesured in units per second
   OrxGui::GLGuiEnergyWidgetVertical* healthWidget;    //!< The Slider (if wanted).
+
   OrxGui::GLGuiEnergyWidgetVertical* implantWidget;
 
