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

◆ OnSubmitServerPassword() [1/2]

void Terraria.Main.OnSubmitServerPassword ( )
inlineprivate

Definition at line 48913 of file Main.cs.

48914 {
48915 string text = "-autoshutdown -password \"" + ConvertToSafeArgument(Netplay.ServerPassword) + "\" -lang " + Language.ActiveCulture.LegacyId;
48916 if (Platform.IsLinux)
48917 {
48918 text = ((IntPtr.Size != 8) ? (text + " -x86") : (text + " -x64"));
48919 }
48920 text = ((!ActiveWorldFileData.IsCloudSave) ? (text + SanitizePathArgument("world", worldPathName)) : (text + SanitizePathArgument("cloudworld", worldPathName)));
48921 text = text + " -worldrollbackstokeep " + WorldRollingBackupsCountToKeep;
48922 tServer = new Process();
48923 if (Platform.IsLinux)
48924 {
48925 tServer.StartInfo.FileName = "TerrariaServer";
48926 }
48927 else if (Platform.IsOSX)
48928 {
48929 tServer.StartInfo.FileName = "../MacOS/TerrariaServer";
48930 }
48931 else
48932 {
48933 tServer.StartInfo.FileName = "TerrariaServer.exe";
48934 }
48935 tServer.StartInfo.Arguments = text;
48936 if (libPath != "")
48937 {
48939 startInfo.Arguments = startInfo.Arguments + " -loadlib " + libPath;
48940 }
48941 tServer.StartInfo.UseShellExecute = false;
48942 tServer.StartInfo.CreateNoWindow = true;
48943 if (SocialAPI.Network != null)
48944 {
48945 SocialAPI.Network.LaunchLocalServer(tServer, MenuServerMode);
48946 }
48947 else
48948 {
48949 tServer.Start();
48950 }
48951 Netplay.SetRemoteIP("127.0.0.1");
48952 autoPass = true;
48953 statusText = Lang.menu[8].Value;
48954 Netplay.StartTcpClient();
48955 menuMode = 10;
48956 }
static bool IsOSX
Definition Platform.cs:21
static bool IsLinux
Definition Platform.cs:23
static GameCulture ActiveCulture
Definition Language.cs:8
static WorldFileData ActiveWorldFileData
Definition Main.cs:1946
static bool autoPass
Definition Main.cs:2507
static Process tServer
Definition Main.cs:984
static string worldPathName
Definition Main.cs:2837
string SanitizePathArgument(string argumentName, string argumentPath)
Definition Main.cs:45221
static int WorldRollingBackupsCountToKeep
Definition Main.cs:1210
static string ConvertToSafeArgument(string arg)
Definition Main.cs:4550
static int menuMode
Definition Main.cs:2379
static ServerMode MenuServerMode
Definition Main.cs:1427
static string libPath
Definition Main.cs:1248
static string statusText
Definition Main.cs:1258
static Terraria.Social.Base.NetSocialModule Network
Definition SocialAPI.cs:20

References Terraria.Localization.Language.ActiveCulture, Terraria.Main.ActiveWorldFileData, Terraria.Main.autoPass, Terraria.Main.ConvertToSafeArgument(), ReLogic.OS.Platform.IsLinux, ReLogic.OS.Platform.IsOSX, Terraria.Main.libPath, Terraria.Lang.menu, Terraria.Main.menuMode, Terraria.Main.MenuServerMode, Terraria.Social.SocialAPI.Network, System.Process, Terraria.Main.SanitizePathArgument(), Terraria.Netplay.ServerPassword, Terraria.Netplay.SetRemoteIP(), Terraria.Netplay.StartTcpClient(), Terraria.Main.statusText, System.text, Terraria.Main.tServer, Terraria.Main.worldPathName, and Terraria.Main.WorldRollingBackupsCountToKeep.

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