public void Setup() { go = new GameObject(); client = go.AddComponent <NetworkClient>(); server = go.AddComponent <NetworkServer>(); spawner = go.AddComponent <PlayerSpawner>(); sceneManager = go.AddComponent <NetworkSceneManager>(); serverObjectManager = go.AddComponent <ServerObjectManager>(); clientObjectManager = go.AddComponent <ClientObjectManager>(); spawner.SceneManager = sceneManager; sceneManager.Client = client; sceneManager.Server = server; serverObjectManager.Server = server; clientObjectManager.Client = client; clientObjectManager.NetworkSceneManager = sceneManager; spawner.Client = client; spawner.Server = server; spawner.ServerObjectManager = serverObjectManager; spawner.ClientObjectManager = clientObjectManager; playerPrefab = new GameObject(); NetworkIdentity playerId = playerPrefab.AddComponent <NetworkIdentity>(); spawner.PlayerPrefab = playerId; pos1 = new GameObject().transform; pos2 = new GameObject().transform; spawner.startPositions.Add(pos1); spawner.startPositions.Add(pos2); }
public static GameObject CreateNetworkManager() { var go = new GameObject("NetworkManager", typeof(NetworkManager), typeof(NetworkServer), typeof(NetworkClient), typeof(NetworkSceneManager), typeof(ServerObjectManager), typeof(ClientObjectManager), typeof(PlayerSpawner), typeof(KcpTransport), typeof(LogSettings)); KcpTransport transport = go.GetComponent <KcpTransport>(); NetworkSceneManager nsm = go.GetComponent <NetworkSceneManager>(); NetworkClient networkClient = go.GetComponent <NetworkClient>(); networkClient.Transport = transport; NetworkServer networkServer = go.GetComponent <NetworkServer>(); networkServer.Transport = transport; ServerObjectManager serverObjectManager = go.GetComponent <ServerObjectManager>(); serverObjectManager.Server = networkServer; serverObjectManager.NetworkSceneManager = nsm; ClientObjectManager clientObjectManager = go.GetComponent <ClientObjectManager>(); clientObjectManager.Client = networkClient; clientObjectManager.NetworkSceneManager = nsm; NetworkManager networkManager = go.GetComponent <NetworkManager>(); networkManager.Client = networkClient; networkManager.Server = networkServer; networkManager.ServerObjectManager = serverObjectManager; networkManager.ClientObjectManager = clientObjectManager; networkManager.SceneManager = nsm; PlayerSpawner playerSpawner = go.GetComponent <PlayerSpawner>(); playerSpawner.Client = networkClient; playerSpawner.Server = networkServer; playerSpawner.SceneManager = nsm; playerSpawner.ServerObjectManager = serverObjectManager; playerSpawner.ClientObjectManager = clientObjectManager; nsm.Client = networkClient; nsm.Server = networkServer; return(go); }