Index: branches/guidedmissile/aclocal.m4
===================================================================
--- branches/guidedmissile/aclocal.m4	(revision 5763)
+++ branches/guidedmissile/aclocal.m4	(revision 5764)
@@ -1,3 +1,3 @@
-# generated automatically by aclocal 1.9.6 -*- Autoconf -*-
+# generated automatically by aclocal 1.9.5 -*- Autoconf -*-
 
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
@@ -29,5 +29,5 @@
 # This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-	 [AM_AUTOMAKE_VERSION([1.9.6])])
+	 [AM_AUTOMAKE_VERSION([1.9.5])])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
Index: branches/guidedmissile/src/world_entities/weapons/aiming_turret.cc
===================================================================
--- branches/guidedmissile/src/world_entities/weapons/aiming_turret.cc	(revision 5763)
+++ branches/guidedmissile/src/world_entities/weapons/aiming_turret.cc	(revision 5764)
@@ -145,4 +145,6 @@
     pj->setVelocity(/*this->getVelocity()+*/(this->getAbsDir().apply(Vector(1,0,0))*250.0 + VECTOR_RAND(13)
             /*target->getAbsCoor() - this->getAbsCoor()*/)*.5);//this->getVelocity());
+    pj->setTarget(this->target->getParent());
+
 
   pj->setParent(NullParent::getInstance());
Index: branches/guidedmissile/src/world_entities/weapons/guided_missile.cc
===================================================================
--- branches/guidedmissile/src/world_entities/weapons/guided_missile.cc	(revision 5763)
+++ branches/guidedmissile/src/world_entities/weapons/guided_missile.cc	(revision 5764)
@@ -42,5 +42,5 @@
 
   float modelSize = .3;
-  this->loadModel("models/projectiles/orx-guided_missile.obj", .3);
+  this->loadModel("models/projectiles/orx-rocket.obj", .3);
 
   this->energyMin = 1;
@@ -48,5 +48,5 @@
   this->remove();
   this->lifeSpan = 5;
-  this->agility = 1;
+  this->agility = 5;
 
   this->emitter = new ParticleEmitter(Vector(0,1,0), M_2_PI, 100, 5);
@@ -82,11 +82,4 @@
 ParticleSystem* GuidedMissile::explosionParticles = NULL;
 
-
-void GuidedMissile::setTarget(PNode* target)
-{
-
-  this->target.setParent(target);
-
-}
 
 
@@ -158,6 +151,9 @@
   //Vector v = *this->flightDirection * ( this->speed * time * 1000 + 0.1);
   float speed = velocity.len();
-  velocity += ((target.getAbsCoor() - this->getAbsCoor()).getNormalized())*agility;
-  velocity *= speed/velocity.len();
+  if (target != NULL)
+   {
+     velocity += ((target->getAbsCoor() - this->getAbsCoor()).getNormalized())*agility;
+     velocity *= speed/velocity.len();
+   }
   Vector v = this->velocity * (time);
   this->shiftCoor(v);
Index: branches/guidedmissile/src/world_entities/weapons/guided_missile.h
===================================================================
--- branches/guidedmissile/src/world_entities/weapons/guided_missile.h	(revision 5763)
+++ branches/guidedmissile/src/world_entities/weapons/guided_missile.h	(revision 5764)
@@ -22,5 +22,4 @@
     virtual ~GuidedMissile ();
 
-    void setTarget(PNode* target);
     virtual void activate();
     virtual void deactivate();
@@ -40,5 +39,4 @@
 
     ParticleEmitter*                  emitter;
-    PNode                             target;
     float                             agility;
 
Index: branches/guidedmissile/src/world_entities/weapons/projectile.cc
===================================================================
--- branches/guidedmissile/src/world_entities/weapons/projectile.cc	(revision 5763)
+++ branches/guidedmissile/src/world_entities/weapons/projectile.cc	(revision 5764)
@@ -38,4 +38,5 @@
   this->lifeCycle = 0.0;
   this->lifeSpan = 1.0f; /* sec */
+  this->target = NULL;
 
   this->remove();
@@ -98,4 +99,15 @@
 }
 
+
+
+void Projectile::setTarget(PNode* target)
+{
+
+  if (this->target == NULL)
+     this->target = new PNode();
+  this->target->setParent(target);
+}
+
+
 /**
  * signal tick, time dependent things will be handled here
Index: branches/guidedmissile/src/world_entities/weapons/projectile.h
===================================================================
--- branches/guidedmissile/src/world_entities/weapons/projectile.h	(revision 5763)
+++ branches/guidedmissile/src/world_entities/weapons/projectile.h	(revision 5764)
@@ -31,4 +31,5 @@
     inline bool isChageable() { return this->bChargeable; };
 
+    void setTarget(PNode* target);
 
     /** @brief This is called, when the Projectile is Emitted */
@@ -54,4 +55,6 @@
 
     Vector                velocity;                  //!< velocity of the projectile.
+
+    PNode*                target;                    //!< A target for guided Weapons.
 };
 
Index: branches/guidedmissile/src/world_entities/weapons/turret.cc
===================================================================
--- branches/guidedmissile/src/world_entities/weapons/turret.cc	(revision 5763)
+++ branches/guidedmissile/src/world_entities/weapons/turret.cc	(revision 5764)
@@ -138,4 +138,5 @@
     pj->setVelocity(this->getVelocity()+(this->getAbsDir().apply(Vector(1,0,0))*100.0 + VECTOR_RAND(13)
             /*target->getAbsCoor() - this->getAbsCoor()*/)*.5);//this->getVelocity());
+  
 
   pj->setParent(NullParent::getInstance());
