You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
755 B
C++

#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<QWLocation> target_location;
public:
explicit QWChangeLocationEvent(const std::shared_ptr<QWLocation> &location);
virtual ~QWChangeLocationEvent() override {}
void execute() override;
////////////////////////
void setLocation(const std::shared_ptr<QWLocation> &location) noexcept;
////////////////////////
void writeToJson(QJsonObject &event_data) override;
};
#endif // QUESTCHANGELOCATIONEVENT_H