using System; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using BepInEx; using BepInEx.NET.Common; using BepInExResoniteShim; using FrooxEngine; using FrooxEngine.UIX; using HarmonyLib; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(/*Could not decode attribute arguments.*/)] [assembly: TargetFramework(".NETCoreApp,Version=v10.0", FrameworkDisplayName = ".NET 10.0")] [assembly: AssemblyCompany("eia485")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyFileVersion("1.0.3.0")] [assembly: AssemblyInformationalVersion("1.0.3+9c05918eaa28dd3c957035366da20f83b9c19cf0")] [assembly: AssemblyProduct("LocalSlotNames")] [assembly: AssemblyTitle("LocalSlotNames")] [assembly: AssemblyMetadata("RepositoryUrl", "https://github.com/EIA485/NeosLocalSlotNames")] [assembly: AssemblyVersion("1.0.3.0")] [module: RefSafetyRules(11)] namespace LocalSlotNames; [ResonitePlugin("net.eia485.LocalSlotNames", "LocalSlotNames", "1.0.3", "eia485", "https://github.com/EIA485/NeosLocalSlotNames")] [BepInDependency(/*Could not decode attribute arguments.*/)] public class LocalSlotNames : BasePlugin { [HarmonyPatch(typeof(SlotInspector), "OnChanges")] private class LocalSlotNamesPatch { private static void Postfix(SyncRef ____slotNameText, SyncRef ____rootSlot) { if (____slotNameText.Target != null && !((SyncElement)____slotNameText.Target.Content).IsLinked && !((SyncElement)____slotNameText.Target.Content).IsDriven) { ValueCopy obj = ((ContainerWorker)(object)((Component)____slotNameText.Target).Slot).AttachComponent>(true, (Action>)null); ((SyncRef>)(object)obj.Source).Target = (IField)(object)____rootSlot.Target?.Name_Field; ((SyncRef>)(object)obj.Target).Target = (IField)(object)____slotNameText.Target.Content; } } } public override void Load() { ((BasePlugin)this).HarmonyInstance.PatchAll(); } } public static class PluginMetadata { public const string GUID = "net.eia485.LocalSlotNames"; public const string NAME = "LocalSlotNames"; public const string VERSION = "1.0.3"; public const string AUTHORS = "eia485"; public const string REPOSITORY_URL = "https://github.com/EIA485/NeosLocalSlotNames"; }