using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using GCGame.Table; using Module.Log; using System; public class DailyCopyInfoItemsPanelCtr : MonoBehaviour { private static DailyCopyInfoItemsPanelCtr instance; public static DailyCopyInfoItemsPanelCtr Instance { get { return instance; } } public Button closeUseItemsPanelBtn; public UIContainerBase useItemContainer; private void Awake() { if (instance == null) { instance = this; } closeUseItemsPanelBtn.onClick.AddListener(OnHideUseItemPanelBtnClick); } public static void Show(int copyID = -1) { UIManager.ShowUI(UIInfo.DailyCopyInfoItemsPanel, (bool isSuccess, object param) => { if (isSuccess && DailyCopyInfoItemsPanelCtr.Instance != null) { DailyCopyInfoItemsPanelCtr.Instance.ShowWithCopyID((int)param); } else { LogModule.ErrorLog("Can't show DailyCopyInfoItemsPanel !"); } }, copyID); } public void ShowWithCopyID(int copyID) { Tab_DailyCopy tab = TableManager.GetDailyCopyByID(copyID); if (tab == null) { LogModule.ErrorLog("Can't show UseableItemPanel, table is null"); return; } string rawParam = tab.UseItemParam; string[] param = rawParam.Trim('"', ' ', '\'').Split('*'); List itemIDs = new List(); for (int i = 0; i < param.Length; ++i) { try { int id = -1; if (!string.IsNullOrEmpty(param[i])) { id = Convert.ToInt32(param[i].Trim(' ', '"')); } if (id > 0) { itemIDs.Add(id); } } catch (Exception e) { } } for (int i = 0; i < itemIDs.Count; ++i) { useItemContainer.InitContentItem(itemIDs); } } #region 试炼谷(副本id=6200到6210)增加一个界面按钮 public static void L_Show(int SystemParamID = -1) { UIManager.ShowUI(UIInfo.DailyCopyInfoItemsPanel, (bool isSuccess, object param) => { if (isSuccess && DailyCopyInfoItemsPanelCtr.Instance != null) { DailyCopyInfoItemsPanelCtr.Instance.L_ShowWithSystemParamID((int)param); } else { LogModule.ErrorLog("Can't show DailyCopyInfoItemsPanel !"); } }, SystemParamID); } public void L_ShowWithSystemParamID(int systemParamID) { Tab_SystemParam tab = TableManager.GetSystemParamByID(systemParamID, 0); if (tab == null) { LogModule.ErrorLog("Can't show UseableItemPanel, table is null"); return; } string rawParam = tab.StringValue; string[] param = rawParam.Trim('"', ' ', '\'').Split('|'); List itemIDs = new List(); for (int i = 0; i < param.Length; ++i) { try { int id = -1; if (!string.IsNullOrEmpty(param[i])) { id = Convert.ToInt32(param[i].Trim(' ', '"')); } if (id > 0) { itemIDs.Add(id); } } catch (Exception e) { } } for (int i = 0; i < itemIDs.Count; ++i) { useItemContainer.InitContentItem(itemIDs); } } #endregion private void OnHideUseItemPanelBtnClick() { UIManager.CloseUI(UIInfo.DailyCopyInfoItemsPanel); } }