Index: /code/branches/Dialog_HS16/data/levels/missionOne.oxw
===================================================================
--- /code/branches/Dialog_HS16/data/levels/missionOne.oxw	(revision 11316)
+++ /code/branches/Dialog_HS16/data/levels/missionOne.oxw	(revision 11317)
@@ -35,5 +35,5 @@
     displayTime=3.9
     position="0.2, 0, 0.1, 0"
-    fontSize="23"
+    fontSize="19"
     fontColor="0.3, 1, 0.2, 0.8"
     alignment="HorzCentred"
@@ -371,5 +371,5 @@
 
     <DistanceTrigger name="spawndelaytrigger0" position="800,700,600" target="Pawn" distance=10 stayActive="true" delay=2/>
-    <Dialogue speaker="ABC: " message=" Press (F3) to see your mission briefing.">
+    <Dialogue speaker="Speaker" message=" Press (F3) to see your mission briefing." portrait="Orxonox/DialogueHUD_Person">
         <events>
             <trigger>
@@ -410,5 +410,5 @@
 
     <DistanceTrigger name="flying1" position="800,700,600" target="Pawn" distance=10 stayActive="true" delay=6/>
-    <SimpleNotification message="Let's fly to the blinking light.">
+    <Dialogue speaker="Speaker" message="Let's fly to the blinking light." portrait="Orxonox/DialogueHUD_Person">
         <events>
             <trigger>
@@ -416,8 +416,8 @@
             </trigger>
         </events>
-    </SimpleNotification>
+    </Dialogue>
 
     <DistanceTrigger name="flying2" position="800,700,600" target="Pawn" distance=10 stayActive="true" delay=10/>
-    <SimpleNotification message="Use (W) to accelerate and the mouse to steer.">
+    <Dialogue speaker="Speaker" message="Use (W) to accelerate and the mouse to steer." portrait="Orxonox/DialogueHUD_Person">
         <events>
             <trigger>
@@ -425,5 +425,5 @@
             </trigger>
         </events>
-    </SimpleNotification>
+    </Dialogue>
 
 <!-- QUEST-Trigger && Message Trigger: navigationend is activated after flying4 was triggered -->
@@ -433,5 +433,5 @@
 
 
-    <Dialogue message="Three arrows just appeared.">
+    <Dialogue speaker="Speaker2" message="Three arrows just appeared." portrait="Orxonox/DialogueHUD_Person2">
         <events>
             <trigger>
@@ -442,5 +442,5 @@
 
     <DistanceTrigger name="flying5" position="-900,640,600" target="Pawn" distance=60 stayActive="true" delay=5/>
-    <SimpleNotification message="Follow those arrows.">
+    <Dialogue speaker="Speaker2" message="Follow those arrows." portrait="Orxonox/DialogueHUD_Person2">
         <events>
             <trigger>
@@ -448,5 +448,5 @@
             </trigger>
         </events>
-    </SimpleNotification>
+    </Dialogue>
 
 <!-------------------------------------- PART ONE : Destroy boxes --------------------------------------->
@@ -486,5 +486,5 @@
 
 <!-- @Text: How to shoot-->
-    <SimpleNotification message="Destroy the four boxes." broadcast="true">
+    <Dialogue speaker="Speaker" message="Destroy the four boxes." portrait="Orxonox/DialogueHUD_Person" broadcast="true">
         <events>
             <trigger>
@@ -492,7 +492,7 @@
             </trigger>
         </events>
-    </SimpleNotification>
-
-    <SimpleNotification message=" 1. Aim the a red cycle." broadcast="true">
+    </Dialogue>
+
+    <SimpleNotification message=" 1. Aim at the red cycle." broadcast="true">
         <events>
             <trigger>
Index: /code/branches/Dialog_HS16/data/overlays/HUDTemplates3.oxo
===================================================================
--- /code/branches/Dialog_HS16/data/overlays/HUDTemplates3.oxo	(revision 11316)
+++ /code/branches/Dialog_HS16/data/overlays/HUDTemplates3.oxo	(revision 11317)
@@ -188,5 +188,7 @@
      name     = "Dialogue"
      position = "0.5, 0.85"
