Index: trunk/src/world_entities/weapons/aim.cc
===================================================================
--- trunk/src/world_entities/weapons/aim.cc	(revision 6022)
+++ trunk/src/world_entities/weapons/aim.cc	(revision 6054)
@@ -65,4 +65,6 @@
   this->setClassID(CL_CROSSHAIR, "Aim");
   this->setName("Aim");
+
+  this->addNodeModeFlags(PNODE_REPARENT_TO_NULLPARENT);
 
   this->setLayer(E2D_LAYER_TOP);
Index: trunk/src/world_entities/weapons/guided_missile.cc
===================================================================
--- trunk/src/world_entities/weapons/guided_missile.cc	(revision 6022)
+++ trunk/src/world_entities/weapons/guided_missile.cc	(revision 6054)
@@ -152,7 +152,7 @@
 {
   //Vector v = *this->flightDirection * ( this->speed * time * 1000 + 0.1);
-  if (target != NULL && target->getParent() != NullParent::getInstance())
+  if (target.getParent() != NullParent::getInstance())
    {
-     velocity += ((target->getAbsCoor() - this->getAbsCoor()).getNormalized())*agility;
+     velocity += ((target.getAbsCoor() - this->getAbsCoor()).getNormalized())*agility;
      float speed = velocity.len();
      if (speed > this->maxVelocity)
Index: trunk/src/world_entities/weapons/guided_missile.h
===================================================================
--- trunk/src/world_entities/weapons/guided_missile.h	(revision 6022)
+++ trunk/src/world_entities/weapons/guided_missile.h	(revision 6054)
@@ -9,5 +9,4 @@
 #include "projectile.h"
 
-class Vector;
 class Weapon;
 class ParticleSystem;
Index: trunk/src/world_entities/weapons/projectile.cc
===================================================================
--- trunk/src/world_entities/weapons/projectile.cc	(revision 6022)
+++ trunk/src/world_entities/weapons/projectile.cc	(revision 6054)
@@ -38,5 +38,6 @@
   this->lifeCycle = 0.0;
   this->lifeSpan = 1.0f; /* sec */
-  this->target = NULL;
+  this->target.addNodeModeFlags(PNODE_PROHIBIT_DELETE_WITH_PARENT |
+                                PNODE_REPARENT_TO_NULLPARENT);
 
   this->removeNode();
@@ -103,8 +104,5 @@
 void Projectile::setTarget(PNode* target)
 {
-
-  if (this->target == NULL)
-     this->target = new PNode();
-  this->target->setParent(target);
+  this->target.setParent(target);
 }
 
Index: trunk/src/world_entities/weapons/projectile.h
===================================================================
--- trunk/src/world_entities/weapons/projectile.h	(revision 6022)
+++ trunk/src/world_entities/weapons/projectile.h	(revision 6054)
@@ -55,5 +55,5 @@
     Vector                velocity;                  //!< velocity of the projectile.
 
-    PNode*                target;                    //!< A target for guided Weapons.
+    PNode                 target;                    //!< A target for guided Weapons.
 };
 
Index: trunk/src/world_entities/weapons/weapon.cc
===================================================================
--- trunk/src/world_entities/weapons/weapon.cc	(revision 6022)
+++ trunk/src/world_entities/weapons/weapon.cc	(revision 6054)
@@ -528,11 +528,4 @@
   tick(dt);
 }
-
-/**
- *  this will draw the weapon
-*/
-void Weapon::draw () const
-{}
-
 
 
Index: trunk/src/world_entities/weapons/weapon.h
===================================================================
--- trunk/src/world_entities/weapons/weapon.h	(revision 6022)
+++ trunk/src/world_entities/weapons/weapon.h	(revision 6054)
@@ -148,5 +148,4 @@
 
     virtual void tick(float dt) {};
-    virtual void draw() const;
 
     bool check() const;
Index: trunk/src/world_entities/weapons/weapon_manager.cc
===================================================================
--- trunk/src/world_entities/weapons/weapon_manager.cc	(revision 6022)
+++ trunk/src/world_entities/weapons/weapon_manager.cc	(revision 6054)
@@ -35,5 +35,5 @@
 
 /**
- * this initializes the weaponManager for a given nnumber of weapon slots
+ * @brief this initializes the weaponManager for a given nnumber of weapon slots
  * @param number of weapon slots of the model/ship <= 8 (limitied)
  */
@@ -51,5 +51,5 @@
 
 /**
- * Destroys a WeaponManager
+ * @brief Destroys a WeaponManager
  */
 WeaponManager::~WeaponManager()
@@ -60,5 +60,5 @@
 
 /**
- * initializes the WeaponManager
+ * @brief initializes the WeaponManager
  */
 void WeaponManager::init()
