static void Postfix(LevelDataTab __instance, ref bool ___propertiesAreBeingDisplayed_) { if (___propertiesAreBeingDisplayed_ || __instance.IsSelectionValid_) { if (NeedsRefresh) { NeedsRefresh = false; try { typeof(NGUIObjectInspectorTabAbstract).GetMethod("ClearComponentInspectors", BindingFlags.NonPublic | BindingFlags.Instance).Invoke(__instance, new object[0]); typeof(NGUIObjectInspectorTab).GetMethod("InitComponentInspectors", BindingFlags.NonPublic | BindingFlags.Instance).Invoke(__instance, new object[0]); } catch (Exception e) { Console.WriteLine($"Failed to refresh LevelDataTab: {e}"); } } } }
internal static void Postfix(LevelDataTab __instance, ref bool ___propertiesAreBeingDisplayed_) { Mod mod = Mod.Instance; if (___propertiesAreBeingDisplayed_ || __instance.IsSelectionValid_) { if (mod.LevelEditor.NeedsRefresh) { mod.LevelEditor.NeedsRefresh = false; try { __instance.GetComponent <NGUIObjectInspectorTabAbstract>()?.ClearComponentInspectors(); __instance.GetComponent <NGUIObjectInspectorTab>()?.InitComponentInspectors(); } catch (Exception e) { Debug.Log($"Failed to refresh LevelDataTab: {e}"); } } } }