#pragma once #include namespace td { namespace server { class GameState : public IServerState{ private: /* data */ public: GameState(/* args */) {} ~GameState() {} virtual void HandlePacket(PlayerID a_Id, const protocol::PacketBase& a_Packet) override; virtual void Update(float a_Delta) override; virtual void OnPlayerJoin(PlayerID a_Id) override; virtual void OnPlayerLeave(PlayerID a_Id) override; }; } // namespace server } // namespace td