コード例 #1
0
 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}");
             }
         }
     }
 }
コード例 #2
0
        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}");
                    }
                }
            }
        }