// using System.Collections;
|
// using System.Collections.Generic;
|
// using UnityEngine;
|
// namespace vnxbqy.UI
|
// {
|
// public class ItemBaseEffect : MonoBehaviour
|
// {
|
// [SerializeField] UIEffect m_SuitEffect;
|
|
// int itemId = 0;
|
|
// private void OnEnable()
|
// {
|
// Display(itemId);
|
// }
|
|
// public void Display(int itemId, bool dirty = false)
|
// {
|
// this.itemId = itemId;
|
// var curItem = ItemConfig.Get(this.itemId);
|
// bool isPlay = true;
|
// if (curItem == null)
|
// {
|
// isPlay = false;
|
// return;
|
// }
|
|
// int effectId = 0;
|
// switch (curItem.ItemColor)
|
// {
|
// case 4:
|
// effectId = 7119;
|
// break;
|
// case 5:
|
// effectId = 7120;
|
// break;
|
// case 6:
|
// case 7:
|
// case 8:
|
// effectId = 7121;
|
// break;
|
// }
|
|
// if (curItem.BaseEffectID != 0)
|
// {
|
// effectId = curItem.BaseEffectID;
|
// }
|
|
// if (m_SuitEffect.effect != effectId)
|
// {
|
// //同一个位置替换特效需要先释放
|
// m_SuitEffect.StopImediatly();
|
// }
|
// m_SuitEffect.effect = effectId;
|
|
// if (m_SuitEffect.effect == 0)
|
// {
|
// isPlay = false;
|
// }
|
// if (isPlay)
|
// {
|
// m_SuitEffect.Play();
|
// }
|
// else
|
// {
|
// m_SuitEffect.StopImediatly();
|
// }
|
|
// if (dirty)
|
// {
|
// SnxxzGame.Instance.StartCoroutine(Co_SetOrder(this, transform as RectTransform));
|
// }
|
// }
|
|
// public static ItemBaseEffect Create(RectTransform transform)
|
// {
|
// var go = UIUtility.CreateWidget("ItemBaseEffect", "ItemBaseEffect");
|
// var behaviour = go.GetComponent<ItemBaseEffect>();
|
|
// SnxxzGame.Instance.StartCoroutine(Co_SetOrder(behaviour, transform));
|
|
// var scale = 1f;
|
// var itemBasic = transform.GetComponentInParent<CommonItemBaisc>();
|
// if (itemBasic == null)
|
// itemBasic = transform.GetComponentInParent<ItemCell>();
|
// if (itemBasic != null)
|
// {
|
// scale = GetEffectScale(itemBasic.format);
|
// }
|
// else
|
// {
|
// var itemBehaviour = transform.GetComponentInParent<ItemBehaviour>();
|
// if (itemBehaviour != null)
|
// {
|
// if (itemBehaviour.backGround != null)
|
// {
|
// var size = itemBehaviour.backGround.rectTransform.rect.width;
|
// scale = size / 84;
|
// }
|
// }
|
// else
|
// {
|
// var findPreciousItemBehaviour = transform.GetComponentInParent<FindPreciousItemBehaviour>();
|
// if (findPreciousItemBehaviour != null)
|
// {
|
// scale = 0.86f; //暂且写死
|
// }
|
// }
|
// }
|
|
// var rect = go.transform as RectTransform;
|
// go.transform.SetParentEx(transform, Vector3.zero, Quaternion.identity, Vector3.one);
|
// rect.MatchWhith(transform);
|
// go.transform.localScale = Vector3.one * scale;
|
// go.transform.SetAsLastSibling();
|
|
// return behaviour;
|
// }
|
|
// static IEnumerator Co_SetOrder(ItemBaseEffect behaviour, RectTransform transform)
|
// {
|
// yield return null;
|
|
// if (transform == null || behaviour == null)
|
// {
|
// yield break;
|
// }
|
|
// Canvas canva = transform.GetComponentInParent<Canvas>();
|
// if (canva != null)
|
// {
|
// behaviour.m_SuitEffect.ResetOrder(canva.sortingOrder + 1);
|
// }
|
|
// if (behaviour.m_SuitEffect.maskArea == null)
|
// {
|
// behaviour.m_SuitEffect.SetMask();
|
// }
|
// }
|
|
// static float GetEffectScale(ItemCellformat format)
|
// {
|
// switch (format)
|
// {
|
// case ItemCellformat.Format_80x80:
|
// return 0.95f;
|
// case ItemCellformat.Format_70x70:
|
// return 0.83f;
|
// case ItemCellformat.Format_64x64:
|
// return 0.76f;
|
// default:
|
// return 1f;
|
// }
|
// }
|
// }
|
// }
|