liuzhiwei
2020-11-04 78e14d93c46238881339f33a56c81275c55d5089
Assets/Scripts/TowerDefense/UI/EndlessDropReward.cs
@@ -6,6 +6,8 @@
using TowerDefense.Level;
using System;
using Protobuf;
using DG.Tweening;
/**
 * 无尽模式道具掉落管理器
@@ -65,28 +67,57 @@
        public event Action<EndlessDrop> ClickDropEvent;
        private bool isBox;//是否是宝箱
        private GameObject propBtn;
        // Start is called before the first frame update
        private void Start()
        {
            ClickDropEvent += EndlessDropManager.instance.OnClickDrop;
            propBtn = GameObject.Find("BottomUI/PropsObtained/PropButton");
        }
        public GameObject drapIcon;
        public void OnClick()
        {
            if (isBox)
            {
                EndlessDropManager.instance.FlyIcon(transform.parent, Icon.sprite, transform.position, (propBtn.transform as RectTransform).position, true);
            }
            else
            {
                FlyImage fly = EndlessDropManager.instance.CreateIcon(transform.parent);
                fly.SetDestination(Icon.sprite, transform.position, (propBtn.transform as RectTransform).position, false);
            }
            if (ClickDropEvent != null)
                ClickDropEvent(DropData);
        }
        public void SetIcon()
        {
            string resId = "";
            Vector3 scale = Icon.rectTransform.localScale;
            if (DropData.Reward.id == 0)
            {
                resId = $"{path}{(int)DropData.Reward.type}";
                isBox = true;
            }
            else
            {
                resId = $"{path}{(int)DropData.Reward.type}_{DropData.Reward.id}";
                scale *= 1.5f;
                isBox = false;
            }
            Icon.sprite = Resources.Load<Sprite>(resId);
            Icon.SetNativeSize();
            //Debug.Log("开始缩放");
            Icon.rectTransform.localScale = scale * 0.5f;
            Icon.rectTransform.DOScale(scale, 0.5f);
        }
        /// <summary>
@@ -96,5 +127,7 @@
        {
            LightParticle.Play();
        }
    }
}