diff --git a/RuriLib/Blocks/BlockUtility.cs b/RuriLib/Blocks/BlockUtility.cs index 0194f5d..235620a 100644 --- a/RuriLib/Blocks/BlockUtility.cs +++ b/RuriLib/Blocks/BlockUtility.cs @@ -433,10 +433,10 @@ namespace RuriLib try { + var replacedInput = ReplaceValues(inputString, data); switch (group) { case UtilityGroup.List: - var list = data.Variables.GetList(listName); var list2 = data.Variables.GetList(secondListName); var item = ReplaceValues(listItem, data); @@ -548,15 +548,14 @@ namespace RuriLib break; case UtilityGroup.Conversion: - byte[] convertedBytes = ReplaceValues(inputString, data).ConvertFrom(conversionFrom); - data.Variables.Set(new CVar(variableName, convertedBytes.ConvertTo(conversionTo), isCapture)); - data.Log(new LogEntry($"Converted input {conversionFrom} to {conversionTo}", Colors.White)); + byte[] conversionInputBytes = replacedInput.ConvertFrom(conversionFrom); + var conversionResult = conversionInputBytes.ConvertTo(conversionTo); + data.Variables.Set(new CVar(variableName, conversionResult, isCapture)); + data.Log(new LogEntry($"Executed conversion {conversionFrom} to {conversionTo} on input {replacedInput} with outcome {conversionResult}", Colors.White)); break; case UtilityGroup.File: var file = ReplaceValues(filePath, data); - var input = ReplaceValues(inputString, data).Replace("\\r\\n", "\r\n").Replace("\\n", "\n"); - var inputs = ReplaceValuesRecursive(inputString, data).Select(i => i.Replace("\\r\\n", "\r\n").Replace("\\n", "\n")); switch (fileAction) { case FileAction.Read: @@ -568,19 +567,19 @@ namespace RuriLib break; case FileAction.Write: - File.WriteAllText(file, input); + File.WriteAllText(file, replacedInput.Unescape()); break; case FileAction.WriteLines: - File.WriteAllLines(file, inputs); + File.WriteAllLines(file, ReplaceValuesRecursive(inputString, data).Select(i => i.Unescape())); break; case FileAction.Append: - File.AppendAllText(file, input); + File.AppendAllText(file, replacedInput.Unescape()); break; case FileAction.AppendLines: - File.AppendAllLines(file, inputs); + File.AppendAllLines(file, ReplaceValuesRecursive(inputString, data).Select(i => i.Unescape())); break; } data.Log(new LogEntry($"Executed action {fileAction} on file {file}", Colors.White));