源战役客户端
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

164 linhas
5.6 KiB

  1. ChildHandbookBreakView = ChildHandbookBreakView or BaseClass(BaseView)
  2. local ChildHandbookBreakView = ChildHandbookBreakView
  3. -- ChildHandbookBreakView.TabData = {
  4. -- [1] = {name = "人物", level = 1},
  5. -- [2] = {name = "人", level = 1},
  6. -- [3] = {name = "物", level = 1},
  7. -- }
  8. local color_name_str = {
  9. [1] = "绿色玩具",
  10. [2] = "蓝色玩具",
  11. [3] = "紫色玩具",
  12. [4] = "橙色玩具",
  13. [5] = "红色玩具",
  14. }
  15. function ChildHandbookBreakView:__init()
  16. self.base_file = "child"
  17. self.layout_file = "ChildHandbookBreakView"
  18. self.layer_name = "Activity"
  19. self.destroy_imm = true
  20. self.use_background = true --全屏界面默认使用这个参数
  21. self.hide_maincancas = true
  22. self.change_scene_close = true
  23. self.append_to_ctl_queue = false --是否要添加进界面堆栈
  24. self.need_show_money = false --是否要显示顶部的金钱栏
  25. self.is_set_zdepth = true
  26. self.model = ChildModel:GetInstance()
  27. self.blur_activity_bg = true
  28. self.color_had_num_txts = {} --拥有
  29. self.color_get_num_txts = {} --可获得
  30. self.color_names = {} -- 颜色名字
  31. self.break_list = {}
  32. self.load_callback = function ()
  33. self:LoadSuccess()
  34. self:AddEvent()
  35. end
  36. self.open_callback = function ( )
  37. self:OpenSuccess()
  38. end
  39. self.switch_callback = function(index)
  40. self:SwitchTab(index)
  41. end
  42. self.destroy_callback = function ( )
  43. self:DestroySuccess()
  44. end
  45. end
  46. function ChildHandbookBreakView:Open( )
  47. --self.data = data
  48. BaseView.Open(self)
  49. end
  50. function ChildHandbookBreakView:LoadSuccess()
  51. local nodes = {
  52. "container:obj","container/quit_btn:obj","container/sure_btn:obj",
  53. "container/hadCon/had_before:tmp", "container/sumCon/sum_num:tmp", "container/hadCon/had_after:tmp",
  54. "container/bg:img",
  55. -- 空样式
  56. "none/empty/girl:raw", "none/empty/talkBg:raw", "none:obj",
  57. }
  58. self:GetChildren(nodes)
  59. for i=1,5 do
  60. self.color_had_num_txts[i] = self:GetChild( "container/colorScroll/Viewport/colors_con/item_color"..i.."/had_num"):GetComponent("TextMeshProUGUI")
  61. self.color_get_num_txts[i] = self:GetChild( "container/colorScroll/Viewport/colors_con/item_color"..i.."/cost_num"):GetComponent("TextMeshProUGUI")
  62. self.color_names[i] = self:GetChild( "container/colorScroll/Viewport/colors_con/item_color"..i.."/color_name"):GetComponent("TextMeshProUGUI")
  63. self.color_names[i].text = color_name_str[i]
  64. end
  65. local closeWin_callback = function()
  66. self:Close()
  67. end
  68. self.tabWindowComponent = UITabWindow.New(self.transform,{},select_callback,closeWin_callback,self.background_wnd,self.container, UITabWindow.SizeSmallNoTab, false,nil,true)
  69. self.tabWindowComponent:SetBackgroundRes("chat_dress_bg2")
  70. self.tabWindowComponent:SetTitleText("宝宝玩具分解")
  71. self.tabWindowComponent:ChangeShowFlag("Child")
  72. lua_resM:setOutsideImageSprite(self,self.bg_img,GameResPath.GetViewBigBg("child_hb_break_bg"),false)
  73. -- 空样式
  74. -- lua_resM:setOutsideRawImage(self, self.girl_raw, GameResPath.GetRoleBg("team_empty_bg_267_589"))
  75. -- lua_resM:setOutsideRawImage(self, self.talkBg_raw, GameResPath.GetViewBigBg("com_empty_bg1"))
  76. end
  77. function ChildHandbookBreakView:AddEvent()
  78. local function onBreakSuccess()
  79. if self:HasOpen() then
  80. self.break_list = {}
  81. self:UpdateView()
  82. end
  83. end
  84. self.onBreakSuccess_id = GlobalEventSystem:Bind(EventName.GOODS_DECOMPOSE_RESULT, onBreakSuccess)
  85. local function onBtnClickHandler(target, x, y)
  86. if target == self.quit_btn_obj then
  87. self:Close()
  88. elseif target == self.sure_btn_obj then
  89. if TableSize(self.break_list) > 0 then
  90. GoodsModel:getInstance():Fire(GoodsModel.REQUEST_CCMD_EVENT, 15019, self.break_list)
  91. else
  92. Message.show("没有可分解的图鉴哦~")
  93. end
  94. end
  95. end
  96. AddClickEvent(self.quit_btn_obj, onBtnClickHandler)
  97. AddClickEvent(self.sure_btn_obj, onBtnClickHandler)
  98. end
  99. function ChildHandbookBreakView:OpenSuccess()
  100. self:UpdateView()
  101. end
  102. function ChildHandbookBreakView:UpdateView()
  103. local handbookBreakList = self.model:GetChildHandbookBreakList()
  104. local sum_num = 0
  105. for i=1,5 do
  106. self.color_had_num_txts[i].text = handbookBreakList[i].good_sum ..""
  107. self.color_get_num_txts[i].text = handbookBreakList[i].decompose_sum
  108. sum_num = sum_num + handbookBreakList[i].decompose_sum
  109. for k,v in pairs(handbookBreakList[i].goods_list) do
  110. local goods_list = GoodsModel:getInstance():GetTypeGoods(v.good_id)
  111. for k,v in pairs(goods_list) do
  112. local list = {}
  113. list.goods_id = v.goods_id
  114. list.type_id = v.type_id
  115. list.goods_num = v.goods_num
  116. table.insert(self.break_list,list)
  117. end
  118. end
  119. end
  120. self.sum_num_tmp.text = sum_num
  121. local coinId = self.model:GetChildCoinId()
  122. local good_num = GoodsModel:getInstance():GetSpecialScore(ChildConst.HandBookCoinID)
  123. --local good_num = GoodsModel:getInstance():GetTypeGoodsNum(coinId)
  124. self.had_before_tmp.text = good_num
  125. self.had_after_tmp.text = good_num + sum_num
  126. -- self.none_obj:SetActive(sum_num <= 0)
  127. -- self.container_obj:SetActive(sum_num > 0)
  128. end
  129. function ChildHandbookBreakView:SwitchTab( index )
  130. end
  131. function ChildHandbookBreakView:DestroySuccess( )
  132. if self.onBreakSuccess_id then
  133. self.model:UnBind(self.onBreakSuccess_id)
  134. self.onBreakSuccess_id = nil
  135. end
  136. if self.rank_view then
  137. self.rank_view:DeleteMe()
  138. self.rank_view = nil
  139. end
  140. if self.tabWindowComponent then
  141. self.tabWindowComponent:DeleteMe()
  142. self.tabWindowComponent = nil
  143. end
  144. end