#include "Dialogue.h" #include "core/CoreIncludes.h" #include "core/EventIncludes.h" #include "core/XMLPort.h" #include "overlays/hud/HUDDialogue.h" #include "NotificationDispatcher.h" namespace orxonox{ RegisterClass(Dialogue); Dialogue::Dialogue(Context* context):NotificationDispatcher(context){ RegisterObject(Dialogue); this->setSender("dialogue"); this->setSyncMode(ObjectDirection::None); } Dialogue::~Dialogue() { } void Dialogue::XMLPort(Element& xmlelement, XMLPort::Mode mode) { SUPER(Dialogue, XMLPort, xmlelement, mode); 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->updateTarget(portrait_); } const std::string& Dialogue::createNotificationMessage(void) { dialogue_ = speaker_ + ": " + message_; this->update(); return this->dialogue_ ; } }