Index: code/branches/objecthierarchy/src/orxonox/overlays/hud/ChatOverlay.cc
===================================================================
--- code/branches/objecthierarchy/src/orxonox/overlays/hud/ChatOverlay.cc	(revision 2012)
+++ code/branches/objecthierarchy/src/orxonox/overlays/hud/ChatOverlay.cc	(revision 2019)
@@ -39,5 +39,5 @@
 
 #include "GraphicsEngine.h"
-#include "objects/infos/Level.h"
+#include "LevelManager.h"
 #include "objects/infos/PlayerInfo.h"
 #include "overlays/console/InGameConsole.h"
@@ -50,5 +50,5 @@
     CreateFactory(ChatOverlay);
 
-    ChatOverlay::ChatOverlay()
+    ChatOverlay::ChatOverlay(BaseObject* creator) : OverlayText(creator)
     {
         RegisterObject(ChatOverlay);
@@ -76,5 +76,5 @@
             std::string name = "unknown";
 
-            PlayerInfo* player = Level::getClient(senderID);
+            PlayerInfo* player = LevelManager::getInstance().getClient(senderID);
             if (player)
                 name = player->getName();
Index: code/branches/objecthierarchy/src/orxonox/overlays/hud/ChatOverlay.h
===================================================================
--- code/branches/objecthierarchy/src/orxonox/overlays/hud/ChatOverlay.h	(revision 2012)
+++ code/branches/objecthierarchy/src/orxonox/overlays/hud/ChatOverlay.h	(revision 2019)
@@ -42,5 +42,5 @@
     {
         public:
-            ChatOverlay();
+            ChatOverlay(BaseObject* creator);
             ~ChatOverlay();
 
Index: code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDBar.cc
===================================================================
--- code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDBar.cc	(revision 2012)
+++ code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDBar.cc	(revision 2019)
@@ -38,4 +38,5 @@
 
 #include "util/Convert.h"
+#include "util/String.h"
 #include "core/CoreIncludes.h"
 #include "core/XMLPort.h"
@@ -45,6 +46,5 @@
     CreateFactory(BarColour);
 
-    BarColour::BarColour()
-        : position_(0.0)
+    BarColour::BarColour(BaseObject* creator) : BaseObject(creator), position_(0.0)
     {
         RegisterObject(BarColour);
@@ -63,7 +63,5 @@
     unsigned int HUDBar::materialcount_s = 0;
 
-    HUDBar::HUDBar()
-        : bar_(0)
-        , textureUnitState_(0)
+    HUDBar::HUDBar(BaseObject* creator) : OrxonoxOverlay(creator), bar_(0), textureUnitState_(0)
     {
         RegisterObject(HUDBar);
@@ -92,5 +90,5 @@
 
             this->bar_ = static_cast<Ogre::PanelOverlayElement*>(Ogre::OverlayManager::getSingleton()
-                .createOverlayElement("Panel", "HUDBar_bar_" + getUniqueNumberStr()));
+                .createOverlayElement("Panel", "HUDBar_bar_" + getUniqueNumberString()));
             this->bar_->setMaterialName(materialname);
             this->background_->addChild(bar_);
Index: code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDBar.h
===================================================================
--- code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDBar.h	(revision 2012)
+++ code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDBar.h	(revision 2019)
@@ -44,5 +44,5 @@
     {
     public:
-        BarColour();
+        BarColour(BaseObject* creator);
         ~BarColour() { }
 
@@ -64,5 +64,5 @@
     {
     public:
-        HUDBar();
+        HUDBar(BaseObject* creator);
         virtual ~HUDBar();
 
Index: code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDNavigation.cc
===================================================================
--- code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDNavigation.cc	(revision 2012)
+++ code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDNavigation.cc	(revision 2019)
@@ -46,6 +46,7 @@
     CreateFactory(HUDNavigation);
 
-    HUDNavigation::HUDNavigation()
-        : navMarker_(0)
+    HUDNavigation::HUDNavigation(BaseObject* creator)
+        : OrxonoxOverlay(creator)
+        , navMarker_(0)
         , aimMarker_(0)
         , navText_(0)
@@ -72,9 +73,9 @@
             // create nav text
             navText_ = static_cast<Ogre::TextAreaOverlayElement*>(Ogre::OverlayManager::getSingleton()
-                .createOverlayElement("TextArea", "HUDNavigation_navText_" + getUniqueNumberStr()));
+                .createOverlayElement("TextArea", "HUDNavigation_navText_" + getUniqueNumberString()));
 
             // create nav marker
             navMarker_ = static_cast<Ogre::PanelOverlayElement*>(Ogre::OverlayManager::getSingleton()
-                .createOverlayElement("Panel", "HUDNavigation_navMarker_" + getUniqueNumberStr()));
+                .createOverlayElement("Panel", "HUDNavigation_navMarker_" + getUniqueNumberString()));
             navMarker_->setMaterialName("Orxonox/NavArrows");
             wasOutOfView_ = true; // just to ensure the material is changed right the first time..
@@ -82,5 +83,5 @@
             // create aim marker
             aimMarker_ = static_cast<Ogre::PanelOverlayElement*>(Ogre::OverlayManager::getSingleton()
-                .createOverlayElement("Panel", "HUDNavigation_aimMarker_" + getUniqueNumberStr()));
+                .createOverlayElement("Panel", "HUDNavigation_aimMarker_" + getUniqueNumberString()));
             aimMarker_->setMaterialName("Orxonox/NavCrosshair");
 
@@ -112,5 +113,5 @@
             return this->navText_->getFontName();
         else
-            return blankString;
+            return BLANKSTRING;
     }
 
Index: code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDNavigation.h
===================================================================
--- code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDNavigation.h	(revision 2012)
+++ code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDNavigation.h	(revision 2019)
@@ -41,5 +41,5 @@
     {
     public:
-        HUDNavigation();
+        HUDNavigation(BaseObject* creator);
         ~HUDNavigation();
 
Index: code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDRadar.cc
===================================================================
--- code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDRadar.cc	(revision 2012)
+++ code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDRadar.cc	(revision 2019)
@@ -35,4 +35,5 @@
 
 #include "util/Math.h"
+#include "util/String.h"
 #include "core/ConsoleCommand.h"
 #include "core/CoreIncludes.h"
@@ -45,6 +46,5 @@
     CreateFactory(HUDRadar);
 
-    HUDRadar::HUDRadar()
-        : marker_(0)
+    HUDRadar::HUDRadar(BaseObject* creator) : OrxonoxOverlay(creator), marker_(0)
     {
         RegisterObject(HUDRadar);
@@ -69,5 +69,5 @@
         {
             marker_ = static_cast<Ogre::PanelOverlayElement*>(Ogre::OverlayManager::getSingleton()
-                .createOverlayElement("Panel", "HUDRadar_marker_" + getUniqueNumberStr()));
+                .createOverlayElement("Panel", "HUDRadar_marker_" + getUniqueNumberString()));
             marker_->setMaterialName("Orxonox/RadarMarker");
             overlay_->add2D(marker_);
@@ -107,5 +107,5 @@
             // we have to create a new entry
             panel = static_cast<Ogre::PanelOverlayElement*>(
-                Ogre::OverlayManager::getSingleton().createOverlayElement("Panel", "RadarDot" + getUniqueNumberStr()));
+                Ogre::OverlayManager::getSingleton().createOverlayElement("Panel", "RadarDot" + getUniqueNumberString()));
             radarDots_.push_back(panel);
             // get right material
Index: code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDRadar.h
===================================================================
--- code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDRadar.h	(revision 2012)
+++ code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDRadar.h	(revision 2019)
@@ -45,5 +45,5 @@
     {
     public:
-        HUDRadar();
+        HUDRadar(BaseObject* creator);
         ~HUDRadar();
 
Index: code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDSpeedBar.cc
===================================================================
--- code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDSpeedBar.cc	(revision 2012)
+++ code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDSpeedBar.cc	(revision 2019)
@@ -36,5 +36,5 @@
     CreateFactory(HUDSpeedBar);
 
-    HUDSpeedBar::HUDSpeedBar()
+    HUDSpeedBar::HUDSpeedBar(BaseObject* creator) : HUDBar(creator)
     {
         RegisterObject(HUDSpeedBar);
Index: code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDSpeedBar.h
===================================================================
--- code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDSpeedBar.h	(revision 2012)
+++ code/branches/objecthierarchy/src/orxonox/overlays/hud/HUDSpeedBar.h	(revision 2019)
@@ -41,5 +41,5 @@
     {
     public:
-        HUDSpeedBar();
+        HUDSpeedBar(BaseObject* creator);
         ~HUDSpeedBar();
 