-     font     = "VeraMono"
+     pickpoint = "0.5, 0.5"
+     font     = "VeraMono"
+     size = "0.2, 0.2"
      textsize = 0.1
      colour   = "1.0, 1.0, 0.0, 0.8"
Index: /code/branches/Dialog_HS16/src/modules/notifications/CMakeLists.txt
===================================================================
--- /code/branches/Dialog_HS16/src/modules/notifications/CMakeLists.txt	(revision 11316)
+++ /code/branches/Dialog_HS16/src/modules/notifications/CMakeLists.txt	(revision 11317)
@@ -17,4 +17,5 @@
     NotificationsPrecompiledHeaders.h
   LINK_LIBRARIES
+    overlays
     orxonox
   SOURCE_FILES ${NOTIFICATIONS_SRC_FILES}
Index: /code/branches/Dialog_HS16/src/modules/notifications/dispatchers/CMakeLists.txt
===================================================================
--- /code/branches/Dialog_HS16/src/modules/notifications/dispatchers/CMakeLists.txt	(revision 11316)
+++ /code/branches/Dialog_HS16/src/modules/notifications/dispatchers/CMakeLists.txt	(revision 11317)
@@ -3,4 +3,3 @@
   SimpleNotification.cc
   Dialogue.cc
-  DialogueManager.cc
 )
Index: /code/branches/Dialog_HS16/src/modules/notifications/dispatchers/Dialogue.cc
===================================================================
--- /code/branches/Dialog_HS16/src/modules/notifications/dispatchers/Dialogue.cc	(revision 11316)
+++ /code/branches/Dialog_HS16/src/modules/notifications/dispatchers/Dialogue.cc	(revision 11317)
@@ -1,2 +1,3 @@
+
 
 
@@ -5,4 +6,8 @@
 #include "core/EventIncludes.h"
 #include "core/XMLPort.h"
+
+#include "overlays/hud/HUDDialogue.h"
+
+#include "NotificationDispatcher.h"
 
 namespace orxonox{
@@ -28,9 +33,17 @@
         XMLPortParam(Dialogue, "speaker", setSpeaker, getSpeaker, xmlelement, mode);
         XMLPortParam(Dialogue, "message", setMessage, getMessage, xmlelement, mode);
+        XMLPortParam(Dialogue, "portrait", setPortrait, getPortrait, xmlelement, mode);
         
     }
+     void Dialogue::update()
+   {    
+       for(HUDDialogue* huddialogue : ObjectList<HUDDialogue>())
+                       huddialogue->updateTarget(portrait_);
+    }
+    
     const std::string& Dialogue::createNotificationMessage(void)
                 { 	
-                	dialogue_ = speaker_ + message_;
+                	dialogue_ = speaker_ + ": " + message_;
+                    this->update();
                 	return this->dialogue_ ;
                 }
Index: /code/branches/Dialog_HS16/src/modules/notifications/dispatchers/Dialogue.h
===================================================================
--- /code/branches/Dialog_HS16/src/modules/notifications/dispatchers/Dialogue.h	(revision 11316)
+++ /code/branches/Dialog_HS16/src/modules/notifications/dispatchers/Dialogue.h	(revision 11317)
@@ -20,10 +20,13 @@
 
             const std::string& getMessage(void)
-                { return this->message_; }
+                	{ return this->message_; }
          	const std::string& getSpeaker(void)
             		{return this->speaker_;}
+            const std::string& getPortrait(void)
+            		{ return this->portrait_;}
+
     protected:
     	virtual const std::string& createNotificationMessage(void);
-                
+        virtual void update(void);
        	
     private:
@@ -31,4 +34,5 @@
     		std::string speaker_;
     		std::string dialogue_;
+    		std::string portrait_;
 
     		void setSpeaker(const std::string& speaker)
@@ -36,6 +40,7 @@
     		void setMessage(const std::string& message)
                 { this->message_ = message; }
