public static void SaveScript(string name, string code, Tank.Logger logger) { var n = name; if (IsValidFileName(n)) { try { AddScriptNames(new string[] { n }); StringBuilder sb = new StringBuilder(code); sb.Replace("\r", ""); File.WriteAllText(n + scriptExtention, sb.ToString()); logger.Log($"Current script is successfuly saved as \"{n}\"!"); RepopulateDropdowns(); } catch (IOException e) { logger.Log($"Script saving failed due to an error risen with message \"{e.Message}\""); } } else { logger.Log($"Set name is not valid because it contains taboo chars \"{scriptNameTaboo}\". Try other name."); } }
public static string LoadScript(string requestedName, Tank.Logger logger) { var names = GetScriptNames(); if (names.Contains(requestedName)) { string content = ""; try { var sb = new StringBuilder(File.ReadAllText(requestedName + scriptExtention)); sb.Replace("\r", ""); content = sb.ToString(); } catch (IOException e) { logger.Log($"Error has occured while loading \"{requestedName}\" script with message \"{e.Message}\". The name would be deleted from selection dropdown."); RemoveScriptName(requestedName); RepopulateDropdowns(); return(""); } logger.Log($"Script \"{requestedName }\" was successfuly loaded!"); return(content); } else { foreach (var item in StaticExamples.list) { if (requestedName.Contains(item.name)) { logger.Log($"Example script \"{item.name}\" was successfuly loaded!"); return(item.text); } } } return(""); }