32 lines
794 B
C++
32 lines
794 B
C++
#ifndef QWREMOVETRIGGER_H
|
|
#define QWREMOVETRIGGER_H
|
|
|
|
#include "qw_abstractsceneevent.h"
|
|
|
|
/* QWRemoveTriggerEvent
|
|
* Removes a trigger from its location list. */
|
|
|
|
class QWRemoveTriggerEvent : public QWAbstractSceneEvent
|
|
{
|
|
private:
|
|
std::shared_ptr<QWTrigger> trigger; // What to add.
|
|
std::shared_ptr<QWLocation> location; // Where to add.
|
|
|
|
public:
|
|
explicit QWRemoveTriggerEvent(const std::shared_ptr<QWTrigger> &tr);
|
|
virtual ~QWRemoveTriggerEvent() override {}
|
|
|
|
void execute() override;
|
|
|
|
////////////////////////
|
|
|
|
void setLocation(const std::shared_ptr<QWLocation> &loc) noexcept;
|
|
void setTrigger(const std::shared_ptr<QWTrigger> &tr) noexcept;
|
|
|
|
////////////////////////
|
|
|
|
void writeToJson(QJsonObject &event_data) override;
|
|
};
|
|
|
|
#endif // QWREMOVETRIGGER_H
|