2
0
Fork 0
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
1.0 KiB
C#

using UnityEngine;
namespace Game
{
public class EntityPoolItem : ObjectPoolItemBase
{
public GameObject GameObject;
protected override void OnCreate()
{
base.OnCreate();
GameObject.SetActive(false);
}
protected override void OnDestroy()
{
base.OnDestroy();
GameObject.SetActive(false);
}
}
public class EntityPoolManager : ObjectPoolBase<EntityPoolManager>
{
public EntityPoolItem CreateEntity(string entityId)
{
var entityNew = Create<EntityPoolItem>($"Entity{entityId}", item =>
{
item.GameObject = CreateEntityGo(entityId);
item.GameObject.transform.SetParent(Root.transform);
});
return entityNew;
}
private GameObject CreateEntityGo(string entityId)
{
var path = $"{entityId}";
return PrefabManager.Instance.CreateGo(path);
}
}
}