From bec8bfc5d584ea24fec5d448f847cf02007c2683 Mon Sep 17 00:00:00 2001 From: nnra6864 Date: Tue, 31 Mar 2026 02:31:24 +0200 Subject: [PATCH 1/3] 6.5 Fixes --- .../Assets/Alchemy/Editor/Hierarchy/HierarchyDrawer.cs | 10 +++++++++- .../Editor/Hierarchy/HierarchyDrawerInitializer.cs | 6 +++++- .../Alchemy/Editor/Hierarchy/HierarchyHeaderDrawer.cs | 10 +++++++++- .../Editor/Hierarchy/HierarchyRowSeparatorDrawer.cs | 6 +++++- .../Editor/Hierarchy/HierarchySeparatorDrawer.cs | 10 +++++++++- .../Alchemy/Editor/Hierarchy/HierarchyToggleDrawer.cs | 10 +++++++++- .../Alchemy/Editor/Hierarchy/HierarchyTreeMapDrawer.cs | 10 +++++++++- 7 files changed, 55 insertions(+), 7 deletions(-) diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawer.cs index c7e70c6..682d982 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawer.cs @@ -8,14 +8,22 @@ namespace Alchemy.Editor /// public abstract class HierarchyDrawer { +#if UNITY_6000_5_OR_NEWER + public abstract void OnGUI(EntityId instanceID, Rect selectionRect); +#else public abstract void OnGUI(int instanceID, Rect selectionRect); +#endif protected static Rect GetBackgroundRect(Rect selectionRect) { return selectionRect.AddXMax(20f); } +#if UNITY_6000_5_OR_NEWER + protected static void DrawBackground(EntityId instanceID, Rect selectionRect) +#else protected static void DrawBackground(int instanceID, Rect selectionRect) +#endif { var backgroundRect = GetBackgroundRect(selectionRect); @@ -39,4 +47,4 @@ protected static void DrawBackground(int instanceID, Rect selectionRect) EditorGUI.DrawRect(backgroundRect, backgroundColor); } } -} \ No newline at end of file +} diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawerInitializer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawerInitializer.cs index c535372..d21bdb9 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawerInitializer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawerInitializer.cs @@ -15,8 +15,12 @@ static void Init() foreach (var drawer in drawers) { +#if UNITY_6000_5_OR_NEWER + EditorApplication.hierarchyWindowItemByEntityIdOnGUI += drawer.OnGUI; +#else EditorApplication.hierarchyWindowItemOnGUI += drawer.OnGUI; +#endif } } } -} \ No newline at end of file +} diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyHeaderDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyHeaderDrawer.cs index ca5ba37..e8d6492 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyHeaderDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyHeaderDrawer.cs @@ -9,7 +9,11 @@ public sealed class HierarchyHeaderDrawer : HierarchyDrawer static Color HeaderColor => EditorGUIUtility.isProSkin ? new(0.45f, 0.45f, 0.45f, 0.5f) : new(0.55f, 0.55f, 0.55f, 0.5f); static GUIStyle labelStyle; +#if UNITY_6000_5_OR_NEWER + public override void OnGUI(EntityId instanceID, Rect selectionRect) +#else public override void OnGUI(int instanceID, Rect selectionRect) +#endif { if (labelStyle == null) { @@ -20,7 +24,11 @@ public override void OnGUI(int instanceID, Rect selectionRect) }; } +#if UNITY_6000_5_OR_NEWER + var gameObject = EditorUtility.EntityIdToObject(instanceID) as GameObject; +#else var gameObject = EditorUtility.InstanceIDToObject(instanceID) as GameObject; +#endif if (gameObject == null) return; if (!gameObject.TryGetComponent(out _)) return; @@ -31,4 +39,4 @@ public override void OnGUI(int instanceID, Rect selectionRect) EditorGUI.LabelField(headerRect, gameObject.name, labelStyle); } } -} \ No newline at end of file +} diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyRowSeparatorDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyRowSeparatorDrawer.cs index 3ff57b9..980575e 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyRowSeparatorDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyRowSeparatorDrawer.cs @@ -5,7 +5,11 @@ namespace Alchemy.Editor { public class HierarchyRowSeparatorDrawer : HierarchyDrawer { +#if UNITY_6000_5_OR_NEWER + public override void OnGUI(EntityId instanceID, Rect selectionRect) +#else public override void OnGUI(int instanceID, Rect selectionRect) +#endif { var settings = AlchemySettings.GetOrCreateSettings(); if (!settings.ShowSeparator) return; @@ -21,4 +25,4 @@ public override void OnGUI(int instanceID, Rect selectionRect) EditorGUI.DrawRect(selectionRect, Mathf.FloorToInt((selectionRect.y - 4) / 16 % 2) == 0 ? settings.EvenRowColor : settings.OddRowColor); } } -} \ No newline at end of file +} diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchySeparatorDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchySeparatorDrawer.cs index 0da41af..432fb8c 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchySeparatorDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchySeparatorDrawer.cs @@ -8,9 +8,17 @@ public sealed class HierarchySeparatorDrawer : HierarchyDrawer { static Color SeparatorColor => new(0.5f, 0.5f, 0.5f); +#if UNITY_6000_5_OR_NEWER + public override void OnGUI(EntityId instanceID, Rect selectionRect) +#else public override void OnGUI(int instanceID, Rect selectionRect) +#endif { +#if UNITY_6000_5_OR_NEWER + var gameObject = EditorUtility.EntityIdToObject(instanceID) as GameObject; +#else var gameObject = EditorUtility.InstanceIDToObject(instanceID) as GameObject; +#endif if (gameObject == null) return; if (!gameObject.TryGetComponent(out _)) return; @@ -20,4 +28,4 @@ public override void OnGUI(int instanceID, Rect selectionRect) EditorGUI.DrawRect(lineRect, SeparatorColor); } } -} \ No newline at end of file +} diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyToggleDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyToggleDrawer.cs index 46af3d2..f9403dc 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyToggleDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyToggleDrawer.cs @@ -7,9 +7,17 @@ namespace Alchemy.Editor { public sealed class HierarchyToggleDrawer : HierarchyDrawer { +#if UNITY_6000_5_OR_NEWER + public override void OnGUI(EntityId instanceID, Rect selectionRect) +#else public override void OnGUI(int instanceID, Rect selectionRect) +#endif { +#if UNITY_6000_5_OR_NEWER + var gameObject = EditorUtility.EntityIdToObject(instanceID) as GameObject; +#else var gameObject = EditorUtility.InstanceIDToObject(instanceID) as GameObject; +#endif if (gameObject == null) return; if (gameObject.TryGetComponent(out _)) return; @@ -100,4 +108,4 @@ private static bool IsNewPrefabWorkflow() } } -} \ No newline at end of file +} diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyTreeMapDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyTreeMapDrawer.cs index 6de84b6..b419e64 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyTreeMapDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyTreeMapDrawer.cs @@ -61,9 +61,17 @@ public static Texture2D TreeMapLine } } +#if UNITY_6000_5_OR_NEWER + public override void OnGUI(EntityId instanceID, Rect selectionRect) +#else public override void OnGUI(int instanceID, Rect selectionRect) +#endif { +#if UNITY_6000_5_OR_NEWER + var gameObject = EditorUtility.EntityIdToObject(instanceID) as GameObject; +#else var gameObject = EditorUtility.InstanceIDToObject(instanceID) as GameObject; +#endif if (gameObject == null) return; var settings = AlchemySettings.GetOrCreateSettings(); @@ -137,4 +145,4 @@ public override void OnGUI(int instanceID, Rect selectionRect) } } } -} \ No newline at end of file +} From 4ca1b591c41ad9310ece7f99a2bff06d256e70c3 Mon Sep 17 00:00:00 2001 From: nnra6864 Date: Tue, 31 Mar 2026 02:38:36 +0200 Subject: [PATCH 2/3] Fixed a remaining warning --- .../Alchemy/Editor/Internal/SerializeReferenceDropdown.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Alchemy/Assets/Alchemy/Editor/Internal/SerializeReferenceDropdown.cs b/Alchemy/Assets/Alchemy/Editor/Internal/SerializeReferenceDropdown.cs index 75dcaf4..d091306 100644 --- a/Alchemy/Assets/Alchemy/Editor/Internal/SerializeReferenceDropdown.cs +++ b/Alchemy/Assets/Alchemy/Editor/Internal/SerializeReferenceDropdown.cs @@ -102,7 +102,11 @@ public static void AddTo(AdvancedDropdownItem root, IEnumerable types) static AdvancedDropdownItem GetItem(AdvancedDropdownItem parent, string name) { +#if UNITY_6000_5_OR_NEWER + foreach (AdvancedDropdownItem item in parent.childList) +#else foreach (AdvancedDropdownItem item in parent.children) +#endif { if (item.name == name) return item; } @@ -150,4 +154,4 @@ static string[] GetSplittedTypePath(Type type) } } -} \ No newline at end of file +} From e302ebf20af1586f7da3e6ce40cd4fae9f79b86b Mon Sep 17 00:00:00 2001 From: nnra6864 Date: Wed, 1 Apr 2026 01:47:00 +0200 Subject: [PATCH 3/3] Lowered min ver for entity id to 6.4 to avoid obsolete warnings --- Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawer.cs | 4 ++-- .../Alchemy/Editor/Hierarchy/HierarchyDrawerInitializer.cs | 2 +- .../Assets/Alchemy/Editor/Hierarchy/HierarchyHeaderDrawer.cs | 4 ++-- .../Alchemy/Editor/Hierarchy/HierarchyRowSeparatorDrawer.cs | 2 +- .../Alchemy/Editor/Hierarchy/HierarchySeparatorDrawer.cs | 4 ++-- .../Assets/Alchemy/Editor/Hierarchy/HierarchyToggleDrawer.cs | 4 ++-- .../Assets/Alchemy/Editor/Hierarchy/HierarchyTreeMapDrawer.cs | 4 ++-- 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawer.cs index 682d982..2309b1d 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawer.cs @@ -8,7 +8,7 @@ namespace Alchemy.Editor /// public abstract class HierarchyDrawer { -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER public abstract void OnGUI(EntityId instanceID, Rect selectionRect); #else public abstract void OnGUI(int instanceID, Rect selectionRect); @@ -19,7 +19,7 @@ protected static Rect GetBackgroundRect(Rect selectionRect) return selectionRect.AddXMax(20f); } -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER protected static void DrawBackground(EntityId instanceID, Rect selectionRect) #else protected static void DrawBackground(int instanceID, Rect selectionRect) diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawerInitializer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawerInitializer.cs index d21bdb9..99a80b1 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawerInitializer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyDrawerInitializer.cs @@ -15,7 +15,7 @@ static void Init() foreach (var drawer in drawers) { -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER EditorApplication.hierarchyWindowItemByEntityIdOnGUI += drawer.OnGUI; #else EditorApplication.hierarchyWindowItemOnGUI += drawer.OnGUI; diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyHeaderDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyHeaderDrawer.cs index e8d6492..18c26ca 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyHeaderDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyHeaderDrawer.cs @@ -9,7 +9,7 @@ public sealed class HierarchyHeaderDrawer : HierarchyDrawer static Color HeaderColor => EditorGUIUtility.isProSkin ? new(0.45f, 0.45f, 0.45f, 0.5f) : new(0.55f, 0.55f, 0.55f, 0.5f); static GUIStyle labelStyle; -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER public override void OnGUI(EntityId instanceID, Rect selectionRect) #else public override void OnGUI(int instanceID, Rect selectionRect) @@ -24,7 +24,7 @@ public override void OnGUI(int instanceID, Rect selectionRect) }; } -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER var gameObject = EditorUtility.EntityIdToObject(instanceID) as GameObject; #else var gameObject = EditorUtility.InstanceIDToObject(instanceID) as GameObject; diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyRowSeparatorDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyRowSeparatorDrawer.cs index 980575e..b6719b5 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyRowSeparatorDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyRowSeparatorDrawer.cs @@ -5,7 +5,7 @@ namespace Alchemy.Editor { public class HierarchyRowSeparatorDrawer : HierarchyDrawer { -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER public override void OnGUI(EntityId instanceID, Rect selectionRect) #else public override void OnGUI(int instanceID, Rect selectionRect) diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchySeparatorDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchySeparatorDrawer.cs index 432fb8c..00bf1f7 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchySeparatorDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchySeparatorDrawer.cs @@ -8,13 +8,13 @@ public sealed class HierarchySeparatorDrawer : HierarchyDrawer { static Color SeparatorColor => new(0.5f, 0.5f, 0.5f); -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER public override void OnGUI(EntityId instanceID, Rect selectionRect) #else public override void OnGUI(int instanceID, Rect selectionRect) #endif { -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER var gameObject = EditorUtility.EntityIdToObject(instanceID) as GameObject; #else var gameObject = EditorUtility.InstanceIDToObject(instanceID) as GameObject; diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyToggleDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyToggleDrawer.cs index f9403dc..47ca2c7 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyToggleDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyToggleDrawer.cs @@ -7,13 +7,13 @@ namespace Alchemy.Editor { public sealed class HierarchyToggleDrawer : HierarchyDrawer { -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER public override void OnGUI(EntityId instanceID, Rect selectionRect) #else public override void OnGUI(int instanceID, Rect selectionRect) #endif { -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER var gameObject = EditorUtility.EntityIdToObject(instanceID) as GameObject; #else var gameObject = EditorUtility.InstanceIDToObject(instanceID) as GameObject; diff --git a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyTreeMapDrawer.cs b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyTreeMapDrawer.cs index b419e64..c285287 100644 --- a/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyTreeMapDrawer.cs +++ b/Alchemy/Assets/Alchemy/Editor/Hierarchy/HierarchyTreeMapDrawer.cs @@ -61,13 +61,13 @@ public static Texture2D TreeMapLine } } -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER public override void OnGUI(EntityId instanceID, Rect selectionRect) #else public override void OnGUI(int instanceID, Rect selectionRect) #endif { -#if UNITY_6000_5_OR_NEWER +#if UNITY_6000_4_OR_NEWER var gameObject = EditorUtility.EntityIdToObject(instanceID) as GameObject; #else var gameObject = EditorUtility.InstanceIDToObject(instanceID) as GameObject;