Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of DetailedScan v1.2.2
DetailedScan.dll
Decompiled 2 years agousing System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Versioning; using BepInEx; using BepInEx.Logging; using HarmonyLib; using TerminalApi; using TerminalApi.Classes; using TerminalApi.Events; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] [assembly: AssemblyTitle("DetailedScan")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("DetailedScan")] [assembly: AssemblyCopyright("Copyright © 2023")] [assembly: AssemblyTrademark("")] [assembly: ComVisible(false)] [assembly: Guid("68299a3b-4db9-4777-8128-bbc1a40530c5")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] [assembly: AssemblyVersion("1.0.0.0")] namespace DetailedScan; [BepInPlugin("fivetoofive.DetailedScan", "DetailedScan", "1.2.2")] [BepInDependency(/*Could not decode attribute arguments.*/)] public class LSDetailedScan : BaseUnityPlugin { private const string modGUID = "fivetoofive.DetailedScan"; private const string modName = "DetailedScan"; private const string modVersion = "1.2.2"; private readonly Harmony harmony = new Harmony("fivetoofive.DetailedScan"); public bool isSet; private CommandInfo info = new CommandInfo { DisplayTextSupplier = () => "Ship is not Landed!\n\n", Category = "Other", Description = "Shows a detailed list of all the scrap still remaining outside the ship." }; private CommandInfo info2 = new CommandInfo { DisplayTextSupplier = () => "Ship is not Landed!\n\n", Category = "Other", Description = "A shortform version of the command 'detailed'." }; private void Awake() { //IL_0030: Unknown result type (might be due to invalid IL or missing references) //IL_003a: Expected O, but got Unknown //IL_0041: Unknown result type (might be due to invalid IL or missing references) //IL_004b: Expected O, but got Unknown Logger.CreateLogSource("fivetoofive.DetailedScan").LogInfo((object)"DetailedScan is loaded!"); harmony.PatchAll(typeof(LSDetailedScan)); Events.TerminalBeginUsing += new TerminalEventHandler(OnBeginUsing); Events.TerminalAwake += new TerminalEventHandler(TerminalIsAwake); } private void TerminalIsAwake(object sender, TerminalEventArgs e) { if (!isSet) { TerminalApi.AddCommand("detailed", info, "ftf1", true); TerminalApi.AddCommand("ds", info2, (string)null, true); isSet = true; } } private void OnBeginUsing(object sender, TerminalEventArgs e) { List<GrabbableObject> list = new List<GrabbableObject>(); GrabbableObject[] array = Object.FindObjectsOfType<GrabbableObject>(); int num = 0; for (int i = 0; i < array.Length; i++) { if (array[i].itemProperties.isScrap && !array[i].scrapPersistedThroughRounds && !array[i].isInShipRoom) { list.Add(array[i]); num += array[i].scrapValue; } } string text = string.Join("\n", list.Select((GrabbableObject x) => x.itemProperties.itemName + " : " + x.scrapValue + " Value")); string finStr = "Scrap not in ship: " + list.Count() + "\n\n" + text + "\n\nWith a total value of: " + num + "\n\n"; info.DisplayTextSupplier = () => finStr; info2.DisplayTextSupplier = () => finStr; } }