#pragma once #include struct World; struct ProjectileLaunchRequest; struct CombatService { CombatService(World& aWorld, entt::dispatcher& aDispatcher) noexcept; ~CombatService() noexcept = default; TP_NOCOPYMOVE(CombatService); protected: void OnProjectileLaunchRequest(const PacketEvent& acMessage) const noexcept; private: World& m_world; entt::scoped_connection m_projectileLaunchConnection; };