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

namespace MPStudio
{
    public class ChildrensEffect : MonoBehaviour
    {
        public float wait=0.15f;
        
        public GameObject spawnGo;

        //当对象池回收太快就好像没有回收一样。这就是动画和回收时间一样的效果，我打印过有回收。有回收说明隐藏过。也证实了
        IEnumerator Spawn()
        {
            while (true)
            {
                for (int i = 0; i < 3; i++)
                {
                    var animalCost = 0f;
                    var go=PoolManager.Inst.SpawnGo("PoolObj/childrensEffectGo", null);
                        go.transform.SetParent(this.transform);
                        go.GetComponent<AutoMove>().speed = 12f;
                       
                        go.GetComponent<AutoMove>().dir =
                            new Vector3(UnityEngine.Random.Range(-1f, 1f), UnityEngine.Random.Range(-1f, 1f), 0).normalized;
                        go.transform.localScale=Vector3.one;
                        go.transform.localPosition = transform.localPosition;
                        
                        animalCost = go.GetComponent<AutoToPool>().delay;
                        
                        TweenManager.Inst.GrowAlpha(go.transform,true,animalCost,0.85f,0);
                        TweenManager.Inst.GrowScale(go.transform,animalCost,1f,1.25f);
                        
                    yield return new WaitForSeconds(this.wait);
                }
            }
        }

    void  Start()
    {
        StartCoroutine(Spawn());
        StartCoroutine(Spawn());
        StartCoroutine(Spawn());
    }
    }
}