using System; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace ET.Client { public class StartFightCardItem : MonoBehaviour { public Image icon; public int val; public Action cb; private bool isSelect = false; public bool IsSelect{ get => isSelect; set => isSelect = value; } public async void Init(Image icon,int val,Action cb) { this.icon = icon; this.val = val; this.cb = cb; var sprite = await GameObjectPool.Instance.AcquireSprite(string.Concat(GameSetting.Instance.selfPlayCardSpiteName, this.val)); this.icon.sprite = sprite; this.icon.gameObject.OnClick(() => { if (isSelect) { GetDown(); } else { StandUp(); } }); icon.gameObject.OnDoubleClick(() => { this.cb?.Invoke(this.val); }); } public void StandUp() { if (IsSelect) { return; } IsSelect = true; RectTransform rt = icon.gameObject.GetComponent(); rt.localPosition = new Vector3(rt.localPosition.x, rt.localPosition.y + 30, rt.localPosition.z); GameObjectPool.Instance.OperatoRarealySelCardList(0, this.val); } public void GetDown() { if (!IsSelect) return; IsSelect = false; RectTransform rt = icon.gameObject.GetComponent(); rt.localPosition = new Vector3(rt.localPosition.x, rt.localPosition.y - 30, rt.localPosition.z); GameObjectPool.Instance.OperatoRarealySelCardList(1, this.val); } } }