From 68a44028962415141ad5c8d254aca147aa9e7d3f Mon Sep 17 00:00:00 2001 From: Bitl Date: Thu, 26 Mar 2020 08:32:16 -0700 Subject: [PATCH] fixes for launching studio with no map --- NovetusLauncher/NovetusCMD/Program.cs | 4 +-- NovetusLauncher/NovetusFuncs/LauncherFuncs.cs | 14 +++++---- NovetusLauncher/NovetusFuncs/SecurityFuncs.cs | 12 ++++---- .../NovetusLauncher/CharacterCustomization.cs | 4 +-- .../NovetusLauncher/MainForm.Designer.cs | 4 +-- NovetusLauncher/NovetusLauncher/MainForm.cs | 29 ++++++++++--------- .../NovetusLauncher/URI/LoaderForm.cs | 8 ++--- 7 files changed, 39 insertions(+), 36 deletions(-) diff --git a/NovetusLauncher/NovetusCMD/Program.cs b/NovetusLauncher/NovetusCMD/Program.cs index ce1fff5..4cd9698 100644 --- a/NovetusLauncher/NovetusCMD/Program.cs +++ b/NovetusLauncher/NovetusCMD/Program.cs @@ -404,7 +404,7 @@ namespace NovetusCMD } } try - { + { ConsolePrint("Server Loaded.", 4); Process client = new Process(); client.StartInfo.FileName = rbxexe; @@ -414,7 +414,7 @@ namespace NovetusCMD client.Exited += new EventHandler(ServerExited); client.Start(); client.PriorityClass = ProcessPriorityClass.RealTime; - SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Server); + SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Server, GlobalVars.Map); LocalVars.ProcessID = client.Id; CreateTXT(); } diff --git a/NovetusLauncher/NovetusFuncs/LauncherFuncs.cs b/NovetusLauncher/NovetusFuncs/LauncherFuncs.cs index b73ade6..dc2ea01 100644 --- a/NovetusLauncher/NovetusFuncs/LauncherFuncs.cs +++ b/NovetusLauncher/NovetusFuncs/LauncherFuncs.cs @@ -795,7 +795,7 @@ public class LauncherFuncs return image; } - public static void UpdateRichPresence(LauncherState state, bool initial = false) + public static void UpdateRichPresence(LauncherState state, string mapname, bool initial = false) { if (GlobalVars.DiscordPresence) { @@ -805,6 +805,8 @@ public class LauncherFuncs GlobalVars.presence.startTimestamp = SecurityFuncs.UnixTimeNow(); } + string ValidMapname = (string.IsNullOrWhiteSpace(mapname) ? "Place1.rbxl" : mapname); + switch (state) { case LauncherState.InLauncher: @@ -816,21 +818,21 @@ public class LauncherFuncs break; case LauncherState.InMPGame: GlobalVars.presence.smallImageKey = GlobalVars.image_ingame; - GlobalVars.presence.details = ""; + GlobalVars.presence.details = ValidMapname; GlobalVars.presence.state = "In " + GlobalVars.SelectedClient + " Multiplayer Game"; GlobalVars.presence.largeImageText = GlobalVars.PlayerName + " | Novetus " + GlobalVars.Version; GlobalVars.presence.smallImageText = "In " + GlobalVars.SelectedClient + " Multiplayer Game"; break; case LauncherState.InSoloGame: GlobalVars.presence.smallImageKey = GlobalVars.image_ingame; - GlobalVars.presence.details = GlobalVars.Map; + GlobalVars.presence.details = ValidMapname; GlobalVars.presence.state = "In " + GlobalVars.SelectedClient + " Solo Game"; GlobalVars.presence.largeImageText = GlobalVars.PlayerName + " | Novetus " + GlobalVars.Version; GlobalVars.presence.smallImageText = "In " + GlobalVars.SelectedClient + " Solo Game"; break; case LauncherState.InStudio: GlobalVars.presence.smallImageKey = GlobalVars.image_instudio; - GlobalVars.presence.details = GlobalVars.Map; + GlobalVars.presence.details = ValidMapname; GlobalVars.presence.state = "In " + GlobalVars.SelectedClient + " Studio"; GlobalVars.presence.largeImageText = GlobalVars.PlayerName + " | Novetus " + GlobalVars.Version; GlobalVars.presence.smallImageText = "In " + GlobalVars.SelectedClient + " Studio"; @@ -844,14 +846,14 @@ public class LauncherFuncs break; case LauncherState.InEasterEggGame: GlobalVars.presence.smallImageKey = GlobalVars.image_ingame; - GlobalVars.presence.details = GlobalVars.Map; + GlobalVars.presence.details = ValidMapname; GlobalVars.presence.state = "Reading a message."; GlobalVars.presence.largeImageText = GlobalVars.PlayerName + " | Novetus " + GlobalVars.Version; GlobalVars.presence.smallImageText = "Reading a message."; break; case LauncherState.LoadingURI: GlobalVars.presence.smallImageKey = GlobalVars.image_ingame; - GlobalVars.presence.details = ""; + GlobalVars.presence.details = ValidMapname; GlobalVars.presence.state = "Joining a " + GlobalVars.SelectedClient + " Multiplayer Game"; GlobalVars.presence.largeImageText = GlobalVars.PlayerName + " | Novetus " + GlobalVars.Version; GlobalVars.presence.smallImageText = "Joining a " + GlobalVars.SelectedClient + " Multiplayer Game"; diff --git a/NovetusLauncher/NovetusFuncs/SecurityFuncs.cs b/NovetusLauncher/NovetusFuncs/SecurityFuncs.cs index 9309327..994853f 100644 --- a/NovetusLauncher/NovetusFuncs/SecurityFuncs.cs +++ b/NovetusLauncher/NovetusFuncs/SecurityFuncs.cs @@ -150,22 +150,22 @@ public class SecurityFuncs return new String(' ', random.Next(20)); } - public static void RenameWindow(Process exe, ScriptGenerator.ScriptType type) + public static void RenameWindow(Process exe, ScriptGenerator.ScriptType type, string mapname) { if (GlobalVars.AlreadyHasSecurity != true) { int time = 500; BackgroundWorker worker = new BackgroundWorker(); - worker.DoWork += (obj, e) => WorkerDoWork(exe, type, time, worker, GlobalVars.SelectedClient); + worker.DoWork += (obj, e) => WorkerDoWork(exe, type, time, worker, GlobalVars.SelectedClient, mapname); worker.RunWorkerAsync(); } } - private static void WorkerDoWork(Process exe, ScriptGenerator.ScriptType type, int time, BackgroundWorker worker, string clientname) + private static void WorkerDoWork(Process exe, ScriptGenerator.ScriptType type, int time, BackgroundWorker worker, string clientname, string mapname) { if (exe.IsRunning() == true) { while (exe.IsRunning() == true) { if (exe.IsRunning() != true) { - worker.DoWork -= (obj, e) => WorkerDoWork(exe, type, time, worker, clientname); + worker.DoWork -= (obj, e) => WorkerDoWork(exe, type, time, worker, clientname, mapname); worker.CancelAsync(); worker.Dispose(); break; @@ -174,7 +174,7 @@ public class SecurityFuncs if (type == ScriptGenerator.ScriptType.Client) { SetWindowText(exe.MainWindowHandle, "Novetus " + GlobalVars.Version + " - " + clientname + " " + ScriptGenerator.GetNameForType(type) + " [" + GlobalVars.IP + ":" + GlobalVars.RobloxPort + "]" + RandomStringTitle()); } else if (type == ScriptGenerator.ScriptType.Server || type == ScriptGenerator.ScriptType.Solo || type == ScriptGenerator.ScriptType.Studio) { - SetWindowText(exe.MainWindowHandle, "Novetus " + GlobalVars.Version + " - " + clientname + " " + ScriptGenerator.GetNameForType(type) + " [" + GlobalVars.Map + "]" + RandomStringTitle()); + SetWindowText(exe.MainWindowHandle, "Novetus " + GlobalVars.Version + " - " + clientname + " " + ScriptGenerator.GetNameForType(type) + (string.IsNullOrWhiteSpace(mapname) ? " [Place1.rbxl]" : " [" + mapname + "]") + RandomStringTitle()); }else if (type == ScriptGenerator.ScriptType.EasterEgg) { SetWindowText(exe.MainWindowHandle, ScriptGenerator.GetNameForType(type) + RandomStringTitle()); } @@ -182,7 +182,7 @@ public class SecurityFuncs } } else { Thread.Sleep(time); - RenameWindow(exe, type); + RenameWindow(exe, type, mapname); } } diff --git a/NovetusLauncher/NovetusLauncher/CharacterCustomization.cs b/NovetusLauncher/NovetusLauncher/CharacterCustomization.cs index 8f1c03f..fa23b2f 100644 --- a/NovetusLauncher/NovetusLauncher/CharacterCustomization.cs +++ b/NovetusLauncher/NovetusLauncher/CharacterCustomization.cs @@ -138,7 +138,7 @@ namespace NovetusLauncher checkBox1.Checked = GlobalVars.Custom_Extra_ShowHats; //discord - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InCustomization); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InCustomization, GlobalVars.Map); LauncherFuncs.ReloadLoadtextValue(); } @@ -540,7 +540,7 @@ namespace NovetusLauncher void CharacterCustomizationClose(object sender, CancelEventArgs e) { - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher, ""); LauncherFuncs.ReloadLoadtextValue(); } diff --git a/NovetusLauncher/NovetusLauncher/MainForm.Designer.cs b/NovetusLauncher/NovetusLauncher/MainForm.Designer.cs index b1584c6..a89c237 100644 --- a/NovetusLauncher/NovetusLauncher/MainForm.Designer.cs +++ b/NovetusLauncher/NovetusLauncher/MainForm.Designer.cs @@ -257,7 +257,7 @@ namespace NovetusLauncher // button3 // this.button3.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.button3.Location = new System.Drawing.Point(113, 3); + this.button3.Location = new System.Drawing.Point(157, 3); this.button3.Name = "button3"; this.button3.Size = new System.Drawing.Size(81, 20); this.button3.TabIndex = 6; @@ -484,7 +484,7 @@ namespace NovetusLauncher // button35 // this.button35.Font = new System.Drawing.Font("Microsoft Sans Serif", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.button35.Location = new System.Drawing.Point(197, 3); + this.button35.Location = new System.Drawing.Point(113, 3); this.button35.Name = "button35"; this.button35.Size = new System.Drawing.Size(41, 20); this.button35.TabIndex = 61; diff --git a/NovetusLauncher/NovetusLauncher/MainForm.cs b/NovetusLauncher/NovetusLauncher/MainForm.cs index 7800080..0cc7acb 100644 --- a/NovetusLauncher/NovetusLauncher/MainForm.cs +++ b/NovetusLauncher/NovetusLauncher/MainForm.cs @@ -164,7 +164,7 @@ namespace NovetusLauncher handlers.requestCallback += RequestCallback; DiscordRpc.Initialize(GlobalVars.appid, ref handlers, true, ""); - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher, true); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher, "", true); } } @@ -627,7 +627,7 @@ namespace NovetusLauncher { GlobalVars.SelectedClient = listBox2.SelectedItem.ToString(); ReadClientValues(GlobalVars.SelectedClient); - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher, ""); } void CheckBox3CheckedChanged(object sender, EventArgs e) @@ -970,13 +970,13 @@ namespace NovetusLauncher client.Exited += new EventHandler(ClientExited); client.Start(); client.PriorityClass = ProcessPriorityClass.RealTime; - SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Client); - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InMPGame); + SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Client, GlobalVars.Map); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InMPGame, GlobalVars.Map); } void ClientExited(object sender, EventArgs e) { - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher, ""); if (GlobalVars.CloseOnLaunch == true) { this.Visible = true; @@ -1017,8 +1017,8 @@ namespace NovetusLauncher client.Exited += new EventHandler(StudioExited); client.Start(); client.PriorityClass = ProcessPriorityClass.RealTime; - SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Solo); - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InSoloGame); + SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Solo, GlobalVars.Map); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InSoloGame, GlobalVars.Map); } catch (Exception ex) when (!Env.Debugging) { @@ -1069,7 +1069,7 @@ namespace NovetusLauncher client.Exited += new EventHandler(ServerExited); client.Start(); client.PriorityClass = ProcessPriorityClass.RealTime; - SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Server); + SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Server, GlobalVars.Map); } catch (Exception ex) when (!Env.Debugging) { @@ -1091,6 +1091,7 @@ namespace NovetusLauncher string luafile = GetLuaFileName(); string rbxexe = GetClientEXEDir(ScriptGenerator.ScriptType.Studio); string mapfile = (nomap ? "" : GlobalVars.MapPath); + string mapname = (nomap ? "" : GlobalVars.Map); string quote = "\""; string args = ""; if (GlobalVars.CustomArgs.Equals("%args%")) @@ -1120,8 +1121,8 @@ namespace NovetusLauncher client.Exited += new EventHandler(StudioExited); client.Start(); client.PriorityClass = ProcessPriorityClass.RealTime; - SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Studio); - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InStudio); + SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.Studio, mapname); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InStudio, mapname); } catch (Exception ex) when (!Env.Debugging) { @@ -1132,7 +1133,7 @@ namespace NovetusLauncher void StudioExited(object sender, EventArgs e) { - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher, ""); if (GlobalVars.CloseOnLaunch == true) { this.Visible = true; @@ -1761,8 +1762,8 @@ namespace NovetusLauncher client.Exited += new EventHandler(EasterEggExited); client.Start(); client.PriorityClass = ProcessPriorityClass.RealTime; - SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.EasterEgg); - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InEasterEggGame); + SecurityFuncs.RenameWindow(client, ScriptGenerator.ScriptType.EasterEgg, ""); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InEasterEggGame, ""); } catch (Exception ex) when (!Env.Debugging) { @@ -1773,7 +1774,7 @@ namespace NovetusLauncher void EasterEggExited(object sender, EventArgs e) { - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher, ""); label3.Text = ""; if (GlobalVars.CloseOnLaunch == true) { diff --git a/NovetusLauncher/NovetusLauncher/URI/LoaderForm.cs b/NovetusLauncher/NovetusLauncher/URI/LoaderForm.cs index eaa0ed8..544c85d 100644 --- a/NovetusLauncher/NovetusLauncher/URI/LoaderForm.cs +++ b/NovetusLauncher/NovetusLauncher/URI/LoaderForm.cs @@ -98,7 +98,7 @@ namespace NovetusLauncher handlers.requestCallback += RequestCallback; DiscordRpc.Initialize(GlobalVars.appid, ref handlers, true, ""); - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.LoadingURI, true); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.LoadingURI, "", true); } void StartGame() @@ -196,14 +196,14 @@ namespace NovetusLauncher clientproc.Exited += new EventHandler(ClientExited); clientproc.Start(); clientproc.PriorityClass = ProcessPriorityClass.RealTime; - SecurityFuncs.RenameWindow(clientproc, ScriptGenerator.ScriptType.Client); - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InMPGame); + SecurityFuncs.RenameWindow(clientproc, ScriptGenerator.ScriptType.Client, ""); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InMPGame, ""); this.Visible = false; } void ClientExited(object sender, EventArgs e) { - LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher); + LauncherFuncs.UpdateRichPresence(LauncherFuncs.LauncherState.InLauncher, ""); this.Close(); }