diff options
author | chai <215380520@qq.com> | 2024-05-23 10:08:29 +0800 |
---|---|---|
committer | chai <215380520@qq.com> | 2024-05-23 10:08:29 +0800 |
commit | 8722a9920c1f6119bf6e769cba270e63097f8e25 (patch) | |
tree | 2eaf9865de7fb1404546de4a4296553d8f68cc3b /Other/AstarPathfindingDemo/Packages/com.arongranberg.astar/Core/Misc/UnityCompatibility.cs | |
parent | 3ba4020b69e5971bb0df7ee08b31d10ea4d01937 (diff) |
+ astar project
Diffstat (limited to 'Other/AstarPathfindingDemo/Packages/com.arongranberg.astar/Core/Misc/UnityCompatibility.cs')
-rw-r--r-- | Other/AstarPathfindingDemo/Packages/com.arongranberg.astar/Core/Misc/UnityCompatibility.cs | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/Other/AstarPathfindingDemo/Packages/com.arongranberg.astar/Core/Misc/UnityCompatibility.cs b/Other/AstarPathfindingDemo/Packages/com.arongranberg.astar/Core/Misc/UnityCompatibility.cs new file mode 100644 index 0000000..6fdd1e6 --- /dev/null +++ b/Other/AstarPathfindingDemo/Packages/com.arongranberg.astar/Core/Misc/UnityCompatibility.cs @@ -0,0 +1,38 @@ +using UnityEngine; + +namespace Pathfinding.Util { + /// <summary>Compatibility class for Unity APIs that are not available in all Unity versions</summary> + public static class UnityCompatibility { + public static T[] FindObjectsByTypeSorted<T>() where T : Object { +#if UNITY_2021_3_OR_NEWER && !(UNITY_2022_1_OR_NEWER && !UNITY_2022_2_OR_NEWER) + return Object.FindObjectsByType<T>(FindObjectsSortMode.InstanceID); +#else + return Object.FindObjectsOfType<T>(); +#endif + } + + public static T[] FindObjectsByTypeUnsorted<T>() where T : Object { +#if UNITY_2021_3_OR_NEWER && !(UNITY_2022_1_OR_NEWER && !UNITY_2022_2_OR_NEWER) + return Object.FindObjectsByType<T>(FindObjectsSortMode.None); +#else + return Object.FindObjectsOfType<T>(); +#endif + } + + public static T[] FindObjectsByTypeUnsortedWithInactive<T>() where T : Object { +#if UNITY_2021_3_OR_NEWER && !(UNITY_2022_1_OR_NEWER && !UNITY_2022_2_OR_NEWER) + return Object.FindObjectsByType<T>(FindObjectsInactive.Include, FindObjectsSortMode.None); +#else + return Object.FindObjectsOfType<T>(true); +#endif + } + + public static T FindAnyObjectByType<T>() where T : Object { +#if UNITY_2021_3_OR_NEWER && !(UNITY_2022_1_OR_NEWER && !UNITY_2022_2_OR_NEWER) + return Object.FindAnyObjectByType<T>(); +#else + return Object.FindObjectOfType<T>(); +#endif + } + } +} |