// Copyright (c) 2022 Dominic Masters // // This software is released under the MIT License. // https://opensource.org/licenses/MIT #pragma once #include "visualnovel/VisualNovelManager.hpp" #include "visualnovel/components/VisualNovelCharacter.hpp" namespace Dawn { class VisualNovelTextboxEvent : public IVisualNovelEvent { protected: std::string languageKey; VisualNovelCharacter *character; struct VisualNovelCharacterEmotion emotion; void onStart(IVisualNovelEvent *previous) override; bool_t onUpdate() override; void onEnd() override; public: /** * Create a new Textbox Event. This will queue a conversation item for the * textbox to display. * * @param manager Visual Novel Manager instance for this event. * @param character Character that is intended to be speaking. * @param languageKey Language Key to talk. */ VisualNovelTextboxEvent( VisualNovelManager *manager, VisualNovelCharacter *character, struct VisualNovelCharacterEmotion emotion, std::string languageKey ); VisualNovelTextboxEvent( VisualNovelManager *manager, std::string languageKey ); }; }