KLUnionMemberInfoPanel.lua 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. ---@class KLUnionMemberInfoPanel:UIKmlLuaPanelBase
  2. ---@field view KLUnionMemberInfoPanelView
  3. ---@field memberInfo UnionProto.UnionMemberInfo
  4. local KLUnionMemberInfoPanel = class(UIKmlLuaPanelBase)
  5. local this =KLUnionMemberInfoPanel
  6. ---创建时调用一次
  7. function this:Init()
  8. self.memberInfo = self.args.memberInfo
  9. self.toggleSelect = 6
  10. end
  11. ---创建或者刷新界面数据时调用
  12. function this:Refresh()
  13. GUI:Text_setString(self.view.MemberNameText, self.memberInfo.name)
  14. GUI:Text_setString(self.view.MemberLevelText, tostring(self.memberInfo.level))
  15. if self.memberInfo.onlineState == 0 then
  16. GUI:setVisible(self.view.grey, true)
  17. else
  18. GUI:setVisible(self.view.grey, false)
  19. end
  20. if SL:UnionInfo_IsPowerMan() then
  21. GUI:setVisible(self.view.panel_manager, true)
  22. else
  23. GUI:setVisible(self.view.panel_manager, false)
  24. end
  25. if SL:CheckIsFriend(self.memberInfo.memberId) then
  26. GUI:setVisible(self.view.AddFriendBtn, false)
  27. else
  28. GUI:setVisible(self.view.AddFriendBtn, true)
  29. end
  30. end
  31. ---注册UI事件和服务器消息
  32. function this:RegistEvents()
  33. GUI:AddOnClickEvent(self.view.btn_PanelClose, self, self.btn_PanelClose)
  34. GUI:AddOnClickEvent(self.view.AddFriendBtn, self, self.AddFriendBtn)
  35. GUI:AddOnClickEvent(self.view.PlayerDetailBtn, self, self.PlayerDetailBtn)
  36. GUI:AddOnClickEvent(self.view.ConfirmManageBtn, self, self.ConfirmManageBtn)
  37. GUI:AddOnClickEvent(self.view.CancelManageBtn, self, self.CancelManageBtn)
  38. GUI:SetToggleOnValueChange(self.view.tog_SetType1, self, self.tog_SetType,{index=2})
  39. GUI:SetToggleOnValueChange(self.view.tog_SetType2, self, self.tog_SetType,{index=3})
  40. GUI:SetToggleOnValueChange(self.view.tog_SetType3, self, self.tog_SetType,{index=4})
  41. GUI:SetToggleOnValueChange(self.view.tog_SetType4, self, self.tog_SetType,{index=5})
  42. GUI:SetToggleOnValueChange(self.view.tog_SetType5, self, self.tog_SetType,{index=1})
  43. GUI:SetToggleOnValueChange(self.view.tog_SetType6, self, self.tog_SetType,{index=6})
  44. GUI:AddOnClickEvent(self.view.PrivateChatBtn, self, self.PrivateChat)
  45. end
  46. function this:PrivateChat()
  47. self:btn_PanelClose()
  48. GUI:UIPanel_Close("dev/ui/Union/Panel/KLUnionMemberList/KLUnionMemberListPanel")
  49. GUI:UIPanel_Close("dev/ui/Union/Panel/KLUnionToggleList/KLUnionToggleListPanel")
  50. GUI:UIPanel_Close("dev/ui/Union/Panel/KLUnionInfo/KLUnionInfoPanel")
  51. GUI:UIPanel_Open("dev/ui/Chat/Panel/KLUIChatPanel/KLUIChatPanel", _, _, {
  52. type={
  53. channel = EChatChannelType.PERSONAL,
  54. rid = self.memberInfo.memberId,
  55. name = self.memberInfo.name
  56. }
  57. })
  58. end
  59. function this:CancelManageBtn()
  60. self:btn_PanelClose()
  61. end
  62. function this:tog_SetType(control,eventData,systemData)
  63. if systemData then
  64. self.toggleSelect = eventData.index
  65. end
  66. end
  67. function this:AddFriendBtn()
  68. self:btn_PanelClose()
  69. SL:AddFriend(self.memberInfo.memberId)
  70. end
  71. function this:PlayerDetailBtn()
  72. self:btn_PanelClose()
  73. GUI:UIPanel_Close("dev/ui/Union/Panel/KLUnionMemberList/KLUnionMemberListPanel")
  74. GUI:UIPanel_Close("dev/ui/Union/Panel/KLUnionToggleList/KLUnionToggleListPanel")
  75. GUI:UIPanel_Close("dev/ui/Union/Panel/KLUnionInfo/KLUnionInfoPanel")
  76. GUI:UIPanel_Open("dev/ui/Equip/Panel/KLEquipUI/KLEquipUIPanel", _, _, {
  77. isOther = true,
  78. rid = self.memberInfo.memberId,
  79. x = 0
  80. })
  81. end
  82. function this:btn_PanelClose()
  83. GUI:UIPanel_Close("dev/ui/Union/Panel/KLUnionMemberInfo/KLUnionMemberInfoPanel")
  84. end
  85. function this:ConfirmManageBtn()
  86. -- 1禅让盟主 2设为副盟主 3设为战斗队长 4设为精英 5设为成员
  87. if self.toggleSelect == 6 then
  88. if InfoManager.loranSiegeInfo:GetIsOpen() then
  89. SL:TipMessage(SL:GetConfig("cfg_string",16006).text ,1, NoticeType.NoticeMid)
  90. return
  91. end
  92. SL:ReqKickOutUnionMemberMessage(self.memberInfo.memberId)
  93. else
  94. if InfoManager.loranSiegeInfo:GetIsOpen() then
  95. SL:TipMessage(SL:GetConfig("cfg_string",16008).text ,1, NoticeType.NoticeMid)
  96. return
  97. end
  98. SL:ReqChangePositionMessage(self.memberInfo.memberId, self.toggleSelect)
  99. end
  100. self:btn_PanelClose()
  101. end
  102. function this:Close()
  103. end
  104. return this