Index: trunk/src/defs/functor_list.h
===================================================================
--- trunk/src/defs/functor_list.h	(revision 5142)
+++ trunk/src/defs/functor_list.h	(revision 5143)
@@ -32,5 +32,5 @@
 #define FUNCTOR_MAX_ARGUMENTS                5
 
-typedef enum ParameterType
+typedef enum
 {
   ParameterNull,
@@ -43,5 +43,5 @@
   ParameterLong,
   /* ... */
-};
+} ParameterType;
 
 
Index: trunk/src/lib/event/event.h
===================================================================
--- trunk/src/lib/event/event.h	(revision 5142)
+++ trunk/src/lib/event/event.h	(revision 5143)
@@ -11,7 +11,5 @@
 
 #include "base_object.h"
-#include "event_def.h"
 #include "sdlincl.h"
-
 
 //! An abstract event class
Index: trunk/src/lib/event/event_listener.h
===================================================================
--- trunk/src/lib/event/event_listener.h	(revision 5142)
+++ trunk/src/lib/event/event_listener.h	(revision 5143)
@@ -1,3 +1,3 @@
-/*! 
+/*!
  * @file event_listener.h
   *  Definition of an event listener base class
@@ -10,6 +10,4 @@
 #include "base_object.h"
 #include "event.h"
-#include "event_def.h"
-
 
 //! A class for event listener
Index: trunk/src/lib/physics/physics_interface.h
===================================================================
--- trunk/src/lib/physics/physics_interface.h	(revision 5142)
+++ trunk/src/lib/physics/physics_interface.h	(revision 5143)
@@ -7,6 +7,7 @@
 #define _PHYSICS_INTERFACE_H
 
+#include "base_object.h"
+
 #include "vector.h"
-#include "base_object.h"
 
 #ifndef NULL
Index: trunk/src/util/shell_command.cc
===================================================================
--- trunk/src/util/shell_command.cc	(revision 5142)
+++ trunk/src/util/shell_command.cc	(revision 5143)
@@ -48,5 +48,5 @@
     paramCount = FUNCTOR_MAX_ARGUMENTS;
   this->paramCount = paramCount;
-  this->parameters = new ParameterType[paramCount];
+  this->parameters = new long[paramCount];
 
   for (unsigned int i = 0; i < paramCount; i++)
@@ -146,19 +146,39 @@
           commandBegin++;
         if (strncmp (commandBegin, elem->getName(), strlen(elem->getName())))
-            continue;
+          continue;
         objectPointer = ClassList::getList(elem->classID)->firstElement();
       }
       else
       {
+        while(*commandBegin == ' ')
+          commandBegin++;
+        tIterator<BaseObject>* iterBO = ClassList::getList(elem->classID)->getIterator();
+        BaseObject* enumBO = iterBO->firstElement();
+        {
+          if( !strncmp(commandBegin, enumBO->getName(), strlen(enumBO->getName())))
+          {
+            objectPointer = enumBO;
+            break;
+          }
+          enumBO = iterBO->nextElement();
+        }
+        delete iterBO;
 
+        if (objectPointer == NULL)
+          break;
+        commandBegin = commandBegin + strlen(objectPointer->getName());
+        while(*commandBegin == ' ')
+          commandBegin++;
       }
       const char* commandEnd = strchr(commandBegin, ' ');
       if (commandEnd == NULL)
-        commandEnd = executionString + strlen(executionString);
+        commandEnd = commandBegin + strlen(commandBegin);
 
       if (objectPointer != NULL)
+      {
         elem->executeCommand(objectPointer, commandEnd);
-      delete iterator;
-      return true;
+        delete iterator;
+        return true;
+      }
     }
     elem = iterator->nextElement();
Index: trunk/src/util/shell_command.h
===================================================================
--- trunk/src/util/shell_command.h	(revision 5142)
+++ trunk/src/util/shell_command.h	(revision 5143)
@@ -10,4 +10,5 @@
 
 #include "helper_functions.h"
+#include "functor_list.h"
 
 #include <stdarg.h>
@@ -15,5 +16,4 @@
 #define MAX_SHELL_COMMAND_SIZE
 
-#include "functor_list.h"
 
 
@@ -94,5 +94,5 @@
     void*                            functionPointer;     //!< The pointeer to the function of the Class (or static pointer if ClassID == CL_NULL )
     unsigned int                     paramCount;          //!< the count of parameters
-    ParameterType*                   parameters;          //!< Parameters
+    long*                            parameters;          //!< Parameters
     bool                             isSingleton;         //!< if the Class is Singleton @todo autocheck
 
Index: trunk/src/world_entities/environment.cc
===================================================================
--- trunk/src/world_entities/environment.cc	(revision 5142)
+++ trunk/src/world_entities/environment.cc	(revision 5143)
@@ -18,6 +18,7 @@
 
 #include "environment.h"
-#include "stdincl.h"
-#include "world_entity.h"
+
+#include "resource_manager.h"
+
 #include "vector.h"
 #include "objModel.h"
Index: trunk/src/world_entities/player.cc
===================================================================
--- trunk/src/world_entities/player.cc	(revision 5142)
+++ trunk/src/world_entities/player.cc	(revision 5143)
@@ -18,4 +18,5 @@
 #include "player.h"
 
+#include "shell_command.h"
 #include "track_manager.h"
 #include "objModel.h"
@@ -114,4 +115,5 @@
 
 
+  ShellCommand<Player>::registerCommand("init", CL_PLAYER, &Player::init);
   //this->weaponMan->addWeapon(turret, 3, 0);
 
Index: trunk/src/world_entities/terrain.cc
===================================================================
--- trunk/src/world_entities/terrain.cc	(revision 5142)
+++ trunk/src/world_entities/terrain.cc	(revision 5143)
@@ -23,5 +23,5 @@
 #include "factory.h"
 #include "load_param.h"
-
+#include "resource_manager.h"
 #include "spatial_separation.h"
 
Index: trunk/src/world_entities/weapons/weapon.cc
===================================================================
--- trunk/src/world_entities/weapons/weapon.cc	(revision 5142)
+++ trunk/src/world_entities/weapons/weapon.cc	(revision 5143)
@@ -23,4 +23,5 @@
 #include "projectile.h"
 
+#include "resource_manager.h"
 #include "class_list.h"
 #include "load_param.h"
Index: trunk/src/world_entities/world_entity.cc
===================================================================
--- trunk/src/world_entities/world_entity.cc	(revision 5142)
+++ trunk/src/world_entities/world_entity.cc	(revision 5143)
@@ -19,4 +19,7 @@
 
 #include "world_entity.h"
+
+#include "resource_manager.h"
+#include "load_param.h"
 #include "list.h"
 #include "vector.h"
Index: trunk/src/world_entities/world_entity.h
===================================================================
--- trunk/src/world_entities/world_entity.h	(revision 5142)
+++ trunk/src/world_entities/world_entity.h	(revision 5143)
@@ -8,8 +8,6 @@
 
 #include "p_node.h"
-#include "resource_manager.h"
+
 #include "factory.h"
-#include "load_param.h"
-#include "bv_tree.h"
 #include "model.h"
 
@@ -20,4 +18,5 @@
 class SoundBuffer;
 class SoundSource;
+class BVTree;
 
 
@@ -50,5 +49,5 @@
 
   /** @returns a reference to the obb tree of this worldentity */
-  BVTree* getOBBTree() { return this->obbTree; }
+  BVTree* getOBBTree() { return this->obbTree; };
 
   virtual void postSpawn ();
