diff --git a/Lidgren.Network/NetClient.cs b/Lidgren.Network/NetClient.cs index 1d2937a..cda2bbb 100644 --- a/Lidgren.Network/NetClient.cs +++ b/Lidgren.Network/NetClient.cs @@ -17,6 +17,7 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR TH USE OR OTHER DEALINGS IN THE SOFTWARE. */ using System; +using System.Net; namespace Lidgren.Network { @@ -52,6 +53,19 @@ namespace Lidgren.Network config.AcceptIncomingConnections = false; } + public override NetConnection Connect(IPEndPoint remoteEndpoint, NetOutgoingMessage approvalMessage) + { + lock(m_connections) + { + if (m_connections.Count > 0) + { + LogWarning("Connect attempt failed; Already connected"); + return null; + } + } + return base.Connect(remoteEndpoint, approvalMessage); + } + /// /// Disconnect from server /// diff --git a/Lidgren.Network/NetPeer.cs b/Lidgren.Network/NetPeer.cs index cccab37..8dd4587 100644 --- a/Lidgren.Network/NetPeer.cs +++ b/Lidgren.Network/NetPeer.cs @@ -217,7 +217,7 @@ namespace Lidgren.Network /// /// Create a connection to a remote endpoint /// - public NetConnection Connect(IPEndPoint remoteEndpoint, NetOutgoingMessage approvalMessage) + public virtual NetConnection Connect(IPEndPoint remoteEndpoint, NetOutgoingMessage approvalMessage) { lock (m_connections) {