Index: /branches/presentation/src/world_entities/creatures/fps_player.cc
===================================================================
--- /branches/presentation/src/world_entities/creatures/fps_player.cc	(revision 10717)
+++ /branches/presentation/src/world_entities/creatures/fps_player.cc	(revision 10718)
@@ -42,4 +42,7 @@
 #include "shared_network_data.h"
 
+#include "event_handler.h"
+
+#include "story_entity.h"
 
 
@@ -126,4 +129,6 @@
   registerEvent(KeyMapper::PEV_FIRE1);
   registerEvent(EV_MOUSE_MOTION);
+  
+  this->deadBox = NULL;
 
   // weapon manager for the fps
@@ -276,5 +281,10 @@
 void FPSPlayer::tick (float time)
 {
-     // Second init-step
+  if ( deadBox != NULL )
+  {
+    OrxGui::GLGuiHandler::getInstance()->tick( time );
+  }
+     
+  // Second init-step
   if ( !this->initWeapon )
   {
@@ -587,5 +597,6 @@
 {
   Playable::destroy( killer );
-
+  this->showDeadScreen();
+  myList = this->getOMListNumber();
   toList( OM_DEAD );
 }
@@ -595,2 +606,42 @@
 	State::getPlayer()->hud().notifyUser(message);
 }
+
+void FPSPlayer::onButtonContinue( )
+{
+  OrxGui::GLGuiHandler::getInstance()->deactivateCursor( true );
+  EventHandler::getInstance()->popState();
+  WorldEntity::reset();
+  toList( myList );
+  deadBox->hideAll();
+}
+
+void FPSPlayer::onButtonExit( )
+{
+  State::getCurrentStoryEntity()->setNextStoryID( 0 );
+  State::getCurrentStoryEntity()->stop();
+}
+
+void FPSPlayer::showDeadScreen( )
+{
+  EventHandler::getInstance()->pushState( ES_MENU );
+
+  OrxGui::GLGuiHandler::getInstance()->activateCursor();
+  
+  if ( deadBox )
+    delete deadBox;
+  deadBox = new OrxGui::GLGuiBox();
+  deadBox->setAbsCoor2D( 100, 100 );
+
+  OrxGui::GLGuiText* text = new OrxGui::GLGuiText();
+  text->setText( "Game Over! - You died!" );
+  OrxGui::GLGuiPushButton* exitButton = new OrxGui::GLGuiPushButton( "exit" );
+  exitButton->released.connect(this, &FPSPlayer::onButtonExit);
+  OrxGui::GLGuiPushButton* continueButton = new OrxGui::GLGuiPushButton( "continue" );
+  continueButton->released.connect(this, &FPSPlayer::onButtonContinue);
+
+  deadBox->pack( text );
+  deadBox->pack( continueButton );
+  deadBox->pack( exitButton );
+
+  deadBox->showAll();
+}
Index: /branches/presentation/src/world_entities/creatures/fps_player.h
===================================================================
--- /branches/presentation/src/world_entities/creatures/fps_player.h	(revision 10717)
+++ /branches/presentation/src/world_entities/creatures/fps_player.h	(revision 10718)
@@ -9,4 +9,5 @@
 
 #include "playable.h"
+#include "glgui.h"
 
 
@@ -76,4 +77,10 @@
     FPSSniperRifle*       weapon;
     
+    OM_LIST myList;
+    OrxGui::GLGuiBox* deadBox;
+    void onButtonContinue();
+    void onButtonExit();
+    void showDeadScreen();
+    
 };
 
Index: /branches/presentation/src/world_entities/npcs/adm_turret.cc
===================================================================
--- /branches/presentation/src/world_entities/npcs/adm_turret.cc	(revision 10717)
+++ /branches/presentation/src/world_entities/npcs/adm_turret.cc	(revision 10718)
@@ -174,5 +174,5 @@
       dv2.normalize();
       float angle = dv1.dot(dv2);
