123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- using System;
- using System.Collections.Generic;
- using System.Threading.Tasks;
- using UnityEngine;
- using UnityEngine.UI;
- using static ET.GameSetting;
- using static System.Net.Mime.MediaTypeNames;
- namespace ET.Client
- {
- [FriendOf(typeof(UISettleComponent))]
- public static class UISettleComponentSystem
- {
- [ObjectSystem]
- public class UISettleComponentAwakeSystem : AwakeSystem<UISettleComponent>
- {
- protected override void Awake(UISettleComponent self, params object[] param)
- {
- ReferenceCollector rc = self.GetParent<UI>().GameObject.GetComponent<ReferenceCollector>();
- self.closeBtn = rc.Get<GameObject>("closeBtn");
- self.closeBtn.GetComponent<Button>().onClick.AddListener(() => { self.OnCloseBtn(); });
- self.nextBtn = rc.Get<GameObject>("nextBtn");
- self.nextBtn.GetComponent<Button>().onClick.AddListener(() => { self.OnNextBtn(); });
- for (int i = 0;i < 4;i++)
- {
- var playItem = rc.Get<GameObject>("playItem" + (i + 1));
- var playIcon = rc.Get<GameObject>("playIcon" + (i + 1)).GetComponent<UnityEngine.UI.Image>();
- var playName = rc.Get<GameObject>("playName" + (i + 1)).GetComponent<UnityEngine.UI.Text>();
- var playId = rc.Get<GameObject>("playId" + (i + 1)).GetComponent<UnityEngine.UI.Text>();
- var fightCardContent = rc.Get<GameObject>("fightCardContent" + (i + 1));
- var playSettleType = rc.Get<GameObject>("playSettleType" + (i + 1)).GetComponent<UnityEngine.UI.Image>();
- if (self.settleItemUIs == null)
- {
- self.settleItemUIs = new List<SettleItemUI> ();
- }
- SettleItemUI settleItemUI = new SettleItemUI();
- settleItemUI.playItem = playItem;
- settleItemUI.playIcon = playIcon;
- settleItemUI.playName = playName;
- settleItemUI.fightCardContent = fightCardContent;
- settleItemUI.playId = playId;
- settleItemUI.playSettleType = playSettleType;
- self.settleItemUIs.Add(settleItemUI);
- }
- self.Init();
- }
- }
- private static async void Init(this UISettleComponent self)
- {
- for (int i = 0;i < self.settleItemUIs.Count;i++)
- {
- self.settleItemUIs[i].playItem.SetActive( false);
- }
- var settleInfo = self.ClientScene().GetComponent<StartFightRoomComponment>().GetSettlementInfo();
- var playDatas = settleInfo.PlayerInfo;
- for (int i = 0;i < playDatas.Count;i++)
- {
- self.settleItemUIs[i].playItem.SetActive(true);
- self.settleItemUIs[i].playName.text = playDatas[i].name;
- self.settleItemUIs[i].playId.text = playDatas[i].id.ToString();
- //switch (playDatas[i].)
- //{
-
- //}
- //self.settleItemUIs[i].playSettleType
- self.LoadCardList(self.settleItemUIs[i].fightCardContent, playDatas[i].cardInfo.RemainCards);
- }
- }
- private static async void LoadCardList(this UISettleComponent self,GameObject node, List<int> cardList)
- {
- for (int i = 0; i < node.transform.childCount; i++)
- {
- var child = node.transform.GetChild(i);
- UnityEngine.Object.Destroy(child.gameObject);
- }
- for (int i = 0; i < cardList.Count; i++)
- {
- var uifightItem = GameUtil.Instance.InitializeObj(self.fightCardItem);
- uifightItem.SetActive(true);
- uifightItem.transform.SetParent(node.transform, false);
- string spiring = string.Concat(GameSetting.Instance.selfPlayCardCenterSpiteName, cardList[i]);
- var sprite = await GameObjectPool.Instance.AcquireSprite(spiring);
- UnityEngine.UI.Image icon = uifightItem.GetComponentInChildren<UnityEngine.UI.Image>();
- icon.sprite = sprite;
- }
- }
- public static async void OnCloseBtn(this UISettleComponent self)
- {
- await SoundManager.Instance.PlaySound("clickbtnsound");
- self.OnCloseAsync();
- }
- public static async void OnNextBtn(this UISettleComponent self)
- {
- await SoundManager.Instance.PlaySound("clickbtnsound");
- self.OnCloseAsync();
- var ui = self.ClientScene().GetComponent<UIComponent>().Get(UIType.UIStartFightRoom);
- var startFightRoomComponentUI = ui.GetComponent<UIStartFightRoomComponent>();
- startFightRoomComponentUI.RestartPlayGame();
- }
- public static async void OnCloseAsync(this UISettleComponent self)
- {
- await UIHelper.Remove(self.ClientScene(),UIType.UISettle);
- }
- }
- }
|