/// <summary> /// /// </summary> private void Utilities_MessageEntered(string messageText, ref bool sendToOthers) { if (string.IsNullOrEmpty(messageText)) { return; } var cmd = messageText.ToLower(); if (cmd.StartsWith(CmdKey)) { if (Mod.Log.ShouldLog(Logging.Level.Verbose)) { Mod.Log.Write(Logging.Level.Verbose, "BuildAndRepairSystemMod: Cmd: {0}", messageText); } var args = cmd.Remove(0, CmdKey.Length).Trim().Split(' '); if (args.Length > 0) { if (Mod.Log.ShouldLog(Logging.Level.Verbose)) { Mod.Log.Write(Logging.Level.Verbose, "BuildAndRepairSystemMod: Cmd args[0]: {0}", args[0]); } switch (args[0].Trim()) { case CmdCpsf: if (MyAPIGateway.Session.IsServer) { SyncModSettings.Save(Settings, false); MyAPIGateway.Utilities.ShowMessage(CmdKey, "Settings file created inside mod folder"); } else { MyAPIGateway.Utilities.ShowMessage(CmdKey, "command not allowed on client"); } break; case CmdCwsf: if (MyAPIGateway.Session.IsServer) { SyncModSettings.Save(Settings, true); MyAPIGateway.Utilities.ShowMessage(CmdKey, "Settings file created inside world folder"); } else { MyAPIGateway.Utilities.ShowMessage(CmdKey, "command not allowed on client"); } break; case CmdLogLevel: if (args.Length > 1) { switch (args[1].Trim()) { case CmdLogLevel_All: Mod.Log.LogLevel = Logging.Level.All; MyAPIGateway.Utilities.ShowMessage(CmdKey, string.Format("Logging level switched to All [{0:X}]", Mod.Log.LogLevel)); Mod.Log.Write("BuildAndRepairSystemMod: Logging level switched to [{0:X}]", Mod.Log.LogLevel); foreach (var modItem in MyAPIGateway.Session.Mods) { Mod.Log.Write("BuildAndRepairSystemMod: Mod {0} (Name={1}, FileId={2}, Path={3})", modItem.FriendlyName, modItem.Name, modItem.PublishedFileId, modItem.GetPath()); } break; case CmdLogLevel_Default: default: Mod.Log.LogLevel = Settings.LogLevel; MyAPIGateway.Utilities.ShowMessage(CmdKey, string.Format("Logging level switched to Default [{0:X}]", Mod.Log.LogLevel)); Mod.Log.Write("BuildAndRepairSystemMod: Logging level switched to [{0:X}]", Mod.Log.LogLevel); break; } } break; case CmdWriteTranslation: if (Mod.Log.ShouldLog(Logging.Level.Verbose)) { Mod.Log.Write(Logging.Level.Verbose, "BuildAndRepairSystemMod: CmdWriteTranslation"); } if (args.Length > 1) { MyLanguagesEnum lang; if (Enum.TryParse(args[1], true, out lang)) { Localization.LocalizationHelper.ExportDictionary(lang.ToString() + ".txt", Texts.GetDictionary(lang)); MyAPIGateway.Utilities.ShowMessage(CmdKey, string.Format(lang.ToString() + ".txt writtenwa.")); } else { MyAPIGateway.Utilities.ShowMessage(CmdKey, string.Format("'{0}' is not a valid language name {1}", args[1], string.Join(",", Enum.GetNames(typeof(MyLanguagesEnum))))); } } break; case CmdHelp1: case CmdHelp2: default: MyAPIGateway.Utilities.ShowMissionScreen("NanobotBuildAndRepairSystem", "Help", "", GetHelpText()); break; } } else { MyAPIGateway.Utilities.ShowMissionScreen("NanobotBuildAndRepairSystem", "Help", "", GetHelpText()); } sendToOthers = false; } }
private void Utilities_MessageEntered(string messageText, ref bool sendToOthers) { if (string.IsNullOrEmpty(messageText)) { return; } var cmd = messageText.ToLower(); if (cmd.StartsWith(CmdKey)) { Mod.Log.Write(Logging.Level.Error, "BuildAndRepairSystemMod: Cmd: {0}", messageText); var args = cmd.Remove(0, CmdKey.Length).Trim().Split(' '); if (args.Length > 0) { Mod.Log.Write(Logging.Level.Error, "BuildAndRepairSystemMod: Cmd args[0]: {0}", args[0]); switch (args[0].Trim()) { case CmdCwsf: if (MyAPIGateway.Session.IsServer) { SyncModSettings.Save(Settings, true); MyAPIGateway.Utilities.ShowMessage(CmdKey, "Settings file created inside world folder"); } else { MyAPIGateway.Utilities.ShowMessage(CmdKey, "command not allowed on client"); } break; case CmdLogLevel: if (args.Length > 1) { switch (args[1].Trim()) { case CmdLogLevel_All: Mod.Log.LogLevel = Logging.Level.All; MyAPIGateway.Utilities.ShowMessage(CmdKey, string.Format("Logging level switched to All [{0:X}]", Mod.Log.LogLevel)); break; case CmdLogLevel_Default: default: Mod.Log.LogLevel = Settings.LogLevel; MyAPIGateway.Utilities.ShowMessage(CmdKey, string.Format("Logging level switched to Default [{0:X}]", Mod.Log.LogLevel)); break; } } break; case CmdHelp1: case CmdHelp2: default: MyAPIGateway.Utilities.ShowMissionScreen("NanobotBuildAndRepairSystem", "Help", "", MyAPIGateway.Session.IsServer ? CmdHelpText_Server : CmdHelpText_Client); break; } } else { MyAPIGateway.Utilities.ShowMissionScreen("NanobotBuildAndRepairSystem", "Help", "", MyAPIGateway.Session.IsServer ? CmdHelpText_Server : CmdHelpText_Client); } sendToOthers = false; } }