using UnityEngine;
using System;
using System.Collections.Generic;

namespace mgaia.Utils
{
    /// <summary>
    /// MonoBehaviour que representa um elemento de pool. Para que um GameObject possa estar em uma Pool, ele deve possuir este behaviour ou algum que deste herde.
    /// </summary>
    public class PoolElement : MonoBehaviour
    {
        public delegate void PoolElementHandler(PoolElement element);

        public event PoolElementHandler PoolElementActionFinished;

        /// <summary>
        /// Método que deve ser chamado quando o PoolElement terminou sua ação e deverá voltar à sua Pool.
        /// </summary>
        public void OnPoolElementActionFinished()
        {
            PoolElementActionFinished(this);
        }
    }
}