CardStoryView.cs 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. using FairyGUI;
  2. using System.Collections;
  3. using UI.Card;
  4. using UnityEngine;
  5. namespace GFGGame
  6. {
  7. public class CardStoryView : BaseWindow
  8. {
  9. private UI_CardStoryUI _ui;
  10. private CardData _viewData;
  11. public override void Dispose()
  12. {
  13. base.Dispose();
  14. }
  15. protected override void OnInit()
  16. {
  17. base.OnInit();
  18. _ui = UI_CardStoryUI.Create();
  19. this.viewCom = _ui.target;
  20. this.viewCom.Center();
  21. this.modal = true;
  22. viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
  23. _ui.m_btnMood.onClick.Add(OnClickBtnMood);
  24. _ui.m_listCardStory.itemRenderer = RenderListCardStoryItem;
  25. }
  26. protected override void OnShown()
  27. {
  28. base.OnShown();
  29. _viewData = this.viewData as CardData;
  30. _ui.m_btnMood.grayed = _viewData.star < _viewData.itemCfg.cardMoodStar ? true : false;
  31. _ui.m_listCardStory.numItems = CardDataManager.GetStoryCfgsById(_viewData.itemCfg.id).Count;
  32. }
  33. private void RenderListCardStoryItem(int index, GObject obj)
  34. {
  35. CardStoryCfg cardStoryCfg = CardDataManager.GetStoryCfgsById(_viewData.itemCfg.id)[index];
  36. UI_ListCardStoryItem listItem = UI_ListCardStoryItem.Proxy(obj);
  37. listItem.m_txtTitle.text = string.Format("第{0}节", NumberUtil.GetChiniseNumberText(index + 1));// "第" + NumberUtil.GetChiniseNumberText(index + 1) + "节";
  38. if (_viewData.lv >= cardStoryCfg.lvl)
  39. {
  40. listItem.m_c1.selectedIndex = 0;
  41. if (listItem.target.data == null)
  42. {
  43. listItem.m_btnGo.onClick.Add(() => OnClickBtnGo(cardStoryCfg));
  44. listItem.target.data = cardStoryCfg.cardId;
  45. }
  46. }
  47. else
  48. {
  49. listItem.m_c1.selectedIndex = 1;
  50. listItem.m_txtDescribe.text = string.Format("词牌等级达到{0}级解锁", cardStoryCfg.lvl); ; ;// "词牌等级达到" + cardStoryCfg.lvl + "级解锁";
  51. }
  52. UI_ListCardStoryItem.ProxyEnd();
  53. }
  54. private void OnClickBtnGo(CardStoryCfg cardStoryCfg)
  55. {
  56. StoryController.ShowCardStoryDialog(cardStoryCfg, _viewData);
  57. }
  58. private void OnClickBtnMood()
  59. {
  60. if (_viewData.star < _viewData.itemCfg.cardMoodStar)
  61. {
  62. PromptController.Instance.ShowFloatTextPrompt(string.Format("词牌星级达到{0}级解锁", _viewData.itemCfg.cardMoodStar));
  63. return;
  64. }
  65. ViewManager.Show(ViewName.CARD_Mood_VIEW, _viewData, new object[] { typeof(CardStoryView).Name, _viewData });
  66. }
  67. protected override void OnHide()
  68. {
  69. base.OnHide();
  70. }
  71. }
  72. }