#ifndef PlayerDeathSystem_h__ #define PlayerDeathSystem_h__ #include "Core/System.h" #include "Input/EInputCommand.h" #include "GLM.h" #include "Rendering/ESetCamera.h" #include "Core/ConfigFile.h" #include "Core/EntityFile.h" #include "Core/EPlayerDeath.h" #include "Core/EEntityDeleted.h" class PlayerDeathSystem : public ImpureSystem { public: PlayerDeathSystem(SystemParams params); virtual void Update(double dt) override; private: EntityWrapper m_LocalPlayerDeathEffect; EventRelay m_OnPlayerDeath; bool OnPlayerDeath(Events::PlayerDeath& e); EventRelay m_EEntityDeleted; bool OnEntityDeleted(Events::EntityDeleted& e); EventRelay m_EInputCommand; bool OnInputCommand(Events::InputCommand& e); void setSpectatorCamera(); void createDeathEffect(EntityWrapper player); }; #endif