public static void ProcessData(Connection conn, DataTransfer transfer) { if (conn == null || transfer == null) { return; } if (transfer is AuthenticationRequest) { AuthenticationRequest authenticationRequest = (AuthenticationRequest)transfer; PlayerAccount player = new PlayerAccount(authenticationRequest.Username, authenticationRequest.Password); string authenticationResponseMessage = AccountFileHandler.ReadAccount(player); if (authenticationResponseMessage == null) { PlayerHandler.AddPlayer(player); } conn.SendData(new AuthenticationResponse(authenticationResponseMessage)); } }
public static void Shutdown() { if (online) { connectionHandler.Reset(); ConnectionsRepository.Reset(); foreach (PlayerAccount account in PlayerHandler.GetPlayers()) { AccountFileHandler.SaveAccount(account); } listener.Stop(); thread.Abort(); Console.WriteLine("Server has shut down."); } else { Console.WriteLine("Failed since the server isn't online."); } }