Index: /branches/presentation/src/lib/graphics/importer/static_model.cc
===================================================================
--- /branches/presentation/src/lib/graphics/importer/static_model.cc	(revision 10757)
+++ /branches/presentation/src/lib/graphics/importer/static_model.cc	(revision 10758)
@@ -82,5 +82,5 @@
 void StaticModel::finalize()
 {
-  this->extractMountPoints();
+//   this->extractMountPoints();
   data->finalize();
   this->updateBase();
Index: /branches/presentation/src/util/hud.h
===================================================================
--- /branches/presentation/src/util/hud.h	(revision 10757)
+++ /branches/presentation/src/util/hud.h	(revision 10758)
@@ -101,22 +101,22 @@
 
 private:
-  unsigned int             resX;
-  unsigned int             resY;
+  unsigned int              resX;
+  unsigned int              resY;
 
-  float			hitBarCount;
+  float                     hitBarCount;
   
-  Hud::Playmode				playmode; 
+  Hud::Playmode             playmode; 
 
-  float                    travelZoneWidth; //the percentage of the screen, the player has got for his movements. should always be a value between 0 and 1;
+  float                     travelZoneWidth; //the percentage of the screen, the player has got for his movements. should always be a value between 0 and 1;
 
-  OrxGui::GLGuiWidget*     energyWidget;
-  OrxGui::GLGuiWidget*     shieldWidget;
-  OrxGui::GLGuiWidget*     healthWidget;
-  OrxGui::GLGuiWidget*     implantWidget;
+  OrxGui::GLGuiWidget*      energyWidget;
+  OrxGui::GLGuiWidget*      shieldWidget;
+  OrxGui::GLGuiWidget*      healthWidget;
+  OrxGui::GLGuiWidget*      implantWidget;
 
-  OrxGui::GLGuiNotifier*   notifier;
-  OrxGui::GLGuiInputLine*  inputLine;
-  OrxGui::GLGuiRadar*      _radar;
-  PNode*                   radarCenterNode;
+  OrxGui::GLGuiNotifier*    notifier;
+  OrxGui::GLGuiInputLine*   inputLine;
+  OrxGui::GLGuiRadar*       _radar;
+  PNode*                    radarCenterNode;
 
   bool 			ifinit;
Index: /branches/presentation/src/world_entities/npcs/actionbox_enemy.cc
===================================================================
--- /branches/presentation/src/world_entities/npcs/actionbox_enemy.cc	(revision 10757)
+++ /branches/presentation/src/world_entities/npcs/actionbox_enemy.cc	(revision 10758)
@@ -283,8 +283,8 @@
   fw.normalize();
   fw = fw * 100;
-  
+
   Vector mp = this->getAbsCoor();
   Vector op = mp + fw;
-  
+
   Vector targetPos = State::getPlayer()->getPlayable()->getAbsCoor();
   Vector dv = targetPos - this->getAbsCoor();
@@ -292,17 +292,17 @@
   dv *= 100;
   dv += mp;
-  
+
   Vector spUp = this->getAbsDir().inverse().apply( this->getAbsDir().apply( Vector( 0, 1, 0 ) ) );
   spUp.normalize();
   spUp *= 100;
   spUp += mp;
-  
+
   Vector up = fw.cross( dv );
   up += mp;
-  
+
   //PRINTF(0)("DEBUG\n");
   //mp.debug();
   //op.debug();
-  
+
   glMatrixMode(GL_MODELVIEW);
   glPushMatrix();
Index: /branches/presentation/src/world_entities/projectiles/hbolt.cc
===================================================================
--- /branches/presentation/src/world_entities/projectiles/hbolt.cc	(revision 10757)
+++ /branches/presentation/src/world_entities/projectiles/hbolt.cc	(revision 10758)
@@ -51,5 +51,5 @@
   this->setHealthMax(0);
   this->lifeSpan = 3.0;
-
+  this->setDamage(10);
   this->angle = 0;
 //   this->rotationSpeed = 600;
@@ -135,5 +135,5 @@
   if (this->hitEntity != entity/* && entity->isA(NPC::staticClassID())*/ && entity->isA(ActionboxEnemy::staticClassID()) || entity == this->target)
     this->destroy( entity );
-  this->hitEntity = entity;
+//   this->hitEntity = entity;
  // dynamic_cast<SpaceShip*>(entity)->damage( this->getPhysDamage(), this->getElecDamage());
   this->deactivate();
Index: /branches/presentation/src/world_entities/projectiles/nadion_blast.cc
===================================================================
--- /branches/presentation/src/world_entities/projectiles/nadion_blast.cc	(revision 10757)
+++ /branches/presentation/src/world_entities/projectiles/nadion_blast.cc	(revision 10758)
@@ -59,4 +59,6 @@
   this->angle     = 0;
 
+  this->setDamage(5);
+  
   //this->emitter = new DotEmitter(1000, 0, 0);
   this->emitter = new DotEmitter(50, 0, 0);
Index: /branches/presentation/src/world_entities/projectiles/plasma_pulse.cc
===================================================================
--- /branches/presentation/src/world_entities/projectiles/plasma_pulse.cc	(revision 10757)
+++ /branches/presentation/src/world_entities/projectiles/plasma_pulse.cc	(revision 10758)
@@ -42,4 +42,5 @@
   this->setMinEnergy(2);
   this->setHealthMax(0);
+  this->setDamage(2);
   this->lifeSpan = 2.0;
   this->grid = new Billboard();
Index: /branches/presentation/src/world_entities/space_ships/space_ship.cc
===================================================================
--- /branches/presentation/src/world_entities/space_ships/space_ship.cc	(revision 10757)
+++ /branches/presentation/src/world_entities/space_ships/space_ship.cc	(revision 10758)
@@ -428,4 +428,7 @@
 void SpaceShip::tick (float time)
 {
+  
+  printf("Ship Status: %f, %f\n", this->getHealth(), this->getShield());
+  
   if(caminit)
   {
@@ -1081,7 +1084,7 @@
 void SpaceShip::hit( float damage, WorldEntity * killer )
 {
-  PRINTF(4)("SS HIT: %f\n", this->getHealth() );
+  printf("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\n", this->getHealth());
 }
 
Index: /branches/presentation/src/world_entities/world_entity.cc
===================================================================
--- /branches/presentation/src/world_entities/world_entity.cc	(revision 10757)
+++ /branches/presentation/src/world_entities/world_entity.cc	(revision 10758)
@@ -354,5 +354,5 @@
   // extract the mount points
   // Patrick: they get extracted automaticaly now within the model finalization process
-  /*
+  
 
   if(model != NULL)
@@ -362,5 +362,5 @@
     PRINTF(0)("Worldentity %s has no mount points", (this->getName()).c_str());
     return;
-  }*/
+  }
 
   // first get all mount points from the model
@@ -823,5 +823,5 @@
  * @returns the shield left (this->shieldMax - shiled + this->shield)
  */
-float WorldEntity::increaseShield(float shiled)
+float WorldEntity::increaseShield(float shield)
 {
   this->shield += shield;
@@ -1007,6 +1007,8 @@
   if ( !damageable )
     return;
-  
-  this->decreaseHealth(damage);
+
+  if (this->getShieldActive())
+    damage = this->decreaseShield(damage*2);
+  this->decreaseHealth(damage/2);
 
   if( this->getHealth() > 0)
@@ -1187,7 +1189,9 @@
 
 void WorldEntity::regen(float time){
-  static float tmp;
-  increaseHealth(time * this->healthRegen);
-  increaseShield(time * this->shieldRegen);
+  
+  printf("regen: %f, %f, %f ****************** ", time, this->healthRegen, this->shieldRegen);
+  float tmp;
+  this->increaseHealth(time * this->healthRegen);
+  this->increaseShield(time * this->shieldRegen);
 
 