+            void setPortrait(const std::string& portrait)
+            	{ this->portrait_ = portrait;}
         } ;       
-
 }
 
Index: /code/branches/Dialog_HS16/src/modules/overlays/hud/HUDDialogue.cc
===================================================================
--- /code/branches/Dialog_HS16/src/modules/overlays/hud/HUDDialogue.cc	(revision 11316)
+++ /code/branches/Dialog_HS16/src/modules/overlays/hud/HUDDialogue.cc	(revision 11317)
@@ -1,5 +1,2 @@
-
-
-
 
 
@@ -13,4 +10,5 @@
 #include <OgreTextAreaOverlayElement.h>
 #include <OgrePanelOverlayElement.h>
+#include "core/CoreIncludes.h"
 
 namespace orxonox
@@ -23,21 +21,21 @@
     {
         RegisterObject(HUDDialogue);
-
-        overlayElementIcon_ = static_cast<Ogre::PanelOverlayElement* >(Ogre::OverlayManager::getSingleton().createOverlayElement("Panel", "Dialogue" + getUniqueNumberString()));
+	}     
+    void HUDDialogue::updateTarget(std::string portrait)
+    {
+    	overlayElementIcon_ = static_cast<Ogre::PanelOverlayElement* >(Ogre::OverlayManager::getSingleton().createOverlayElement("Panel", "Dialogue" + getUniqueNumberString()));
         overlayElementIcon_->setPosition(0.0f,0.0f);
         overlayElementIcon_->setDimensions(1.0f,1.0f);
-        this->background_->addChild(overlayElementIcon_);
+        this->background_->addChild(overlayElementIcon_);     
 
-        overlayElementIcon_->setMaterialName("Orxonox/DialogueHUD_Person");
-
-	   }     
-
-        void HUDDialogue::tick(float dt)
+    	overlayElementIcon_->setMaterialName(portrait);
+    	this->setVisible(true);
+    	portraitTimer.setTimer(2.9f,false,createExecutor(createFunctor(&HUDDialogue::invisible, this)));
+    }
+    void HUDDialogue::invisible()
     {
-        SUPER(HUDDialogue, tick, dt);
-
-
+    	this->setVisible(false);
+    	Ogre::OverlayManager::getSingleton().destroyOverlayElement(this->overlayElementIcon_);
     }
-
 	 HUDDialogue::~HUDDialogue()
 	 {
@@ -45,9 +43,3 @@
 
 	 }
-
-	 void HUDDialogue::XMLPort(Element& xmlelement, XMLPort::Mode mode)
-	 {
-	 	SUPER(HUDDialogue, XMLPort, xmlelement, mode);
-	 }
-
 }
Index: /code/branches/Dialog_HS16/src/modules/overlays/hud/HUDDialogue.h
===================================================================
--- /code/branches/Dialog_HS16/src/modules/overlays/hud/HUDDialogue.h	(revision 11316)
+++ /code/branches/Dialog_HS16/src/modules/overlays/hud/HUDDialogue.h	(revision 11317)
@@ -1,5 +1,2 @@
-
-
-
 
 
@@ -13,10 +10,10 @@
 
 #include "util/OgreForwardRefs.h"
-#include "tools/interfaces/Tickable.h"
 #include "overlays/OrxonoxOverlay.h"
+#include "tools/Timer.h"
 
 namespace orxonox
 {
-	class _OverlaysExport HUDDialogue : public OrxonoxOverlay, public Tickable
+	class _OverlaysExport HUDDialogue : public OrxonoxOverlay
     {
     	public:
@@ -24,14 +21,13 @@
             virtual ~HUDDialogue();
 
-            virtual void tick(float dt) override;
+            virtual void updateTarget(std::string portrait);
 
-            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode) override;
-
-
+            virtual void invisible();
 
       private:
       			Ogre::PanelOverlayElement* overlayElementIcon_;
+
+      			Timer portraitTimer;
     };
 }
-
 #endif
