public static GameObject CreateGameObject(AdditionalContainer ac, NetContainer nc) { var container = FindObjectOfType <SumoContainer>(); if (container != null) { DestroyImmediate(container.gameObject); } container = new GameObject("SumoContainer").AddComponent <SumoContainer>(); container.busInfo = ac; container.netInfo = nc; return(container.gameObject); }
private NetContainer GetNetworkManager(ushort id, bool isClient) { NetContainer container; if (id == 0) { Assert.Fail("Id cannot be 0"); } var key = isClient ? id : (uint)id << 16; if (!_managers.TryGetValue(key, out container)) { var listener = new EventBasedNetListener(); listener.ConnectionRequestEvent += request => { var keyd = System.Text.Encoding.UTF8.GetBytes(_appKey); if (request.Data.SequenceEqual(keyd)) { request.Accept(); } }; NetManager netManager; if (isClient) { netManager = new NetManager(listener); if (!netManager.Start()) { Assert.Fail($"Client {id} start failed"); } } else { netManager = new NetManager(listener); if (!netManager.Start(_serverPort)) { Assert.Fail($"Server {id} on port{_serverPort} start failed"); } } container = new NetContainer(netManager, listener); _managers[key] = container; } return(container); }
private NetContainer GetNetworkManager(ushort id, bool isClient) { NetContainer container; if (id == 0) { Assert.Fail("Id cannot be 0"); } var key = isClient ? id : (uint)id << 16; if (!_managers.TryGetValue(key, out container)) { var listener = new EventBasedNetListener(); listener.ConnectionRequestEvent += request => { request.AcceptIfKey(_appKey); }; NetManager netManager = new NetManager(listener); netManager.EnableChecksums = true; if (isClient) { if (!netManager.Start()) { Assert.Fail($"Client {id} start failed"); } } else { if (!netManager.Start(_serverPort)) { Assert.Fail($"Server {id} on port{_serverPort} start failed"); } } container = new NetContainer(netManager, listener); _managers[key] = container; } return(container); }