using UnityEngine; using UnityEngine.UI; using System.IO; using System.Collections; using System.Collections.Generic; using Games.LogicObj; public class ChildDelayShowControl : MonoBehaviour { [System.Serializable] public struct ChildInfo { public GameObject obj; public float delay; } public ChildInfo[] ChildGameObjs; private void Awake() { if (ChildGameObjs == null) return; for(int i=0;i< ChildGameObjs.Length;i++) { if (ChildGameObjs[i].obj != null) { ChildGameObjs[i].obj.SetActive(false); ChildGameObjs[i].delay = Time.time + ChildGameObjs[i].delay; } } } private void Update() { if (ChildGameObjs.Length <= 0) return; List Leaves = new List(); for (int i = 0; i < ChildGameObjs.Length; i++) { if (ChildGameObjs[i].obj != null) { if (Time.time > ChildGameObjs[i].delay) { ChildGameObjs[i].obj.SetActive(true); } else Leaves.Add(ChildGameObjs[i]); } } ChildGameObjs = Leaves.ToArray(); } }