#ifndef QUESTABSTRACTSCENEEVENT_H #define QUESTABSTRACTSCENEEVENT_H #include "qw_abstractevent.h" #include "view/qw_scene.h" /* QWAbstractSceneEvent * Interface for all in-game scene events. */ class QWAbstractSceneEvent : public QWAbstractEvent { protected: QWScene *ptr_scene; public: QWAbstractSceneEvent(); virtual ~QWAbstractSceneEvent() override = 0; virtual void execute() override = 0; //////////////////////// void setScene(QWScene *const scene) noexcept; QWScene *scene() const noexcept; //////////////////////// virtual void writeToJson(QJsonObject &savejson) override = 0; }; #endif // QUESTABSTRACTSCENEEVENT_H