Index: trunk/src/world_entities/Makefile.am
===================================================================
--- trunk/src/world_entities/Makefile.am	(revision 7015)
+++ trunk/src/world_entities/Makefile.am	(revision 7016)
@@ -24,5 +24,4 @@
                   world_entities/character_attributes.cc \
                   world_entities/test_entity.cc \
-		  world_entities/image_entity.cc \
 		  world_entities/planet.cc \
                   \
@@ -62,5 +61,8 @@
                   \
                   world_entities/environments/water.cc \
-                  world_entities/environments/model_entity.cc
+                  world_entities/environments/model_entity.cc \
+                  \
+                  world_entities/elements/image_entity.cc
+
 
 WorldEntities_HEADERS_ = \
@@ -82,5 +84,4 @@
                  world_entities/character_attributes.h \
                  world_entities/test_entity.h \
-                 world_entities/image_entity.h \
                  world_entities/planet.h \
                  \
@@ -118,3 +119,6 @@
                  \
                  world_entities/environments/water.h \
-                 world_entities/environments/model_entity.h
+                 world_entities/environments/model_entity.h \
+                 \
+                 world_entities/elements/image_entity.h
+
Index: trunk/src/world_entities/elements/image_entity.cc
===================================================================
--- trunk/src/world_entities/elements/image_entity.cc	(revision 7016)
+++ trunk/src/world_entities/elements/image_entity.cc	(revision 7016)
@@ -0,0 +1,159 @@
+/*
+   orxonox - the future of 3D-vertical-scrollers
+
+   Copyright (C) 2004 orx
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+   ### File Specific:
+   main-programmer: Patrick Boenzli
+   co-programmer: ...
+*/
+
+#define DEBUG_SPECIAL_MODULE DEBUG_MODULE_WEAPON
+
+#include "image_entity.h"
+
+#include "load_param.h"
+#include "factory.h"
+
+#include "graphics_engine.h"
+#include "material.h"
+#include "glincl.h"
+#include "state.h"
+
+
+using namespace std;
+
+
+CREATE_FACTORY(ImageEntity, CL_IMAGE_ENTITY);
+
+
+/**
+ * standart constructor
+ */
+ImageEntity::ImageEntity (const TiXmlElement* root)
+{
+  this->init();
+  if(root != NULL)
+    this->loadParams(root);
+}
+
+
+/**
+ * destroys a ImageEntity
+*/
+ImageEntity::~ImageEntity ()
+{
+  if (this->material)
+    delete this->material;
+}
+
+
+/**
+ * initializes the ImageEntity
+ */
+void ImageEntity::init()
+{
+  this->setClassID(CL_IMAGE_ENTITY, "ImageEntity");
+  this->setName("ImageEntity");
+
+  this->setLayer(E2D_LAYER_TOP);
+  this->setRotationSpeed(5);
+  this->setSize(GraphicsEngine::getInstance()->getResolutionX()/10.0, GraphicsEngine::getInstance()->getResolutionY()/10.0);
+
+  this->setBindNode(this);
+  this->material = new Material;
+  this->setTexture("pictures/error_texture.png");
+  this->bBillboarding = false;
+}
+
+
+void ImageEntity::loadParams(const TiXmlElement* root)
+{
+  PNode::loadParams(root);
+  Element2D::loadParams(root);
+
+  LoadParam(root, "texture", this, ImageEntity, setTexture)
+      .describe("the texture-file to load onto the ImageEntity");
+
+  LoadParam(root, "size", this, ImageEntity, setSize)
+      .describe("the size of the ImageEntity in Pixels");
+
+  LoadParam(root, "rotation-speed", this, ImageEntity, setRotationSpeed)
+      .describe("the Speed with which the ImageEntity should rotate");
+
+  LoadParam(root, "billboarding", this, ImageEntity, toggleBillboarding)
+      .describe("sets the Billboard to always look in the direction of the Player");
+}
+
+
+/**
+ * sets the size of the ImageEntity.
+ * @param size the size in pixels
+ */
+void ImageEntity::setSize(float sizeX, float sizeY)
+{
+  this->setSize2D(sizeX, sizeY);
+}
+
+
+/**
+ * sets the material to load
+ * @param textureFile The texture-file to load onto the crosshair
+ */
+void ImageEntity::setTexture(const char* textureFile)
+{
+  this->material->setDiffuseMap(textureFile);
+}
+
+
+/** this turns on/off the billboarding of this WorldEntity
+ *
+ * This means that the image will always look in the direction of the Player
+ */
+void ImageEntity::toggleBillboarding()
+{
+  this->bBillboarding = !this->bBillboarding;
+}
+
+
+/**
+ * ticks the ImageEntity
+ * @param dt the time to ticks
+ */
+void ImageEntity::tick(float dt)
+{
+
+}
+
+
+/**
+ * draws the crosshair
+ */
+void ImageEntity::draw() const
+{
+  if( !this->isVisible())
+    return;
+
+  glPushMatrix();
+  glTranslatef(this->getAbsCoor2D().x, this->getAbsCoor2D().y, 0);
+
+  //glRotatef(this->getAbsDir2D(), 0,0,1);
+  this->material->select();
+  glBegin(GL_TRIANGLE_STRIP);
+  glTexCoord2f(0, 0);
+  glVertex2f(-this->getSizeX2D(), -this->getSizeY2D());
+  glTexCoord2f(1, 0);
+  glVertex2f(this->getSizeX2D(), -this->getSizeY2D());
+  glTexCoord2f(0, 1);
+  glVertex2f(-this->getSizeX2D(), this->getSizeY2D());
+  glTexCoord2f(1, 1);
+  glVertex2f(this->getSizeX2D(), this->getSizeY2D());
+  glEnd();
+  glPopMatrix();
+
+}
Index: trunk/src/world_entities/elements/image_entity.h
===================================================================
--- trunk/src/world_entities/elements/image_entity.h	(revision 7016)
+++ trunk/src/world_entities/elements/image_entity.h	(revision 7016)
@@ -0,0 +1,46 @@
+/*!
+ * @file image_entity.h
+ *  Definition of an ImageEntity
+ */
+
+#ifndef _IMAGE_ENTITY_H
+#define _IMAGE_ENTITY_H
+
+#include "p_node.h"
+#include "element_2d.h"
+#include "event_listener.h"
+
+#include "vector.h"
+
+
+// FORWARD DECLARATION
+class Model;
+class Material;
+class TiXmlElement;
+
+//! A class that enables the
+class ImageEntity : public PNode, public Element2D {
+
+ public:
+  ImageEntity(const TiXmlElement* root = NULL);
+  virtual ~ImageEntity();
+
+  void init();
+  virtual void loadParams(const TiXmlElement* root);
+
+  void setSize(float sizeX, float sizeY);
+  void setTexture(const char* textureFile);
+  /** @param rotationSpeed the speed at what the crosshair should rotate */
+  void setRotationSpeed(float rotationSpeed) { this->rotationSpeed = rotationSpeed; };
+  void toggleBillboarding();
+
+  virtual void tick(float dt);
+  virtual void draw() const;
+
+ private:
+   Material*        material;             //!< a material for the Aim.
+   float            rotationSpeed;        //!< Speed of the Rotation.
+   bool             bBillboarding;        //!< true if billboarding is on
+};
+
+#endif /* _IMAGE_ENTITY_H */
Index: trunk/src/world_entities/image_entity.cc
===================================================================
--- trunk/src/world_entities/image_entity.cc	(revision 7015)
+++ 	(revision )
@@ -1,159 +1,0 @@
-/*
-   orxonox - the future of 3D-vertical-scrollers
-
-   Copyright (C) 2004 orx
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2, or (at your option)
-   any later version.
-
-   ### File Specific:
-   main-programmer: Patrick Boenzli
-   co-programmer: ...
-*/
-
-#define DEBUG_SPECIAL_MODULE DEBUG_MODULE_WEAPON
-
-#include "image_entity.h"
-
-#include "load_param.h"
-#include "factory.h"
-
-#include "graphics_engine.h"
-#include "material.h"
-#include "glincl.h"
-#include "state.h"
-
-
-using namespace std;
-
-
-CREATE_FACTORY(ImageEntity, CL_IMAGE_ENTITY);
-
-
-/**
- * standart constructor
- */
-ImageEntity::ImageEntity (const TiXmlElement* root)
-{
-  this->init();
-  if(root != NULL)
-    this->loadParams(root);
-}
-
-
-/**
- * destroys a ImageEntity
-*/
-ImageEntity::~ImageEntity ()
-{
-  if (this->material)
-    delete this->material;
-}
-
-
-/**
- * initializes the ImageEntity
- */
-void ImageEntity::init()
-{
-  this->setClassID(CL_IMAGE_ENTITY, "ImageEntity");
-  this->setName("ImageEntity");
-
-  this->setLayer(E2D_LAYER_TOP);
-  this->setRotationSpeed(5);
-  this->setSize(GraphicsEngine::getInstance()->getResolutionX()/10.0, GraphicsEngine::getInstance()->getResolutionY()/10.0);
-
-  this->setBindNode(this);
-  this->material = new Material;
-  this->setTexture("pictures/error_texture.png");
-  this->bBillboarding = false;
-}
-
-
-void ImageEntity::loadParams(const TiXmlElement* root)
-{
-  PNode::loadParams(root);
-  Element2D::loadParams(root);
-
-  LoadParam(root, "texture", this, ImageEntity, setTexture)
-      .describe("the texture-file to load onto the ImageEntity");
-
-  LoadParam(root, "size", this, ImageEntity, setSize)
-      .describe("the size of the ImageEntity in Pixels");
-
-  LoadParam(root, "rotation-speed", this, ImageEntity, setRotationSpeed)
-      .describe("the Speed with which the ImageEntity should rotate");
-
-  LoadParam(root, "billboarding", this, ImageEntity, toggleBillboarding)
-      .describe("sets the Billboard to always look in the direction of the Player");
-}
-
-
-/**
- * sets the size of the ImageEntity.
- * @param size the size in pixels
- */
-void ImageEntity::setSize(float sizeX, float sizeY)
-{
-  this->setSize2D(sizeX, sizeY);
-}
-
-
-/**
- * sets the material to load
- * @param textureFile The texture-file to load onto the crosshair
- */
-void ImageEntity::setTexture(const char* textureFile)
-{
-  this->material->setDiffuseMap(textureFile);
-}
-
-
-/** this turns on/off the billboarding of this WorldEntity
- *
- * This means that the image will always look in the direction of the Player
- */
-void ImageEntity::toggleBillboarding()
-{
-  this->bBillboarding = !this->bBillboarding;
-}
-
-
-/**
- * ticks the ImageEntity
- * @param dt the time to ticks
- */
-void ImageEntity::tick(float dt)
-{
-
-}
-
-
-/**
- * draws the crosshair
- */
-void ImageEntity::draw() const
-{
-  if( !this->isVisible())
-    return;
-
-  glPushMatrix();
-  glTranslatef(this->getAbsCoor2D().x, this->getAbsCoor2D().y, 0);
-
-  //glRotatef(this->getAbsDir2D(), 0,0,1);
-  this->material->select();
-  glBegin(GL_TRIANGLE_STRIP);
-  glTexCoord2f(0, 0);
-  glVertex2f(-this->getSizeX2D(), -this->getSizeY2D());
-  glTexCoord2f(1, 0);
-  glVertex2f(this->getSizeX2D(), -this->getSizeY2D());
-  glTexCoord2f(0, 1);
-  glVertex2f(-this->getSizeX2D(), this->getSizeY2D());
-  glTexCoord2f(1, 1);
-  glVertex2f(this->getSizeX2D(), this->getSizeY2D());
-  glEnd();
-  glPopMatrix();
-
-}
Index: trunk/src/world_entities/image_entity.h
===================================================================
--- trunk/src/world_entities/image_entity.h	(revision 7015)
+++ 	(revision )
@@ -1,46 +1,0 @@
-/*!
- * @file image_entity.h
- *  Definition of an ImageEntity
- */
-
-#ifndef _IMAGE_ENTITY_H
-#define _IMAGE_ENTITY_H
-
-#include "p_node.h"
-#include "element_2d.h"
-#include "event_listener.h"
-
-#include "vector.h"
-
-
-// FORWARD DECLARATION
-class Model;
-class Material;
-class TiXmlElement;
-
-//! A class that enables the
-class ImageEntity : public PNode, public Element2D {
-
- public:
-  ImageEntity(const TiXmlElement* root = NULL);
-  virtual ~ImageEntity();
-
-  void init();
-  virtual void loadParams(const TiXmlElement* root);
-
-  void setSize(float sizeX, float sizeY);
-  void setTexture(const char* textureFile);
-  /** @param rotationSpeed the speed at what the crosshair should rotate */
-  void setRotationSpeed(float rotationSpeed) { this->rotationSpeed = rotationSpeed; };
-  void toggleBillboarding();
-
-  virtual void tick(float dt);
-  virtual void draw() const;
-
- private:
-   Material*        material;             //!< a material for the Aim.
-   float            rotationSpeed;        //!< Speed of the Rotation.
-   bool             bBillboarding;        //!< true if billboarding is on
-};
-
-#endif /* _IMAGE_ENTITY_H */
