#ifndef QUESTABSTRACTSOUNDEVENT_H #define QUESTABSTRACTSOUNDEVENT_H #include "features/qw_soundplayer.h" #include "qw_abstractevent.h" /* QWAbstractSoundEvent * Interface for all in-game audio events. */ class QWAbstractSoundEvent : public QWAbstractEvent { protected: QWSoundPlayer *ptr_soundplayer; public: QWAbstractSoundEvent(); virtual ~QWAbstractSoundEvent() override = 0; virtual void execute() override = 0; //////////////////////// void setSoundPlayer(QWSoundPlayer *const soundplayer) noexcept; QWSoundPlayer *soundPlayer() const noexcept; //////////////////////// virtual void writeToJson(QJsonObject &savejson) override = 0; }; #endif // QUESTABSTRACTSOUNDEVENT_H