private void ReceivePlayerName(SocketState state) { if (state.ErrorOccured) { return; // Possibly need to add something } List <string> socketData = ExtractSocketData(state, 1); string playerName = socketData[0]; playerName = playerName.Trim(); // the order of these next operations is very important!!! int playerID = gameController.NewPlayerJoined(playerName); state.OnNetworkAction = ReceiveMessage; SendStartupInfo(state, playerID, gameController.GameSettings.UniverseSize); AddClient(state, playerID); Networking.GetData(state); }