源战役客户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

188 lines
6.2 KiB

  1. GuildCollectHelpRankView = GuildCollectHelpRankView or BaseClass(BaseItem)
  2. local GuildCollectHelpRankView = GuildCollectHelpRankView
  3. function GuildCollectHelpRankView:__init()
  4. self.base_file = "boss"
  5. self.layout_file = "BossMoneyHelpRankView"
  6. self.model = GuildModel:getInstance()
  7. self:Load()
  8. end
  9. function GuildCollectHelpRankView:Load_callback()
  10. self.nodes = {
  11. "con_list:obj","con_role/con_head","con_role/btn_go:obj","con_list/scroll","con_role/btn_close:obj",
  12. "con_list/scroll/Viewport/Content","con_role:obj",
  13. }
  14. self:GetChildren(self.nodes)
  15. SetAnchoredPosition( self.transform, -88, 59 )
  16. SetAnchoredPosition( self.con_role, 44, 0 )
  17. self:AddEvents()
  18. self:UpdateView()
  19. self.model:Fire(GuildModel.REQUEST_CCMD_EVENT,40046)
  20. end
  21. function GuildCollectHelpRankView:AddEvents( )
  22. -- local function call_back( target )
  23. -- if target == self.btn_close_obj then
  24. -- self.model:Fire(GuildModel.REQUEST_CCMD_EVENT,40053)
  25. -- elseif target == self.btn_go_obj then
  26. -- local data = self.model:GetCurSupportPlayerInfo()
  27. -- if data and data.role_id ~= RoleManager.Instance.mainRoleInfo.role_id then
  28. -- self.model:Fire(GuildModel.REQUEST_CCMD_EVENT,40808,data.role_id)
  29. -- end
  30. -- end
  31. -- end
  32. -- AddClickEvent(self.btn_go_obj,call_back,false)
  33. -- AddClickEvent(self.btn_close_obj,call_back,false)
  34. local function update_call( )
  35. if not self.is_loaded then return end
  36. self:UpdateView()
  37. end
  38. -- self:BindEvent(self.model, GuildModel.ANS_GUILD_COLLECT_HELP_LIST, update_call)
  39. -- self:BindEvent(self.model, GuildModel.UPDATE_GUILD_COLLECT_SUPPORT_INFO_LIST, update_call)--40811
  40. self:BindEvent(self.model, GuildModel.UPDATE_GUILD_COLLECT_NOW_SUPPORT_ID, update_call)--40812
  41. local function update_call_2(scmd_num)
  42. if scmd_num ~= 40046 then return end--40046协议的事件才更新
  43. if not self.is_loaded then return end
  44. self:UpdateView()
  45. end
  46. self:BindEvent(self.model, GuildModel.UPDATE_GUILD_SUPPOR_INFO, update_call_2)--40046
  47. end
  48. function GuildCollectHelpRankView:UpdateView( )
  49. self:ShowList()
  50. self:ShowRole()
  51. -- if self.con_list_obj.activeSelf or self.con_role_obj.activeSelf then
  52. -- self.model:Fire(GuildModel.CHANGE_GUILD_COLLECT_LEFT_CON_STATE,false)
  53. -- else
  54. -- self.model:Fire(GuildModel.CHANGE_GUILD_COLLECT_LEFT_CON_STATE,true)
  55. -- end
  56. -- if self.con_list_obj.activeSelf then
  57. -- self.model:Fire(GuildModel.CHANGE_GUILD_COLLECT_LEFT_CON_STATE,false)
  58. -- else
  59. -- self.model:Fire(GuildModel.CHANGE_GUILD_COLLECT_LEFT_CON_STATE,true)
  60. -- end
  61. end
  62. function GuildCollectHelpRankView:ShowList( )
  63. -- if not self.is_loaded then return end
  64. -- local self_support_status = self.model:GetGuildSupportStatus()
  65. -- if self_support_status ~= 1 then
  66. -- --协助者隐藏
  67. -- self.con_list_obj:SetActive(false)
  68. -- return
  69. -- end
  70. -- -------------------------
  71. -- local sort_list = {}
  72. -- for k,v in pairs(self.model:GetCollectHelperInfo( )) do
  73. -- sort_list[#sort_list+1] = DeepCopy(v)
  74. -- end
  75. -- local function sort_call( a,b )
  76. -- --从大到小
  77. -- return a.hurt > b.hurt
  78. -- end
  79. -- table.sort( sort_list, sort_call )
  80. -- self.item_list = self.item_list or self:AddUIComponent(UI.ItemListCreator)
  81. -- local data = {
  82. -- data_list = sort_list or {},
  83. -- item_con = self.Content,
  84. -- item_class = GuildCollectHelpRankItem,
  85. -- -- item_width = BossMoneyHelpRankItem.Width,
  86. -- item_height = GuildCollectHelpRankItem.Height,
  87. -- scroll_view = self.scroll,
  88. -- start_x = 188,
  89. -- on_update_item = function(item, i, v)
  90. -- item:SetData(i,v)
  91. -- end,
  92. -- }
  93. -- self.item_list:UpdateItems(data)
  94. -- self.con_list_obj:SetActive(TableSize(sort_list) > 0)
  95. --封印裂隙协助调整,不再显示伤害列表
  96. if not self.is_loaded then return end
  97. self.con_list_obj:SetActive(false)
  98. end
  99. function GuildCollectHelpRankView:ShowRole( )
  100. -- local self_support_status = self.model:GetGuildSupportStatus()
  101. -- if self_support_status ~= 2 then
  102. -- --我不是协助者
  103. -- self.con_role_obj:SetActive(false)
  104. -- return
  105. -- end
  106. -- local data = self.model:GetCurSupportPlayerInfo()
  107. -- if data then
  108. -- if data.role_id == RoleManager.Instance.mainRoleInfo.role_id then
  109. -- self.con_role_obj:SetActive(false)
  110. -- return
  111. -- end
  112. -- self.head_item = self.head_item or self:CreateItem(HeadRoleItem, self.con_head, self.layer_name)
  113. -- self.head_item:SetItemSize(90,90)
  114. -- -------------------------
  115. -- local head_data = {
  116. -- vo = {id=data.role_id,career=data.career,level=nil,sex=data.sex,turn=data.turn,
  117. -- board = data.dress_id,picture_ver = data.picture_ver,picture = data.picture,
  118. -- profile_photo_id = data.profile_photo_id},
  119. -- }
  120. -- self.head_item:SetData(head_data)
  121. -- -- self.con_role_obj:SetActive(true)
  122. -- --不要显示这个协助头像框了
  123. -- self.con_role_obj:SetActive(false)
  124. -- self.model:Fire(GuildModel.REQUEST_CCMD_EVENT,40808,data.role_id)
  125. -- else
  126. -- self.con_list_obj:SetActive(false)
  127. -- end
  128. --封印裂隙调整,不再显示助战头像
  129. if not self.is_loaded then return end
  130. self.con_role_obj:SetActive(false)
  131. --刚进驻地时需要等一些初始化操作完成后才能执行下面的寻路操作
  132. if not self.model.guild_collect_confim_into_guild_scene then return end
  133. --如果只是从驻地外用40808过来寻怪的,就直接寻怪
  134. if self.model.only_find_way_to_guild_collect_mon then
  135. if self.model.temp_guild_collect_mon_data then
  136. self.model:Fire(GuildModel.FIND_WAY_TO_GUILD_COLLECT_HELP_MON,self.model.temp_guild_collect_mon_data)
  137. end
  138. self.model.only_find_way_to_guild_collect_mon = false
  139. self.model.temp_guild_collect_mon_data = nil
  140. return
  141. end
  142. --如果没特别要求前往寻路杀怪,就不执行
  143. if not self.model.need_go_support_guild_collect_after_40046 then return end
  144. local data = nil
  145. local guild_collect_support_id = self.model:GetSelfGuildCollectSupportId()
  146. local info = self.model:GetGuildSupportInfo()
  147. for k,v in pairs(info) do
  148. if v.support_sid == guild_collect_support_id then
  149. data = v
  150. break
  151. end
  152. end
  153. if data and guild_collect_support_id ~= 0 then
  154. if data.role_id ~= RoleManager.Instance.mainRoleInfo.role_id then
  155. --主动寻路去击杀协助对应的宝箱怪
  156. self.model:Fire(GuildModel.REQUEST_CCMD_EVENT,40808,data.support_sid)
  157. self.model.need_go_support_guild_collect_after_40046 = false
  158. end
  159. end
  160. end
  161. function GuildCollectHelpRankView:__delete( )
  162. end