源战役客户端
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.

93 rivejä
3.2 KiB

1 kuukausi sitten
  1. -- <*
  2. -- @Author: Saber
  3. -- @Description: 社团申请管理-合并界面子节点
  4. -- *>
  5. GuildApplyMergeItem = GuildApplyMergeItem or BaseClass(BaseItem)
  6. local GuildApplyMergeItem = GuildApplyMergeItem
  7. function GuildApplyMergeItem:__init(parent_wnd,prefab_asset,layer_name)
  8. self.base_file = "guild"
  9. self.layout_file = "GuildApplyMergeItem"
  10. self.parent_wnd = parent_wnd
  11. self.layer_name = layer_name
  12. self.is_selected = false
  13. self.model = GuildModel:getInstance()
  14. self:Load()
  15. end
  16. function GuildApplyMergeItem:Load_callback()
  17. local nodes = {
  18. "guild_icon:img",
  19. "info_con/vip_con:obj", "info_con/sex_flag:obj:img", "info_con/name:obj:tmp",
  20. "selected:obj",
  21. "power_val:txt",
  22. "guild_name:tmp", "guild_lv:tmp",
  23. "guild_num:tmp", "guild_active:tmp",
  24. }
  25. self:GetChildren(nodes)
  26. -- 加载vip节点
  27. self.vipItem = RoleVipItem.New(self.vip_con)
  28. self.vipItem:SetAnchoredPosition(0, 0)
  29. self:AddEvents()
  30. if self.need_refreshData then
  31. self:UpdateView()
  32. end
  33. end
  34. function GuildApplyMergeItem:AddEvents( )
  35. local function click_event(target)
  36. if target == self.gameObject then
  37. if self.callback and self.index then
  38. self.callback(self.index, self.data.guild_id)
  39. end
  40. end
  41. end
  42. AddClickEvent(self.gameObject, click_event, LuaSoundManager.SOUND_UI.SWITCH)
  43. end
  44. function GuildApplyMergeItem:SetData( data, index, callback )
  45. self.data = data
  46. self.index = index
  47. self.callback = callback
  48. if self.is_loaded then
  49. self.need_refreshData = false
  50. self:UpdateView()
  51. else
  52. self.need_refreshData = true
  53. end
  54. end
  55. function GuildApplyMergeItem:SetSelected(bool)
  56. self.is_selected = bool
  57. if self.is_loaded then
  58. if self.selected_obj.activeSelf ~= self.is_selected then
  59. self.selected_obj:SetActive(self.is_selected)
  60. end
  61. end
  62. end
  63. function GuildApplyMergeItem:UpdateView( )
  64. -- 加载团长信息
  65. self.vipItem:SetData(self.data.vip_flag, self.data.sup_vip_type)
  66. self.name_tmp.text = self.data.name
  67. lua_resM:setImageSprite(self, self.sex_flag_img, "common_asset", self.data.sex == 1 and "com_boy" or "com_girl", true)
  68. local sex_pos_x = 50 + self.name_tmp.preferredWidth
  69. SetAnchoredPositionX(self.sex_flag, sex_pos_x)
  70. self.power_val_txt.text = self.data.power or self.data.fighting
  71. -- 加载社团信息
  72. local guild_lv_cfg = Config.Guildlv[self.data.guild_lv]
  73. self.guild_name_tmp.text = self.data.guild_name
  74. self.guild_num_tmp.text = self.data.member_num .. "/" .. (guild_lv_cfg.member_capacity + self.data.add_member_num) -- 数据来源有两个协议决定
  75. self.guild_lv_tmp.text = "Lv." .. self.data.guild_lv
  76. self.guild_active_tmp.text = self.data.week_labor_last or self.data.first_value -- 数据来源有两个协议决定
  77. lua_resM:setImageSprite(self, self.guild_icon_img, "guildIcon_asset", "guild_icon" .. self.data.guild_flag, true)
  78. self:SetSelected(self.is_selected)
  79. end
  80. function GuildApplyMergeItem:__delete( )
  81. if self.vipItem then
  82. self.vipItem:DeleteMe()
  83. self.vipItem = nil
  84. end
  85. end