using System.Collections.Generic; using Core.Language; using Excel2Json; using Fort23.Core; using Fort23.UTool; using GameLogic.Bag; using GameLogic.Player; namespace Fort23.Mono { [UIBinding(prefab = "TaskInfoPanel")] public partial class TaskInfoPanel : UIPanel { List widgetItems = new List(); private void Init() { isAddStack = false; } protected override void AddEvent() { } protected override void DelEvent() { } public override void AddButtonEvent() { Btn_Close.onClick.AddListener(() => { UIManager.Instance.HideUIUIPanel(this); }); } public async void CustomInit(int taskId, string title) { EventConfig taskConfig = ConfigComponent.Instance.Get(taskId); Text_Title.text = title; Text_Name.text = LanguageManager.Instance.Text(taskConfig.EventName); Text_desc.text = LanguageManager.Instance.Text(taskConfig.Description); // if (taskConfig.awardItemId != null) // { // List itemInfos = new List(); // for (var i = 0; i < taskConfig.awardItemId.Length; i++) // { // DropConfig dropConfig = ConfigComponent.Instance.Get(taskConfig.awardItemId[i]); // if (dropConfig.dropType == 3) // { // ItemInfo itemInfo = new ItemInfo(dropConfig.dropGroupID[0], taskConfig.awardItemCount[i]); // itemInfos.Add(itemInfo); // } // else // { // List items = DropManager.Instance.DropItem(taskConfig.awardItemCount[i]); // itemInfos.AddRange(items); // } // } // // foreach (var itemInfo in itemInfos) // { // WidgetItem widgetItem = await UIManager.Instance.CreateGComponent(null, root: ItemRoot); // widgetItem.InitWidget(itemInfo); // widgetItems.Add(widgetItem); // } // } } public async static CTask OpenPanel(int taskId,string title) { TaskInfoPanel taskInfoPanel = await UIManager.Instance.LoadAndOpenPanel(null,UILayer.Top); taskInfoPanel.CustomInit(taskId, title); return taskInfoPanel; } public override void Close() { foreach (var widgetItem in widgetItems) { UIManager.Instance.DormancyGComponent(widgetItem); } widgetItems.Clear(); base.Close(); } } }