#pragma once #include "Entity.h" class QuestEvent : public virtual Framework::ReferenceCounter { private: Entity* actingEntity; public: QuestEvent(Entity* actingEntity); ~QuestEvent(); Entity* zActingEntity() const; }; class QuestEventOpenDialog : public QuestEvent { private: Framework::Text dialogId; public: QuestEventOpenDialog(Entity* actingEntity, Framework::Text dialogId); const Framework::Text& getDialogId() const; }; class QuestEventBlockBreak : public QuestEvent {}; class QuestEventBlockPlace : public QuestEvent {}; class QuestEventBlockInteract : public QuestEvent {}; class QuestEventTimeUpdate : public QuestEvent {}; class QuestEventCraft : public QuestEvent {}; class QuestEventItemPickup : public QuestEvent {};