#pragma once #include "../Engine_Common/Common.h" #include "SFML/System/Clock.hpp" #include <string> // System Messages struct SystemMessage { std::string messageName; }; class Scene; class EngineMessageSystem { public: explicit EngineMessageSystem(Scene& inputScene) : scene(&inputScene) {} virtual ~EngineMessageSystem() {}; virtual void play(const sf::Time& elapsedTime) = 0; virtual void recieveEngineMessage(const SystemMessage& inputMessage) = 0; protected: Scene* scene; };