#ifndef _DialogueManager_H__ #define _DialogueManager_H__ #include "core/CoreIncludes.h" #include "core/LuaState.h" #include "core/GUIManager.h" #include "core/class/Identifier.h" #include "core/singleton/ScopedSingletonIncludes.h" #include "network/Host.h" #include "network/NetworkFunctionIncludes.h" #include "util/Singleton.h" #include #include #include "core/config/Configurable.h" #include "core/XMLPort.h" #include "core/EventIncludes.h" #include "DialoguePrereqs.h" #include "NextQuestion.h" namespace orxonox //tolua_export {//tolua_export class _DialogueExport DialogueManager //tolua_export : public Singleton {//tolua_export friend class Singleton; public: DialogueManager(); static DialogueManager& getInstance() { return Singleton::getInstance(); } //tolua_export void setquestion(std::string question); //tolua_export std::string getquestion(void); //tolua_export void setanswers1(std::string a1); //tolua_export std::string getanswers1(void); //tolua_export void setanswers2(std::string a2); //tolua_export std::string getanswers2(void); //tolua_export void setCurrentQuestion(NextQuestion* q); //Sets the current Question to the question corresponding to the first/second answer void a1clicked(void); //tolua_export void a2clicked(void); //tolua_export //Checks whether there are any more Questions to come bool theEnd(); //tolua_export //Sets question and a1, a2 for new currentQuestion void update(NextQuestion* nq); //Is executed whenever a NextQuestion is created and pushes all NextQuestion into the allQuestion vector. void registerquestion(NextQuestion* nq); private: NextQuestion* currentQuestion; //The Question which is currently displayed std::vector allQuestions; std::string a1; //answer on first button std::string a2; //answer on second button std::string question; static DialogueManager* singletonPtr_s; };//tolua_export }//tolua_export #endif