/* * Copyright (c) Contributors to the Open 3D Engine Project. * For complete copyright and license terms please see the LICENSE at the root of this distribution. * * SPDX-License-Identifier: Apache-2.0 OR MIT * */ #include #include #include #include #include #include #include #include namespace Multiplayer { MultiplayerModule::MultiplayerModule() : AZ::Module() { m_descriptors.insert( m_descriptors.end(), { MultiplayerSystemComponent::CreateDescriptor(), MultiplayerStatSystemComponent::CreateDescriptor(), NetBindComponent::CreateDescriptor(), SimplePlayerSpawnerComponent::CreateDescriptor(), #ifdef MULTIPLAYER_EDITOR MultiplayerToolsSystemComponent::CreateDescriptor(), #endif }); CreateComponentDescriptors(m_descriptors); } AZ::ComponentTypeList MultiplayerModule::GetRequiredSystemComponents() const { return AZ::ComponentTypeList{ azrtti_typeid(), azrtti_typeid(), #ifdef MULTIPLAYER_EDITOR azrtti_typeid(), #endif }; } } // namespace Multiplayer #if !defined(MULTIPLAYER_EDITOR) #if defined(AZ_MONOLITHIC_BUILD) AZ_DECLARE_MODULE_CLASS(Gem_Multiplayer_Client, Multiplayer::MultiplayerModule); AZ_DECLARE_MODULE_CLASS(Gem_Multiplayer_Server, Multiplayer::MultiplayerModule); #endif AZ_DECLARE_MODULE_CLASS(Gem_Multiplayer, Multiplayer::MultiplayerModule); #endif