| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 | using System.Collections.Generic;using System.Linq;using Core.Language;using Excel2Json;using Fort23.Core;using UnityEngine;using UnityEngine.UI;namespace Fort23.Mono{    [UIBinding(prefab = "EventLogWidget")]    public partial class EventLogWidget : ItemWidgetBasic    {        private XianTuLogConfig _xianTuLogConfig;        List<EventMinLogWidget> eventMinLogWidgets = new List<EventMinLogWidget>();        public XianTuData XianTuData;        private void Init()        {        }        public override void AddEvent()        {        }        public override void DelEvent()        {        }        public override void AddButtonEvent()        {            base.AddButtonEvent();            Btn_HuiGu.onClick.AddListener(() => { XianTuLogInfoPanel.OpenPanel(2, _xianTuLogConfig.ID); });        }        public async CTask CustomInit(XianTuData xianTuData, List<int> places)        {            XianTuData = xianTuData;            _xianTuLogConfig = xianTuData.xianTuLogConfig;            Text_Title.text = LanguageManager.Instance.Text(_xianTuLogConfig.Title);            bool isUlock = false;            if (EventSystemManager.Instance.eventConfigsMap.ContainsKey(_xianTuLogConfig.ID))            {                var configs = EventSystemManager.Instance.eventConfigsMap[_xianTuLogConfig.ID];                foreach (var eventConfig in configs)                {                    AccountFileInfo.EventList eventList =                        AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(cl =>                            cl.eventID == eventConfig.ID);                    if (eventList == null)                    {                        eventList = AccountFileInfo.Instance.playerData.eventList.FirstOrDefault(cl =>                            cl.eventID == eventConfig.ID);                    }                    if (eventList != null && eventList.isCompleted)                    {                        isUlock = true;                    }                    EventMinLogWidget eventMinLogWidget =                        await UIManager.Instance.CreateGComponent<EventMinLogWidget>(null, Connect);                    eventMinLogWidget.CustomInit(eventConfig.ID, eventList, places);                    eventMinLogWidgets.Add(eventMinLogWidget);                }            }            if (isUlock)            {                Text_Desc.text = LanguageManager.Instance.Text(_xianTuLogConfig.Desc);            }            else            {                Text_Desc.text = "?????????????????";            }            LayoutRebuilder.ForceRebuildLayoutImmediate(Connect);            LayoutRebuilder.ForceRebuildLayoutImmediate(Connect.transform.parent.GetComponent<RectTransform>());        }        public override void DormancyObj()        {            foreach (var eventMinLogWidget in eventMinLogWidgets)            {                UIManager.Instance.DormancyGComponent(eventMinLogWidget);            }            eventMinLogWidgets.Clear();            XianTuData = null;            base.DormancyObj();        }    }}
 |