com.alicizax.unity.framework/Runtime/ABase/ObjectPool/ObjectPoolComponent.cs
2026-03-22 23:03:11 +08:00

42 lines
1.0 KiB
C#

using AlicizaX.ObjectPool;
using UnityEngine;
namespace AlicizaX
{
/// <summary>
/// 对象池组件。
/// </summary>
public sealed class ObjectPoolComponent : MonoBehaviour
{
private IObjectPoolModule _mObjectPoolModule = null;
/// <summary>
/// 获取对象池数量。
/// </summary>
public int Count
{
get { return _mObjectPoolModule.Count; }
}
private void Awake()
{
_mObjectPoolModule = ModuleSystem.RegisterModule<IObjectPoolModule,ObjectPoolModule>();
}
private void OnDestroy()
{
_mObjectPoolModule = null;
}
/// <summary>
/// 获取所有对象池。
/// </summary>
/// <param name="sort">是否根据对象池的优先级排序。</param>
/// <returns>所有对象池。</returns>
public ObjectPoolBase[] GetAllObjectPools(bool sort)
{
return _mObjectPoolModule.GetAllObjectPools(sort);
}
}
}