using UnityEngine;
using UnityEngine.UI;
using DG.Tweening;
public class BuffFly : MonoBehaviour
{
private Image Icon;
///
/// 边框
///
private Image BorderImage;
///
/// 品质底图
///
private Image QualityImage;
///
/// buff名称
///
private Text Name;
///
/// 效果描述
///
private Text Effect;
public void SetIcon(Sprite sprite)
{
Icon.sprite = sprite;
}
///
/// 设置buff品质
///
///
public void SetQuality(Sprite sprite)
{
QualityImage.sprite = sprite;
}
public void SetName(string buffName)
{
Name.text = buffName;
}
///
/// 设置buff效果描述
///
///
public void SetEffect(string effect)
{
Effect.text = effect;
}
///
/// 设置品级
///
///
public void SetRare(Color color)
{
Name.color = color;
}
Vector3 startP;
Transform buffPreviewButton;
Vector3 endScale;
Vector3 endRotate;
///
/// Awake is called when the script instance is being loaded.
///
void Awake()
{
endScale = new Vector3(0.1f, 0.1f, 0.1f);
endRotate = new Vector3(0f, 0f, -90f);
startP = transform.position;
buffPreviewButton = transform.parent.parent.Find("BuffPreviewButton/Image").transform;
Icon = transform.Find("Icon").GetComponent();
BorderImage = transform.Find("Border").GetComponent();
QualityImage = transform.Find("Quality").GetComponent();
Name = transform.Find("Name").GetComponent();
Effect = transform.Find("Effect").GetComponent();
gameObject.SetActive(false);
}
///
/// 飞动
///
public void Fly()
{
gameObject.SetActive(true);
transform.DOScale(endScale, 0.7f);
transform.DOLocalRotate(endRotate, 0.3f);
transform.DOMove(buffPreviewButton.position, 0.7f).SetEase(Ease.OutQuad).OnComplete(() =>
{
transform.position = startP;
transform.localScale = Vector3.one;
transform.localEulerAngles = Vector3.zero;
gameObject.SetActive(false);
});
}
}