#ifndef QUESTCHANGELOCATIONEVENT_H #define QUESTCHANGELOCATIONEVENT_H #include "qw_abstractsceneevent.h" /* QWChangeLocationEvent * Moves player to new location by replacing scene triggers. */ class QWTrigger; class QWLocation; class QWChangeLocationEvent : public QWAbstractSceneEvent { private: std::shared_ptr target_location; public: explicit QWChangeLocationEvent(const std::shared_ptr &location); virtual ~QWChangeLocationEvent() override {} void execute() override; //////////////////////// void setLocation(const std::shared_ptr &location) noexcept; //////////////////////// void writeToJson(QJsonObject &event_data) override; }; #endif // QUESTCHANGELOCATIONEVENT_H