Please disclose if your mod was created primarily 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 NXMDPModMenu v1.0.0
NXMDPModMenu.dll
Decompiled 2 years agousing System; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Versioning; using BepInEx; using BepInEx.Logging; using HarmonyLib; using HelmetCamera; using LethalSettings.UI; using LethalSettings.UI.Components; using Microsoft.CodeAnalysis; using ReservedFlashlightSlot; using ReservedItemSlotCore.Config; using ReservedWalkieSlot; using TMPro; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: AssemblyTitle("NXMDPModMenu")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("NXMDPModMenu")] [assembly: AssemblyCopyright("Copyright © 2024")] [assembly: AssemblyTrademark("")] [assembly: ComVisible(false)] [assembly: Guid("cf440218-009f-49ca-90bc-5efa53d34997")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] [assembly: AssemblyVersion("1.0.0.0")] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)] internal sealed class NullableAttribute : Attribute { public readonly byte[] NullableFlags; public NullableAttribute(byte P_0) { NullableFlags = new byte[1] { P_0 }; } public NullableAttribute(byte[] P_0) { NullableFlags = P_0; } } [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false)] internal sealed class NullableContextAttribute : Attribute { public readonly byte Flag; public NullableContextAttribute(byte P_0) { Flag = P_0; } } } namespace NXMDPModMenu { [BepInPlugin("NXMDPModMenu", "NXDev-NXMDPModMenu", "1.0.0")] public class LCTutorialMod : BaseUnityPlugin { private const string modGUID = "NXMDPModMenu"; private const string modName = "NXDev-NXMDPModMenu"; private const string modVersion = "1.0.0"; private readonly Harmony harmony = new Harmony("NXMDPModMenu"); private static LCTutorialMod Instance; public static ManualLogSource mls; private void Awake() { if ((Object)(object)Instance == (Object)null) { Instance = this; } mls = Logger.CreateLogSource("NXMDPModMenu"); mls.LogInfo((object)"The mod NXMDPModMenu has awakened."); harmony.PatchAll(typeof(LCTutorialMod)); new ModSettingsMenu(); } } internal class ModSettingsMenu { private class ReservedSlots { private class SlotCore { public SlotCore() { //IL_0008: Unknown result type (might be due to invalid IL or missing references) //IL_000e: Expected O, but got Unknown //IL_0047: Unknown result type (might be due to invalid IL or missing references) //IL_004d: Expected O, but got Unknown //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Expected O, but got Unknown //IL_006a: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_008c: Unknown result type (might be due to invalid IL or missing references) //IL_00b3: Expected O, but got Unknown //IL_00b5: Unknown result type (might be due to invalid IL or missing references) //IL_00ba: Unknown result type (might be due to invalid IL or missing references) //IL_00cb: Unknown result type (might be due to invalid IL or missing references) //IL_00d7: Unknown result type (might be due to invalid IL or missing references) //IL_00fe: Expected O, but got Unknown ModSettingsConfig val = new ModSettingsConfig(); val.Name = "ReservedItemSlotCore"; val.Id = "FlipMods.ReservedItemSlotCore"; val.Version = "1.7.7"; val.Description = "The core mod for all ReservedItemSlot mods. Adds functionality for my ReservedItemSlot mods."; MenuComponent[] array = new MenuComponent[1]; VerticalComponent val2 = new VerticalComponent(); val2.Children = (MenuComponent[])(object)new MenuComponent[3] { (MenuComponent)new LabelComponent { Text = "Placeholder for keybind..." }, (MenuComponent)new ToggleComponent { Value = ConfigSettings.toggleFocusReservedHotbar.Value, Text = "Toggle Focus Reserved Hotbar", OnValueChanged = delegate(ToggleComponent self, bool value) { logger.LogInfo((object)$"New value: {value}"); ConfigSettings.toggleFocusReservedHotbar.Value = !ConfigSettings.toggleFocusReservedHotbar.Value; } }, (MenuComponent)new ToggleComponent { Value = ConfigSettings.preventReservedItemSlotFade.Value, Text = "Prevent Reserved Item Slot Fade", OnValueChanged = delegate(ToggleComponent self, bool value) { logger.LogInfo((object)$"New value: {value}"); ConfigSettings.preventReservedItemSlotFade.Value = !ConfigSettings.preventReservedItemSlotFade.Value; } } }; array[0] = (MenuComponent)val2; val.MenuComponents = (MenuComponent[])(object)array; ModMenu.RegisterMod(val, true, true); } } private class FlashlightSlot { public FlashlightSlot() { //IL_0008: Unknown result type (might be due to invalid IL or missing references) //IL_000e: Expected O, but got Unknown //IL_0047: Unknown result type (might be due to invalid IL or missing references) //IL_004d: Expected O, but got Unknown //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Expected O, but got Unknown //IL_006a: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_008c: Unknown result type (might be due to invalid IL or missing references) //IL_00b3: Expected O, but got Unknown ModSettingsConfig val = new ModSettingsConfig(); val.Name = "ReservedFlashlightSlot"; val.Id = "FlipMods.ReservedFlashlightSlot"; val.Version = "1.5.7"; val.Description = "Gives a free, dedicated flashlight slot on the right side of your screen. Allows the flashlight to become togglable via keybinds."; MenuComponent[] array = new MenuComponent[1]; VerticalComponent val2 = new VerticalComponent(); val2.Children = (MenuComponent[])(object)new MenuComponent[2] { (MenuComponent)new LabelComponent { Text = "Placeholder for keybind..." }, (MenuComponent)new ToggleComponent { Value = ConfigSettings.hideFlashlightMeshShoulder.Value, Text = "Hide Flashlight On Shoulder", OnValueChanged = delegate(ToggleComponent self, bool value) { logger.LogInfo((object)$"New value: {value}"); ConfigSettings.hideFlashlightMeshShoulder.Value = !ConfigSettings.hideFlashlightMeshShoulder.Value; } } }; array[0] = (MenuComponent)val2; val.MenuComponents = (MenuComponent[])(object)array; ModMenu.RegisterMod(val, true, true); } } private class WalkieSlot { public WalkieSlot() { //IL_0008: Unknown result type (might be due to invalid IL or missing references) //IL_000e: Expected O, but got Unknown //IL_0047: Unknown result type (might be due to invalid IL or missing references) //IL_004d: Expected O, but got Unknown //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0068: Expected O, but got Unknown //IL_006a: Unknown result type (might be due to invalid IL or missing references) //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_008c: Unknown result type (might be due to invalid IL or missing references) //IL_00b3: Expected O, but got Unknown ModSettingsConfig val = new ModSettingsConfig(); val.Name = "ReservedWalkieSlot"; val.Id = "FlipMods.ReservedWalkieSlot"; val.Version = "1.5.3"; val.Description = "Gives a free, dedicated Walkie slot on the right side of your screen. You can press [X] to activate and speak into the Walkie at anytime."; MenuComponent[] array = new MenuComponent[1]; VerticalComponent val2 = new VerticalComponent(); val2.Children = (MenuComponent[])(object)new MenuComponent[2] { (MenuComponent)new LabelComponent { Text = "Placeholder for keybind..." }, (MenuComponent)new ToggleComponent { Value = ConfigSettings.hideWalkieMeshShoulder.Value, Text = "Hide Walkie On Shoulder", OnValueChanged = delegate(ToggleComponent self, bool value) { logger.LogInfo((object)$"New value: {value}"); ConfigSettings.hideWalkieMeshShoulder.Value = !ConfigSettings.hideWalkieMeshShoulder.Value; } } }; array[0] = (MenuComponent)val2; val.MenuComponents = (MenuComponent[])(object)array; ModMenu.RegisterMod(val, true, true); } } private SlotCore coreSettings = new SlotCore(); private FlashlightSlot flaslightSettings = new FlashlightSlot(); private WalkieSlot walkieSettings = new WalkieSlot(); } private class HelmetCamera { public HelmetCamera() { //IL_0008: Unknown result type (might be due to invalid IL or missing references) //IL_000e: Expected O, but got Unknown //IL_0019: Unknown result type (might be due to invalid IL or missing references) //IL_0023: Expected O, but got Unknown //IL_002f: Unknown result type (might be due to invalid IL or missing references) //IL_0039: Expected O, but got Unknown //IL_0045: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Expected O, but got Unknown //IL_005b: Unknown result type (might be due to invalid IL or missing references) //IL_0065: Expected O, but got Unknown //IL_0071: Unknown result type (might be due to invalid IL or missing references) //IL_007b: Expected O, but got Unknown //IL_0092: Unknown result type (might be due to invalid IL or missing references) //IL_0098: Expected O, but got Unknown //IL_00d1: Unknown result type (might be due to invalid IL or missing references) //IL_00d7: Expected O, but got Unknown //IL_00e0: Unknown result type (might be due to invalid IL or missing references) //IL_00e5: Unknown result type (might be due to invalid IL or missing references) //IL_00ed: Unknown result type (might be due to invalid IL or missing references) //IL_00f9: Unknown result type (might be due to invalid IL or missing references) //IL_0106: Unknown result type (might be due to invalid IL or missing references) //IL_012d: Expected O, but got Unknown //IL_012f: Unknown result type (might be due to invalid IL or missing references) //IL_0134: Unknown result type (might be due to invalid IL or missing references) //IL_0140: Unknown result type (might be due to invalid IL or missing references) //IL_014c: Unknown result type (might be due to invalid IL or missing references) //IL_0158: Unknown result type (might be due to invalid IL or missing references) //IL_017f: Expected O, but got Unknown //IL_0181: Unknown result type (might be due to invalid IL or missing references) //IL_0186: Unknown result type (might be due to invalid IL or missing references) //IL_0192: Unknown result type (might be due to invalid IL or missing references) //IL_019e: Unknown result type (might be due to invalid IL or missing references) //IL_01aa: Unknown result type (might be due to invalid IL or missing references) //IL_01d1: Expected O, but got Unknown OptionDataList val = new OptionDataList(); val.options.Add(new OptionData("48x48")); val.options.Add(new OptionData("128x128")); val.options.Add(new OptionData("256x256")); val.options.Add(new OptionData("512x512")); val.options.Add(new OptionData("1024x1024")); OptionData value2 = val.options[PluginInit.config_isHighQuality.Value]; ModSettingsConfig val2 = new ModSettingsConfig(); val2.Name = "Helmet_Cameras"; val2.Id = "RickArg.lethalcompany.helmetcameras"; val2.Version = "2.1.5"; val2.Description = "For monitoring first person cameras on player's helmets. For best \"Camera Man\" experience."; MenuComponent[] array = new MenuComponent[1]; VerticalComponent val3 = new VerticalComponent(); val3.Children = (MenuComponent[])(object)new MenuComponent[3] { (MenuComponent)new DropdownComponent { Value = value2, Text = "Monitor Resolution", Options = val.options, OnValueChanged = delegate(DropdownComponent self, OptionData value) { switch (value.text) { case "48x48": PluginInit.config_isHighQuality.Value = 0; break; case "128x128": PluginInit.config_isHighQuality.Value = 1; break; case "256x256": PluginInit.config_isHighQuality.Value = 2; break; case "512x512": PluginInit.config_isHighQuality.Value = 3; break; case "1024x1024": PluginInit.config_isHighQuality.Value = 4; break; } } }, (MenuComponent)new SliderComponent { MinValue = 10f, MaxValue = 100f, Text = "Camera's Render Distance", OnValueChanged = delegate(SliderComponent self, float value) { PluginInit.config_renderDistance.Value = (int)value; logger.LogInfo((object)$"New value: {value}"); } }, (MenuComponent)new SliderComponent { MinValue = 24f, MaxValue = 144f, Text = "Camera's FPS", OnValueChanged = delegate(SliderComponent self, float value) { PluginInit.config_cameraFps.Value = (int)value; logger.LogInfo((object)$"New value: {value}"); } } }; array[0] = (MenuComponent)val3; val2.MenuComponents = (MenuComponent[])(object)array; ModMenu.RegisterMod(val2); } } internal static string configPath = "BepInEx/config/"; private static ManualLogSource logger = LCTutorialMod.mls; private ReservedSlots reservedSlotsSettingsMenu = new ReservedSlots(); private HelmetCamera helmetCameraSettingsMenu = new HelmetCamera(); } }