/// <summary> /// Stops the client or server, depending on the current role /// </summary> public void StopEverything() { switch (CurrentRole) { case MultiplayerRole.Client: CurrentClient.Disconnect(); ChatLogPanel.PrintGameMessage("Disconnected from server."); break; case MultiplayerRole.Server: CurrentServer.StopServer(); ChatLogPanel.PrintGameMessage("Server stopped."); break; } CurrentRole = MultiplayerRole.None; }
// ReSharper restore FunctionNeverReturns public void Auth(string key) { if (!key.Equals(SecurityKey)) { CurrentClient.Disconnect(); return; } Authed[CurrentClient.ClientId] = new InformerClient(CurrentClient, CurrentClient.GetClientProxy <IInformerClient>()); CurrentClient.Disconnected += ClientDisconnected; Log.Info("InformerService: Client connected..."); Authed[CurrentClient.ClientId].Proxy.Authed(); Authed[CurrentClient.ClientId].Proxy.Message("Test message!"); }