//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Wednesday, November 22, 2017 //-------------------------------------------------------- using vnxbqy.UI; using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace vnxbqy.UI { public class ActivitySettleWin : Window { [SerializeField] List activityItemCells = new List(); [SerializeField] RectTransform container_ActivityReward; [SerializeField] GameObject activityNullReawrd; [SerializeField] List achieveItemCells = new List(); [SerializeField] RectTransform container_AchieveReward; [SerializeField] GameObject achieveNullReawrd; [SerializeField] Button rewardGetBtn; DungeonModel m_DungeonModel; DungeonModel dungeonModel { get { return m_DungeonModel ?? (m_DungeonModel = ModelCenter.Instance.GetModel()); } } #region Built-in protected override void BindController() { } protected override void AddListeners() { rewardGetBtn.onClick.AddListener(CloseClick); } protected override void OnPreOpen() { ShowActivityReward(); } protected override void OnAfterOpen() { } protected override void OnPreClose() { dungeonModel.dungeonResult = default(DungeonResult); } protected override void OnAfterClose() { } #endregion void ShowActivityReward() { foreach (var item in achieveItemCells) { item.SetActive(false); } foreach (var item in activityItemCells) { item.SetActive(false); } var actiivityItems = dungeonModel.dungeonResult.itemInfo; bool hasReward = actiivityItems != null && actiivityItems.Length > 0; container_ActivityReward.SetActive(hasReward); activityNullReawrd.SetActive(!hasReward); if (hasReward) { for (int i = 0; i < actiivityItems.Length; i++) { if (i < activityItemCells.Count) { activityItemCells[i].SetActive(true); ItemCell itemCell = activityItemCells[i]; ServerItem serverItem = actiivityItems[i]; ItemCellModel cellModel = new ItemCellModel(serverItem.ItemID, false, (ulong)serverItem.Count , "", PackType.Deleted, false, ConfigParse.Analysis(serverItem.UserData)); itemCell.Init(cellModel); itemCell.button.RemoveAllListeners(); itemCell.button.AddListener(() => { ShowItemDetails(serverItem); }); } } } var achieveItems = dungeonModel.dungeonResult.succItemInfo; hasReward = achieveItems != null && achieveItems.Length > 0; container_AchieveReward.SetActive(hasReward); achieveNullReawrd.SetActive(!hasReward); if (hasReward) { for (int i = 0; i < achieveItems.Length; i++) { if (i < achieveItemCells.Count) { achieveItemCells[i].SetActive(true); ItemCell itemCell = achieveItemCells[i]; ServerItem serverItem = achieveItems[i]; ItemCellModel cellModel = new ItemCellModel(serverItem.ItemID, false, (ulong)serverItem.Count, "", PackType.Deleted, false, ConfigParse.Analysis(serverItem.UserData)); itemCell.Init(cellModel); itemCell.button.RemoveAllListeners(); itemCell.button.AddListener(() => { ShowItemDetails(serverItem); }); } } } } private void ShowItemDetails(ServerItem serverItem) { ItemTipUtility.Show(serverItem.ItemID); } } }