public void ServerThreadStart() { try { Server server = new Server(); server.SaveFilenameOverride = savefilename; server.exit = exit; DummyNetServer netServer = new DummyNetServer(); netServer.SetPlatform(new GamePlatformNative()); netServer.SetNetwork(dummyNetwork); server.mainSockets = new NetServer[3]; server.mainSockets[0] = netServer; for (; ;) { server.Process(); Thread.Sleep(1); platform.singlePlayerServerLoaded = true; if (exit != null && exit.GetExit()) { server.Stop(); break; } if (platform.singlepLayerServerExit) { server.Exit(); } } exit.SetExit(false); } catch (Exception e) { MessageBox.Show(e.ToString()); } }
public void ServerThreadStart() { try { Server server = new Server(); server.SaveFilenameOverride = savefilename; server.exit = exit; DummyNetServer netServer = new DummyNetServer(); netServer.SetPlatform(new GamePlatformNative()); netServer.SetNetwork(dummyNetwork); server.mainSockets = new NetServer[3]; server.mainSockets[0] = netServer; for (; ; ) { server.Process(); Thread.Sleep(1); platform.singlePlayerServerLoaded = true; if (exit != null && exit.GetExit()) { server.Stop(); break; } if (platform.singlepLayerServerExit) { // Exit thread and reset shutdown variable server.Exit(); platform.singlepLayerServerExit = false; } } exit.SetExit(false); } catch (Exception e) { MessageBox.Show(e.ToString()); } }
void Connect(GamePlatform platform) { if (singleplayer) { if (platform.SinglePlayerServerAvailable()) { platform.SinglePlayerServerStart(singleplayerSavePath); } else { serverSimple = new ServerSimple(); DummyNetwork network = platform.SinglePlayerServerGetNetwork(); network.Start(platform.MonitorCreate(), platform.MonitorCreate()); DummyNetServer server = new DummyNetServer(); server.network = network; server.platform = platform; server.Start(); serverSimple.Start(server, singleplayerSavePath, platform); serverSimpleMod = new ModServerSimple(); serverSimpleMod.server = serverSimple; game.AddMod(serverSimpleMod); platform.SinglePlayerServerGetNetwork().ServerReceiveBuffer.Enqueue(new ByteArray()); } connectData = new ConnectData(); connectData.Username = "******"; game.connectdata = connectData; DummyNetClient netclient = new DummyNetClient(); netclient.SetPlatform(platform); netclient.SetNetwork(platform.SinglePlayerServerGetNetwork()); game.main = netclient; } else { game.connectdata = connectData; if (platform.EnetAvailable()) { EnetNetClient client = new EnetNetClient(); client.SetPlatform(platform); game.main = client; } else if (platform.TcpAvailable()) { TcpNetClient client = new TcpNetClient(); client.SetPlatform(platform); game.main = client; } else if (platform.WebSocketAvailable()) { WebSocketClient client = new WebSocketClient(); client.SetPlatform(platform); game.main = client; } else { platform.ThrowException("Network not implemented"); } } }