Refactored away circular dependencies in Multiplayer gem cmake targets.

This commit is contained in:
Olex Lozitskiy
2021-11-18 21:55:55 -05:00
committed by GitHub
5 changed files with 33 additions and 76 deletions
+17 -11
View File
@@ -6,10 +6,9 @@
*
*/
#include <MultiplayerToolsSystemComponent.h>
#include <AzNetworking/Framework/NetworkingSystemComponent.h>
#include <Multiplayer/Components/NetBindComponent.h>
#include <Multiplayer/Components/NetworkHierarchyChildComponent.h>
#include <Multiplayer/Components/NetworkHierarchyRootComponent.h>
#include <Source/MultiplayerGem.h>
#include <Source/MultiplayerSystemComponent.h>
#include <Source/AutoGen/AutoComponentTypes.h>
@@ -20,25 +19,32 @@ namespace Multiplayer
MultiplayerModule::MultiplayerModule()
: AZ::Module()
{
m_descriptors.insert(m_descriptors.end(), {
AzNetworking::NetworkingSystemComponent::CreateDescriptor(),
MultiplayerSystemComponent::CreateDescriptor(),
NetBindComponent::CreateDescriptor(),
NetworkSpawnableHolderComponent::CreateDescriptor(),
});
m_descriptors.insert(
m_descriptors.end(),
{
AzNetworking::NetworkingSystemComponent::CreateDescriptor(),
MultiplayerSystemComponent::CreateDescriptor(),
NetBindComponent::CreateDescriptor(),
NetworkSpawnableHolderComponent::CreateDescriptor(),
#ifdef MULTIPLAYER_EDITOR
MultiplayerToolsSystemComponent::CreateDescriptor(),
#endif
});
CreateComponentDescriptors(m_descriptors);
}
AZ::ComponentTypeList MultiplayerModule::GetRequiredSystemComponents() const
{
return AZ::ComponentTypeList
{
return AZ::ComponentTypeList{
azrtti_typeid<AzNetworking::NetworkingSystemComponent>(),
azrtti_typeid<MultiplayerSystemComponent>(),
#ifdef MULTIPLAYER_EDITOR
azrtti_typeid<MultiplayerToolsSystemComponent>(),
#endif
};
}
}
} // namespace Multiplayer
#if !defined(MULTIPLAYER_EDITOR)
AZ_DECLARE_MODULE_CLASS(Gem_Multiplayer, Multiplayer::MultiplayerModule);
@@ -6,7 +6,7 @@
*
*/
#include <MultiplayerToolsModule.h>
#include <MultiplayerToolsSystemComponent.h>
#include <Pipeline/NetworkPrefabProcessor.h>
#include <AzCore/Serialization/Json/RegistrationContext.h>
@@ -39,22 +39,4 @@ namespace Multiplayer
{
m_didProcessNetPrefabs = didProcessNetPrefabs;
}
MultiplayerToolsModule::MultiplayerToolsModule()
: AZ::Module()
{
m_descriptors.insert(m_descriptors.end(), {
MultiplayerToolsSystemComponent::CreateDescriptor(),
});
}
AZ::ComponentTypeList MultiplayerToolsModule::GetRequiredSystemComponents() const
{
return AZ::ComponentTypeList
{
azrtti_typeid<MultiplayerToolsSystemComponent>(),
};
}
} // namespace Multiplayer
AZ_DECLARE_MODULE_CLASS(Gem_Multiplayer_Tools, Multiplayer::MultiplayerToolsModule);
@@ -37,19 +37,5 @@ namespace Multiplayer
bool m_didProcessNetPrefabs = false;
};
class MultiplayerToolsModule
: public AZ::Module
{
public:
AZ_RTTI(MultiplayerToolsModule, "{3F726172-21FC-48FA-8CFA-7D87EBA07E55}", AZ::Module);
AZ_CLASS_ALLOCATOR(MultiplayerToolsModule, AZ::SystemAllocator, 0);
MultiplayerToolsModule();
~MultiplayerToolsModule() override = default;
AZ::ComponentTypeList GetRequiredSystemComponents() const override;
};
} // namespace Multiplayer