-      if (angle > 0.999)
+      if ( angle > 0.999 && this->myTarget->getOMListNumber()!=OM_DEAD )
       {
         if (this->weapon) this->weapon->fire(true);
Index: /branches/presentation/src/world_entities/weapons/aiming_system.cc
===================================================================
--- /branches/presentation/src/world_entities/weapons/aiming_system.cc	(revision 10717)
+++ /branches/presentation/src/world_entities/weapons/aiming_system.cc	(revision 10718)
@@ -100,6 +100,5 @@
   }
 
-  PRINTF(0)("entity: %s\n", nearestEntity->getClassCName());
-    return nearestEntity;
+  return nearestEntity;
 }
 
Index: /branches/presentation/src/world_entities/weapons/bsp_weapon.cc
===================================================================
--- /branches/presentation/src/world_entities/weapons/bsp_weapon.cc	(revision 10717)
+++ /branches/presentation/src/world_entities/weapons/bsp_weapon.cc	(revision 10718)
@@ -170,6 +170,7 @@
   if ( shortestDist < (pos - target->getAbsCoor()).len() )
   {
+
+#ifdef DEBUG_AIMING
     printf("HIT WALL\n");
-#ifdef DEBUG_AIMING
     this->debugDist = shortestDist;
 #endif
@@ -190,14 +191,20 @@
     if (r < p )
     {
+#ifdef DEBUG_AIMING
       printf( "HIT %s\n", target->getClassName().c_str() );
+#endif
       target->hit( this->damage, this );
     }
+#ifdef DEBUG_AIMING
     else
       printf( "MISHIT %s\n", target->getClassName().c_str() );
+#endif
 
   }
   else
   {
+#ifdef DEBUG_AIMING
     printf( "HIT %s\n", target->getClassName().c_str() );
+#endif
     target->hit( this->damage, this );
   }
@@ -217,5 +224,5 @@
     (*it)->draw();
   }
-#if 1
+#ifdef DEBUG_AIMING
   glMatrixMode(GL_MODELVIEW);
   glPushMatrix();
@@ -231,9 +238,6 @@
   Vector mp = this->getAbsCoor();
   Vector op = this->getAbsDir().apply( Vector(1, 0, 0) );
-#ifdef DEBUG_AIMING
+
   op *= debugDist;
-#else
-  op *= 1000;
-#endif
   op += mp;
 
Index: /branches/presentation/src/world_entities/weapons/fps_sniper_rifle.cc
===================================================================
--- /branches/presentation/src/world_entities/weapons/fps_sniper_rifle.cc	(revision 10717)
+++ /branches/presentation/src/world_entities/weapons/fps_sniper_rifle.cc	(revision 10718)
@@ -154,5 +154,4 @@
 void FPSSniperRifle::fire()
 {
-  PRINTF(0)("sniper fire\n");
   this->bFire = true;
 }
@@ -193,7 +192,4 @@
   this->weapon->fire( bFire );
   
-  if ( bFire ){
-      PRINTF(0)("REAL FIRE\n");
-  }
   bFire = false;
 }
Index: /branches/presentation/src/world_entities/world_entity.cc
===================================================================
--- /branches/presentation/src/world_entities/world_entity.cc	(revision 10717)
+++ /branches/presentation/src/world_entities/world_entity.cc	(revision 10718)
@@ -990,5 +990,4 @@
 void WorldEntity::hit(float damage, WorldEntity* killer)
 {
-  PRINTF(0)("TESTS: %i %i %i\n", (forwardDamageToParent), (this->getParent() != NullParent::getNullParent()), (this->getParent()->isA( WorldEntity::staticClassID() )));
   if ( forwardDamageToParent && this->getParent() != NullParent::getNullParent() && this->getParent()->isA( WorldEntity::staticClassID() ) )
   {
@@ -1004,6 +1003,4 @@
   
   this->decreaseHealth(damage);
-
-  PRINTF(0)("Hit me: %s::%s now only %f/%f health\n", this->getClassCName(), this->getCName(), this->getHealth(), this->getHealthMax());
 
   if( this->getHealth() > 0)
