|
|
@ -7,21 +7,11 @@ public class Net : Node { |
|
|
|
private Client Client; |
|
|
|
private Server Server; |
|
|
|
|
|
|
|
private LineEdit IPAddressEdit; |
|
|
|
private LineEdit PortEdit; |
|
|
|
|
|
|
|
public bool IsClient { get { return Client != null; } } |
|
|
|
public bool IsServer { get { return Server != null; } } |
|
|
|
|
|
|
|
public override void _Ready() { |
|
|
|
PacketPeer = new PacketPeerUDP(); |
|
|
|
var IPAddressNode = GetNode("IPAddress"); |
|
|
|
var PortNode = GetNode("Port"); |
|
|
|
if (IPAddressNode is LineEdit) { |
|
|
|
IPAddressEdit = (LineEdit) IPAddressNode; |
|
|
|
} if (PortNode is LineEdit) { |
|
|
|
PortEdit = (LineEdit) PortNode; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
public override void _Process(float delta) { |
|
|
@ -34,34 +24,15 @@ public class Net : Node { |
|
|
|
if (IsClient) { Client.Free(); } |
|
|
|
} |
|
|
|
|
|
|
|
public void StartClient() { |
|
|
|
public void StartClient(string address, int port) { |
|
|
|
if (IsClient || IsServer) { return; } |
|
|
|
Client = new Client(PacketPeer); |
|
|
|
string address; |
|
|
|
int port; |
|
|
|
SetAddressAndPort(out address, out port, "localhost", 7070); |
|
|
|
Client.Initialize(address, port); |
|
|
|
} |
|
|
|
|
|
|
|
public void StartServer() { |
|
|
|
public void StartServer(string address, int port) { |
|
|
|
if (IsClient || IsServer) { return; } |
|
|
|
Server = new Server(PacketPeer); |
|
|
|
string address; |
|
|
|
int port; |
|
|
|
SetAddressAndPort(out address, out port, "*", 7070); |
|
|
|
Server.Initialize(address, port); |
|
|
|
} |
|
|
|
|
|
|
|
private void SetAddressAndPort(out string address, out int port, string defaultAddress, int defaultPort) { |
|
|
|
if (IPAddressEdit == null || IPAddressEdit.GetText() == "") { |
|
|
|
address = defaultAddress; |
|
|
|
} else { |
|
|
|
address = IPAddressEdit.GetText(); |
|
|
|
} |
|
|
|
port = defaultPort; |
|
|
|
if (PortEdit != null && PortEdit.GetText() != "") { |
|
|
|
//port = PortEdit.GetText();
|
|
|
|
Int32.TryParse(PortEdit.GetText(), out port); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|