using AlicizaX.ObjectPool; using UnityEngine; namespace AlicizaX { /// /// 对象池组件。 /// public sealed class ObjectPoolComponent : MonoBehaviour { private IObjectPoolService _mObjectPoolService = null; /// /// 获取对象池数量。 /// public int Count { get { return _mObjectPoolService.Count; } } private void Awake() { _mObjectPoolService = AppServices.GetOrCreateScope().Register(new ObjectPoolService()); } private void OnDestroy() { _mObjectPoolService = null; } /// /// 获取所有对象池。 /// /// 是否根据对象池的优先级排序。 /// 所有对象池。 public ObjectPoolBase[] GetAllObjectPools(bool sort) { return _mObjectPoolService.GetAllObjectPools(sort); } } }