summaryrefslogtreecommitdiff
path: root/Client/Assets/Scripts/XUtliPoolLib/XAnimationPool.cs
blob: b51ca1ac3907757716eaca99c88b6111e3b9ff31 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using System;
using UnityEngine;

namespace XUtliPoolLib
{
	public class XAnimationPool
	{
		private static readonly ObjectPool<XAnimationClip> s_Pool = new ObjectPool<XAnimationClip>(new ObjectPool<XAnimationClip>.CreateObj(XAnimationPool.Create), null, null);

		public static XAnimationClip Create()
		{
			return ScriptableObject.CreateInstance<XAnimationClip>();
		}

		public static XAnimationClip Get()
		{
			return XAnimationPool.s_Pool.Get();
		}

		public static void Release(XAnimationClip toRelease)
		{
			bool flag = toRelease != null;
			if (flag)
			{
				toRelease.Reset();
			}
			XAnimationPool.s_Pool.Release(toRelease);
		}
	}
}