Move and rename
This commit is contained in:
1 parent
19c5259528
commit
827b1285a9
1 file changed
@@ -0,0 +1,58 @@
|
||||
using System;
|
||||
using System.Net;
|
||||
using Mistox.Attributes;
|
||||
using Mistox.Client;
|
||||
using Mistox.Server;
|
||||
|
||||
namespace Mistox {
|
||||
public class GameServer {
|
||||
|
||||
public static MistoxServer newServer( string serverName, int port ) {
|
||||
|
||||
// Build the network packet list
|
||||
NetworkPacketDictionary.BuildNetworkPacketList();
|
||||
|
||||
// Set the listener address
|
||||
IPEndPoint listenerAddress = new IPEndPoint( IPAddress.Any, port );
|
||||
|
||||
// Return the initlized server instance
|
||||
return new MistoxServer(listenerAddress, serverName);
|
||||
}
|
||||
|
||||
public static MistoxClient newClient( string UserName, string ServerIPOrHostName, int Port, string ConnectionKey = "" ) {
|
||||
|
||||
// Build the network packet list
|
||||
NetworkPacketDictionary.BuildNetworkPacketList();
|
||||
|
||||
// Get the remote IP from the DNSName
|
||||
int index = 0;
|
||||
IPAddress[] remoteAddress = Dns.GetHostAddresses(ServerIPOrHostName);
|
||||
for( int i=0; i< remoteAddress.Length; i++ ) {
|
||||
if( remoteAddress[i].AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork || remoteAddress [i].AddressFamily == System.Net.Sockets.AddressFamily.InterNetworkV6 ) {
|
||||
index = i;
|
||||
}
|
||||
}
|
||||
string ipAddress = remoteAddress[index].ToString();
|
||||
|
||||
// If a remote address exists
|
||||
if ( remoteAddress.Length == 0) {
|
||||
Console.WriteLine("The server at " + ServerIPOrHostName + " doesn't exit or cannot be found");
|
||||
return null;
|
||||
}
|
||||
|
||||
// Resolve to an IPEndPoint
|
||||
IPHostEntry host = Dns.GetHostEntry( ipAddress );
|
||||
IPEndPoint ServerDenstination = new IPEndPoint(0, 0);
|
||||
foreach( IPAddress entry in host.AddressList ) {
|
||||
if ( entry.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork ) {
|
||||
ServerDenstination = new IPEndPoint( entry, Port );
|
||||
}
|
||||
}
|
||||
|
||||
// Return the initlized client object
|
||||
return new MistoxClient( UserName, ConnectionKey, ServerDenstination );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Reference in new issue
Block a user