Index: /orxonox/trunk/src/defs/class_list.h
===================================================================
--- /orxonox/trunk/src/defs/class_list.h	(revision 4595)
+++ /orxonox/trunk/src/defs/class_list.h	(revision 4596)
@@ -13,4 +13,5 @@
    co-programmer: Benjamin Grauer
 
+   2005-06-10: (bensch) added new sturcture to support multiple inheritance
 */
 
@@ -21,4 +22,11 @@
     this File is used to identify an Object with its class and also with its sub/super-classes.
     this is also used by the ObjectManager to identify and load important classes
+
+    !! important !!
+    When adding a new CLASS be sure about the following:
+      1. if it is a (SUB)SUPERCLASS make sure there is still space left (if not think of a new approach)
+      2. if it is a (SUB)SUPERCLASS also add the CLASS to BaseObject::whatIs() so we have nice output :)
+      3. check if the Number you add is not refered to twice, and that with (SUB)SUPERCLASSES there are no intersections
+      4. be sure to add you stuff in the right section, and don't interest yourself for the order of things. :)
 */
 
@@ -70,26 +78,26 @@
   CL_MASK_LOWLEVEL_CLASS  =    0x00000fff,
 
-  // singleton classes (range from 0x00000001 to 0x000000ff)
-  CL_MASK_SINGLETON       =    0x0000003f,
-  CL_ORXONOX              =    0x00000001,
-  CL_NULL_PARENT          =    0x00000002,
-  CL_PILOT_PARENT         =    0x00000003,
-  CL_OBJECT_MANAGER       =    0x00000004,
-  CL_RESOURCE_MANAGER     =    0x00000005,
-  CL_GARBAGE_COLLECTOR    =    0x00000006,
-  CL_GAME_LOADER          =    0x00000007,
-  CL_GRAPHICS_ENGINE      =    0x00000008,
-  CL_TEXT_ENGINE          =    0x00000009,
-  CL_LIGHT_MANAGER        =    0x0000000a,
-  CL_EVENT_HANDLER        =    0x0000000b,
-  CL_PHYSICS_ENGINE       =    0x0000000c,
-  CL_CD_ENGINE            =    0x0000000d,
-  CL_PARTICLE_ENGINE      =    0x0000000e,
-  CL_SOUND_ENGINE         =    0x0000000f,
-  CL_ANIMATION_PLAYER     =    0x00000010,
-  CL_TRACK_MANAGER        =    0x00000011,
-  CL_TRACK_NODE           =    0x00000012,
-  CL_STATE                =    0x00000013,
-  CL_FRAMEWORK            =    0x00000014,
+  // singleton classes (range from 0x00000f01 to 0x00000fff)
+  CL_MASK_SINGLETON       =    0x00000f00,
+  CL_ORXONOX              =    0x00000f01,
+  CL_NULL_PARENT          =    0x00000f02,
+  CL_PILOT_PARENT         =    0x00000f03,
+  CL_OBJECT_MANAGER       =    0x00000f04,
+  CL_RESOURCE_MANAGER     =    0x00000f05,
+  CL_GARBAGE_COLLECTOR    =    0x00000f06,
+  CL_GAME_LOADER          =    0x00000f07,
+  CL_GRAPHICS_ENGINE      =    0x00000f08,
+  CL_TEXT_ENGINE          =    0x00000f09,
+  CL_LIGHT_MANAGER        =    0x00000f0a,
+  CL_EVENT_HANDLER        =    0x00000f0b,
+  CL_PHYSICS_ENGINE       =    0x00000f0c,
+  CL_CD_ENGINE            =    0x00000f0d,
+  CL_PARTICLE_ENGINE      =    0x00000f0e,
+  CL_SOUND_ENGINE         =    0x00000f0f,
+  CL_ANIMATION_PLAYER     =    0x00000f10,
+  CL_TRACK_MANAGER        =    0x00000f11,
+  CL_TRACK_NODE           =    0x00000f12,
+  CL_STATE                =    0x00000f13,
+  CL_FRAMEWORK            =    0x00000f14,
 
 
@@ -98,4 +106,5 @@
   CL_CAMPAIGN             =    0x00000101,
   CL_WORLD                =    0x00000102,
+
 
   // WorldEntities (range from 0x00000201 to 0x000005ff)
Index: /orxonox/trunk/src/lib/lang/base_object.cc
===================================================================
--- /orxonox/trunk/src/lib/lang/base_object.cc	(revision 4595)
+++ /orxonox/trunk/src/lib/lang/base_object.cc	(revision 4596)
@@ -137,7 +137,9 @@
 {
   PRINT(0)("object %s of class %s: ", this->getName(), this->getClassName());
+  if ((this->classID & CL_MASK_SINGLETON) == CL_MASK_SINGLETON)
+    PRINT(0)("is a Singleton-Class ");
   if (this->classID & CL_MASK_SUPER_CLASS)
   {
-    PRINT(0)("is a derived from the following superclasses:");
+    PRINT(0)(" ->is a derived from the following superclasses:");
     if (this->isA(CL_BASE_OBJECT))
       PRINT(0)(" =BaseObject=");
Index: /orxonox/trunk/src/story_entities/world.cc
===================================================================
--- /orxonox/trunk/src/story_entities/world.cc	(revision 4595)
+++ /orxonox/trunk/src/story_entities/world.cc	(revision 4596)
@@ -524,4 +524,5 @@
   this->localPlayer->whatIs();
   this->whatIs();
+  GraphicsEngine::getInstance()->whatIs();
 }
 
