using FairyGUI; using System.Collections; using UI.Card; using UnityEngine; namespace GFGGame { public class CardStoryView : BaseWindow { private UI_CardStoryUI _ui; private CardData _viewData; public override void Dispose() { if (_ui != null) { _ui.Dispose(); _ui = null; } base.Dispose(); } protected override void OnInit() { base.OnInit(); _ui = UI_CardStoryUI.Create(); this.viewCom = _ui.target; this.viewCom.Center(); this.modal = true; viewAnimationType = EnumViewAnimationType.ZOOM_CENTER; _ui.m_btnMood.onClick.Add(OnClickBtnMood); _ui.m_listCardStory.itemRenderer = RenderListCardStoryItem; } protected override void OnShown() { base.OnShown(); _viewData = this.viewData as CardData; _ui.m_btnMood.grayed = _viewData.star < _viewData.itemCfg.cardMoodStar ? true : false; _ui.m_btnMood.visible = false; _ui.m_listCardStory.numItems = CardDataManager.GetStoryCfgsById(_viewData.itemCfg.id).Count; } private void RenderListCardStoryItem(int index, GObject obj) { UI_ListCardStoryItem listItem = UI_ListCardStoryItem.Proxy(obj); CardStoryCfg cardStoryCfg = CardDataManager.GetStoryCfgsById(_viewData.itemCfg.id)[index]; listItem.m_txtTitle.text = string.Format("第{0}节", NumberUtil.GetChiniseNumberText(index + 1));// "第" + NumberUtil.GetChiniseNumberText(index + 1) + "节"; if (_viewData.lv >= cardStoryCfg.lvl) { listItem.m_c1.selectedIndex = 0; if (listItem.target.data == null) { listItem.m_btnGo.onClick.Add(OnClickBtnGo); } listItem.m_btnGo.data = cardStoryCfg; } else { listItem.m_c1.selectedIndex = 1; listItem.m_txtDescribe.text = string.Format("词牌等级达到{0}级解锁", cardStoryCfg.lvl); ; ;// "词牌等级达到" + cardStoryCfg.lvl + "级解锁"; } UI_ListCardStoryItem.ProxyEnd(); } private void OnClickBtnGo(EventContext context) { var cardStoryCfg = ((GButton)context.sender).data as CardStoryCfg; if(cardStoryCfg == null) { return; } StoryController.ShowCardStoryDialog(cardStoryCfg, _viewData); } private void OnClickBtnMood() { if (_viewData.star < _viewData.itemCfg.cardMoodStar) { PromptController.Instance.ShowFloatTextPrompt(string.Format("词牌星级达到{0}级解锁", _viewData.itemCfg.cardMoodStar)); return; } ViewManager.Show(_viewData, new object[] { typeof(CardStoryView).FullName, _viewData }); } protected override void OnHide() { base.OnHide(); } } }