using System.Linq; using UnityEngine; namespace vnxbqy.UI { public class FairySiegeGuessCellItem : MonoBehaviour { [SerializeField] ButtonEx btnChoose; [SerializeField] ImageEx imgChoose; [SerializeField] EmblemCell emblemCell; [SerializeField] TextEx txtFairyName; [SerializeField] TextEx txtGuessCnt; int emblemId; int familyId; FairySiegeActModel model { get { return ModelCenter.Instance.GetModel(); } } public void Display(int familyId) { if (!model.TryGetFairySiegeFamilyInfo((uint)familyId, out FairySiegeFamilyInfo fairySiegeFamilyInfo)) return; this.familyId = familyId; emblemId = (int)fairySiegeFamilyInfo.EmblemID; txtFairyName.text = fairySiegeFamilyInfo.Name; emblemCell.InitUI(EmblemHelper.GetOtherEmblemModel(emblemId)); imgChoose.SetActive(model.chooseArr.Contains(familyId)); btnChoose.SetListener(SkipClick); int guessValue = (int)model.guessFamilyListDict[(uint)familyId]; txtGuessCnt.text = guessValue.ToString(); } private void SkipClick() { int index; if (model.chooseArr.Contains(familyId)) { if (!model.TryGetIndex(familyId, out index)) return; model.chooseArr[index] = 0; } else { //最多可选择x个仙盟 if (!model.TryGetIndex(out index)) { SysNotifyMgr.Instance.ShowTip("FairySiege01", model.ScrRowCntMax); return; } model.chooseArr[index] = familyId; } imgChoose.SetActive(model.chooseArr.Contains(familyId)); model.UpdateChooseAction?.Invoke(); } } }