Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ SetRemoteIPAsync()

static void Terraria.Netplay.SetRemoteIPAsync ( string remoteAddress,
Action successCallBack )
inlinestatic

Definition at line 673 of file Netplay.cs.

674 {
675 try
676 {
677 if (IPAddress.TryParse(remoteAddress, out var address))
678 {
679 ServerIP = address;
680 ServerIPText = address.ToString();
681 successCallBack();
682 }
683 else
684 {
686 Dns.BeginGetHostAddresses(remoteAddress, SetRemoteIPAsyncCallback, new SetRemoteIPRequestInfo
687 {
688 RequestId = _currentRequestId,
689 SuccessCallback = successCallBack,
690 RemoteAddress = remoteAddress
691 });
692 }
693 }
694 catch (Exception)
695 {
696 }
697 }
static IAsyncResult BeginGetHostAddresses(string hostNameOrAddress, AsyncCallback? requestCallback, object? state)
Definition Dns.cs:220
static bool TryParse([NotNullWhen(true)] string? ipString, [NotNullWhen(true)] out IPAddress? address)
Definition IPAddress.cs:303
static IPAddress ServerIP
Definition Netplay.cs:41
static int _currentRequestId
Definition Netplay.cs:65
static void InvalidateAllOngoingIPSetAttempts()
Definition Netplay.cs:699
static string ServerIPText
Definition Netplay.cs:43
static void SetRemoteIPAsyncCallback(IAsyncResult ar)
Definition Netplay.cs:713

References Terraria.Netplay._currentRequestId, System.Net.Dns.BeginGetHostAddresses(), Terraria.Netplay.InvalidateAllOngoingIPSetAttempts(), Terraria.Netplay.ServerIP, Terraria.Netplay.ServerIPText, Terraria.Netplay.SetRemoteIPAsyncCallback(), and System.Net.IPAddress.TryParse().

Referenced by Terraria.Main.DrawMenu(), and Terraria.Main.OnSubmitServerPort().