Index: /branches/world_entities/src/lib/graphics/spatial_separation/quadtree_node.h
===================================================================
--- /branches/world_entities/src/lib/graphics/spatial_separation/quadtree_node.h	(revision 5800)
+++ /branches/world_entities/src/lib/graphics/spatial_separation/quadtree_node.h	(revision 5801)
@@ -16,5 +16,5 @@
 
 #include "base_object.h"
-#include "vector.h"
+
 #include "abstract_model.h"
 
Index: /branches/world_entities/src/util/loading/game_loader.cc
===================================================================
--- /branches/world_entities/src/util/loading/game_loader.cc	(revision 5800)
+++ /branches/world_entities/src/util/loading/game_loader.cc	(revision 5801)
@@ -357,5 +357,5 @@
     }
 
-  PRINTF(2)("Fabricate failed, TiXmlElement did not contain a value\n");
+  PRINTF(2)("Fabricate failed, TiElement did not contain a value\n");
 
   return NULL;
Index: /branches/world_entities/src/world_entities/weapons/ground_turret.cc
===================================================================
--- /branches/world_entities/src/world_entities/weapons/ground_turret.cc	(revision 5800)
+++ /branches/world_entities/src/world_entities/weapons/ground_turret.cc	(revision 5801)
@@ -81,7 +81,24 @@
    * @todo: make the class Loadable
    */
-//  LoadParamXML(root, "Weapons", this, GroundTurret, loadWeapon);
+  const TiXmlElement* element;
+
+  element = root->FirstChildElement("weapon-left");
+  if (element != NULL) element = element->FirstChildElement();
+  this->left = dynamic_cast<Weapon*>( Factory::getFirst()->fabricate( element) );
+  if (this->left)
+  {
+    this->left->setParent(this);
+    this->left->setRelCoor(0,10,-5);
+  }
+
+  element = root->FirstChildElement("weapon-right");
+  if (element != NULL)  if (element != NULL) element = element->FirstChildElement();
+  this->right = dynamic_cast<Weapon*>( Factory::getFirst()->fabricate( element) );
+  if (this->right)
+  {
+    this->right->setParent(this);
+    this->right->setRelCoor(0,10,5);
+  }
 }
-
 
 /**
@@ -113,10 +130,10 @@
   if (this->model)
     this->model->draw();
-  if (left != NULL)
+
+  glPopMatrix();
+  if (this->left != NULL)
     this->left->draw();
   if (this->right != NULL)
     this->right->draw();
-
-  glPopMatrix();
 }
 
Index: /branches/world_entities/src/world_entities/weapons/ground_turret.h
===================================================================
--- /branches/world_entities/src/world_entities/weapons/ground_turret.h	(revision 5800)
+++ /branches/world_entities/src/world_entities/weapons/ground_turret.h	(revision 5801)
@@ -22,6 +22,4 @@
   void loadParams(const TiXmlElement* root);
 
-  void loadWeapons(const TiXmlElement* root);
-
   virtual void postSpawn ();
   virtual void leftWorld ();
Index: /branches/world_entities/src/world_entities/weapons/turret.cc
===================================================================
--- /branches/world_entities/src/world_entities/weapons/turret.cc	(revision 5800)
+++ /branches/world_entities/src/world_entities/weapons/turret.cc	(revision 5801)
@@ -44,10 +44,9 @@
   this->init();
 
-  this->loadModel("models/guns/turret1.obj");
-
-
   this->setActionSound(WA_SHOOT, "sound/shot1.wav");
   this->setActionSound(WA_ACTIVATE, "sound/vocals/missiles.wav");
   this->setActionSound(WA_RELOAD, "sound/vocals/reload.wav");
+
+  this->loadModel("models/guns/turret1.obj");
 }
 
@@ -72,4 +71,5 @@
 {
   this->setClassID(CL_TURRET, "Turret");
+
 
   Animation3D* animation1 = this->getAnimation(WS_ACTIVATING, this);
@@ -138,5 +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());
@@ -154,15 +154,17 @@
 void Turret::draw () const
 {
-  /* draw gun body */
-  glMatrixMode(GL_MODELVIEW);
-  glPushMatrix();
-  glTranslatef (this->getAbsCoor ().x,
-                this->getAbsCoor ().y,
-                this->getAbsCoor ().z);
-  Vector tmpRot = this->getAbsDir().getSpacialAxis();
-  glRotatef (this->getAbsDir().getSpacialAxisAngle(), tmpRot.x, tmpRot.y, tmpRot.z );
+  if (this->model != NULL)
+  {
+    /* draw gun body */
+    glMatrixMode(GL_MODELVIEW);
+    glPushMatrix();
+    glTranslatef (this->getAbsCoor ().x,
+                  this->getAbsCoor ().y,
+                  this->getAbsCoor ().z);
+    Vector tmpRot = this->getAbsDir().getSpacialAxis();
+    glRotatef (this->getAbsDir().getSpacialAxisAngle(), tmpRot.x, tmpRot.y, tmpRot.z );
 
-  this->model->draw();
-  glPopMatrix();
+    this->model->draw();
+    glPopMatrix();
+  }
 }
-
