32 lines
671 B
C
32 lines
671 B
C
|
#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
|