Index: /branches/objectmanager/src/util/object_manager.cc
===================================================================
--- /branches/objectmanager/src/util/object_manager.cc	(revision 6122)
+++ /branches/objectmanager/src/util/object_manager.cc	(revision 6123)
@@ -134,5 +134,5 @@
   {
     PRINT(0)(" +ObjectManager-LIST: '%s'-size='%d'-----\n", ObjectManager::OMListToString((OM_LIST)omList), this->objectLists[omList].size());
-    if (level > 1)
+  //  if (level >= 1)
     {
       std::list<WorldEntity*>::const_iterator entity;
Index: /branches/objectmanager/src/world_entities/environment.cc
===================================================================
--- /branches/objectmanager/src/world_entities/environment.cc	(revision 6122)
+++ /branches/objectmanager/src/world_entities/environment.cc	(revision 6123)
@@ -62,4 +62,5 @@
 {
   this->setClassID(CL_ENVIRONMENT, "Environment");
+  this->toList(OM_ENVIRON);
 }
 
Index: /branches/objectmanager/src/world_entities/power_ups/power_up.cc
===================================================================
--- /branches/objectmanager/src/world_entities/power_ups/power_up.cc	(revision 6122)
+++ /branches/objectmanager/src/world_entities/power_ups/power_up.cc	(revision 6123)
@@ -28,5 +28,4 @@
   this->setClassID(CL_POWER_UP, "PowerUp");
   this->toList(OM_COMMON);
-
 }
 
Index: /branches/objectmanager/src/world_entities/weapons/bomb.cc
===================================================================
--- /branches/objectmanager/src/world_entities/weapons/bomb.cc	(revision 6122)
+++ /branches/objectmanager/src/world_entities/weapons/bomb.cc	(revision 6123)
@@ -180,4 +180,5 @@
 void Bomb::deactivate()
 {
+  this->toList(OM_NULL);
   State::getWorldEntityList()->remove(this);
   this->lifeCycle = 0.0f;
Index: /branches/objectmanager/src/world_entities/weapons/ground_turret.cc
===================================================================
--- /branches/objectmanager/src/world_entities/weapons/ground_turret.cc	(revision 6122)
+++ /branches/objectmanager/src/world_entities/weapons/ground_turret.cc	(revision 6123)
@@ -89,4 +89,5 @@
   {
     this->left->setParent(this);
+    this->left->toList(this->getOMListNumber());
     this->left->setRelCoor(0,10,-5);
   }
@@ -98,4 +99,5 @@
   {
     this->right->setParent(this);
+    this->right->toList(this->getOMListNumber());
     this->right->setRelCoor(0,10,5);
   }
Index: /branches/objectmanager/src/world_entities/weapons/guided_missile.cc
===================================================================
--- /branches/objectmanager/src/world_entities/weapons/guided_missile.cc	(revision 6122)
+++ /branches/objectmanager/src/world_entities/weapons/guided_missile.cc	(revision 6123)
@@ -129,4 +129,5 @@
   this->lifeCycle = 0.0;
 
+  this->toList(OM_NULL);
 //  GarbageCollector::getInstance()->collect(this);
   State::getWorldEntityList()->remove(this);
Index: /branches/objectmanager/src/world_entities/weapons/laser.cc
===================================================================
--- /branches/objectmanager/src/world_entities/weapons/laser.cc	(revision 6122)
+++ /branches/objectmanager/src/world_entities/weapons/laser.cc	(revision 6123)
@@ -97,6 +97,6 @@
   ParticleEngine::getInstance()->breakConnections(this->emitter);
   this->lifeCycle = 0.0;
+  this->toList(OM_NULL);
 
-//  GarbageCollector::getInstance()->collect(this);
   State::getWorldEntityList()->remove(this);
   this->removeNode();
Index: /branches/objectmanager/src/world_entities/weapons/rocket.cc
===================================================================
--- /branches/objectmanager/src/world_entities/weapons/rocket.cc	(revision 6122)
+++ /branches/objectmanager/src/world_entities/weapons/rocket.cc	(revision 6123)
@@ -125,4 +125,5 @@
   ParticleEngine::getInstance()->breakConnections(this->emitter);
   this->lifeCycle = 0.0;
+  this->toList(OM_NULL);
 
 //  GarbageCollector::getInstance()->collect(this);
Index: /branches/objectmanager/src/world_entities/weapons/test_bullet.cc
===================================================================
--- /branches/objectmanager/src/world_entities/weapons/test_bullet.cc	(revision 6122)
+++ /branches/objectmanager/src/world_entities/weapons/test_bullet.cc	(revision 6123)
@@ -119,4 +119,5 @@
   ParticleEngine::getInstance()->breakConnections(this->emitter);
   this->lifeCycle = 0.0;
+  this->toList(OM_NULL);
 
 //  GarbageCollector::getInstance()->collect(this);
Index: /branches/objectmanager/src/world_entities/weapons/weapon.cc
===================================================================
--- /branches/objectmanager/src/world_entities/weapons/weapon.cc	(revision 6122)
+++ /branches/objectmanager/src/world_entities/weapons/weapon.cc	(revision 6123)
@@ -192,5 +192,9 @@
 {
   if (likely (this->projectileFactory != NULL))
-    return dynamic_cast<Projectile*>(this->projectileFactory->resurrect());
+  {
+    Projectile* pj = dynamic_cast<Projectile*>(this->projectileFactory->resurrect());
+    pj->toList((OM_LIST)(this->getOMListNumber()+1));
+    return pj;
+  }
   else
   {
Index: /branches/objectmanager/src/world_entities/weapons/weapon_manager.cc
===================================================================
--- /branches/objectmanager/src/world_entities/weapons/weapon_manager.cc	(revision 6122)
+++ /branches/objectmanager/src/world_entities/weapons/weapon_manager.cc	(revision 6123)
@@ -35,5 +35,5 @@
  * @param number of weapon slots of the model/ship <= 8 (limitied)
  */
-WeaponManager::WeaponManager(PNode* parent)
+WeaponManager::WeaponManager(WorldEntity* parent)
 {
   this->init();
@@ -155,8 +155,6 @@
  * a PNode.
  */
-void WeaponManager::setParent(PNode* parent)
-{
-  if (parent == NULL)
-    parent = PNode::getNullParent();
+void WeaponManager::setParent(WorldEntity* parent)
+{
   this->parent = parent;
   if (this->parent != NULL)
@@ -246,6 +244,7 @@
   //! @todo check if the weapon is already assigned to another config in another slot
   this->configs[configID][slotID] = weapon;
+  weapon->toList(parent->getOMListNumber());
   if (this->parent != NULL)
-    weapon->setParent(parent);
+    this->parent->addChild(weapon);
   PRINTF(3)("Added a new Weapon to the WeaponManager: config %i/ slot %i\n", configID, slotID);
 }
Index: /branches/objectmanager/src/world_entities/weapons/weapon_manager.h
===================================================================
--- /branches/objectmanager/src/world_entities/weapons/weapon_manager.h	(revision 6122)
+++ /branches/objectmanager/src/world_entities/weapons/weapon_manager.h	(revision 6123)
@@ -45,5 +45,5 @@
 
   public:
-    WeaponManager(PNode* parent);
+    WeaponManager(WorldEntity* parent);
     WeaponManager(const TiXmlElement* root);
     ~WeaponManager();
@@ -63,5 +63,5 @@
     long getSlotCapability(int slot) const { return this->currentSlotConfig[slot].capability; };
 
-    void setParent(PNode* parent);
+    void setParent(WorldEntity* parent);
     /** @returns the Parent (carrier) of this WeaponManager */
     PNode* getParent() const { return this->parent; };
@@ -93,5 +93,5 @@
 
   private:
-    PNode*                  parent;                                   //!< The parent, this WeaponManager is connected to.
+    WorldEntity*            parent;                                   //!< The parent, this WeaponManager is connected to.
 
     int                     slotCount;                                //!< number of weapon slots the ship has.
