Pool.cs
Класс Pool
хранится переменная для контейнера
для того, что бы не спаунить все объекты в корне иерархии, а спаунить дочерними к объектам контейнерам
public class Pool
{
public Transform Container
{
get;
private set;
}
}
очередь
объявляем очередь GameObject
для каждого типа объектов у нас будет объект класса пул, содержащий информацию о дефолтном родителе а так же очередь доступных GameObject
используем очередь, а не список по той причине, что когда мы берём объекты из очереди, то он автоматически из неё удаляется
public Queue<GameObject> Objects;
public Pool(Transform container)
{
Container=container;
Objects=new Queue<GameObject>();
}