42 lines
1.3 KiB
C++
42 lines
1.3 KiB
C++
// 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
|
|
);
|
|
};
|
|
} |