chenxin
2020-10-31 bc14626b98377c39db4d77029326389bb34484a8
Assets/Scripts/TowerDefense/UI/EndlessBuffSelect.cs
@@ -16,13 +16,6 @@
    {
        public List<SelectBuffIcon> IconList;
        private string iconPath = "UI/Endless/BuffIcon/BuffIcon_";
        /// <summary>
        /// buff是否选中完成
        /// </summary>
        private bool isCompleted;
        public event Action<int> BuffSelectCompleted;
        /// <summary>
@@ -32,9 +25,11 @@
        public Button SelectBtn;
        public GameObject EffectObj;
        public GameObject EffectPrefabObject;
        private Vector3[] effectPosArr = { new Vector3(-21.6f, 73.4f, 5.5f), new Vector3(0, 73.4f, 5.5f), new Vector3(21.6f, 73.4f, 5.5f) };
        private GameObject effectObj;
        private Vector3[] effectPosArr = { new Vector3(-21.6f, 0, 6.6f), new Vector3(0, 0, 6.6f), new Vector3(21.6f, 0, 6.6f) };
        // Start is called before the first frame update
        private void Start()
@@ -49,15 +44,18 @@
        private void OnEnable()
        {
            isCompleted = false;
            SelectedIndex = -1;
            for (int i = 0; i < IconList.Count; ++i)
            {
                IconList[i].Reset();
            }
        }
            EndlessMaskUI.instance.Show();
        private void OnDisable()
        {
            if (effectObj != null)
                Destroy(effectObj);
        }
        public void OnClick(int index)
@@ -79,16 +77,26 @@
        private void PlayEffect()
        {
            EffectObj.transform.localPosition = effectPosArr[SelectedIndex];
            ParticleSystem ps = EffectObj.transform.GetChild(0).GetComponent<ParticleSystem>();
            if (effectObj == null)
            {
                effectObj = Instantiate(EffectPrefabObject);
                GameObject particleSystemObject = GameObject.Find("ParticleSystemObject");
                effectObj.transform.SetParent(particleSystemObject.transform, false);
                effectObj.transform.localScale = new Vector3(1.5f, 1.5f, 1.5f);
            }
            effectObj.transform.localPosition = effectPosArr[SelectedIndex];
            ParticleSystem ps = effectObj.transform.GetChild(0).GetComponent<ParticleSystem>();
            ps.Play();
        }
        private void StopEffect()
        {
            ParticleSystem ps = EffectObj.transform.GetChild(0).GetComponent<ParticleSystem>();
            if (effectObj != null)
            {
                ParticleSystem ps = effectObj.transform.GetChild(0).GetComponent<ParticleSystem>();
            ps.Stop();
            ps.Clear();
            }
        }
        /// <summary>
@@ -108,6 +116,7 @@
        public void ShowBuffUI()
        {
            EndlessMaskUI.instance.Show();
            gameObject.SetActive(true);
        }