KLUnionElectionVotePanel.lua 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. ---@class KLUnionElectionVotePanel:UIKmlLuaPanelBase
  2. ---@field view KLUnionElectionVotePanelView
  3. ---@field cfg cfg_unionLevel_column
  4. local KLUnionElectionVotePanel = class(UIKmlLuaPanelBase)
  5. local this =KLUnionElectionVotePanel
  6. ---创建时调用一次
  7. function this:Init()
  8. self.level = self.args.unionLevel
  9. self.id = self.args.id
  10. self.cfg = SL:GetConfig("cfg_unionLevel", self.level, "unionLevel")
  11. self:SetNum(1)
  12. GUI:Text_setString(self.view.text2, string.format("为<color=#CFCF23>%s</color>投票", self.args.name))
  13. local own = SL:GetBagItemCount( self.cfg.voteCast[1])
  14. GUI:Text_setString(self.view.txtOwn, tostring(own))
  15. GUI:Item_UpdataData(self.view.itemCost, {
  16. ["itemid"] = self.cfg.voteCast[1]
  17. })
  18. GUI:Item_UpdataData(self.view.itemOwn, {
  19. ["itemid"] = self.cfg.voteCast[1]
  20. })
  21. end
  22. ---创建或者刷新界面数据时调用
  23. function this:Refresh()
  24. end
  25. ---注册UI事件和服务器消息
  26. function this:RegistEvents()
  27. GUI:AddOnClickEvent(self.view.btnMinus, self, self.MinusOnClick)
  28. GUI:AddOnClickEvent(self.view.btnAdd, self, self.AddOnClick)
  29. GUI:AddOnClickEvent(self.view.btnCancel, self, self.BtnResetOnClick)
  30. GUI:AddOnClickEvent(self.view.btnConfirm, self, self.BtnConfirmOnClick)
  31. GUI:AddOnClickEvent(self.view.btnClose, self, self.CloseSelf)
  32. GUI:AddOnClickEvent(self.view.btnMask, self, self.CloseSelf)
  33. end
  34. function this:MinusOnClick()
  35. self:SetNum(self.num - 1)
  36. end
  37. function this:AddOnClick()
  38. self:SetNum(self.num + 1)
  39. end
  40. function this:SetNum(num)
  41. if num < 1 then
  42. return
  43. end
  44. self.num = num
  45. local own = SL:GetBagItemCount( self.cfg.voteCast[1])
  46. GUI:Text_setString(self.view.txtNum, tostring(num))
  47. GUI:Text_setString(self.view.txtCost, string.format("<color=%s>%s</color>",
  48. own >= self.cfg.voteCast[2] and "#1BE419" or "#9b1818", num * self.cfg.voteCast[2]))
  49. end
  50. function this:BtnResetOnClick()
  51. self:SetNum(1)
  52. end
  53. function this:CloseSelf()
  54. GUI:UIPanel_Close(self.filePath)
  55. end
  56. function this:BtnConfirmOnClick()
  57. local own = SL:GetBagItemCount( self.cfg.voteCast[1])
  58. if own < self.num * self.cfg.voteCast[2] then
  59. SL:TipMessage(SL:GetConfig('cfg_string',269).text,1, NoticeType.NoticeMid)--"货币不足",
  60. return
  61. end
  62. SL:SendLuaNetMsg(LuaMessageIdToSever.REQ_PLAYER_RUN_FOR_LEADER_VOTE, {
  63. self.id, self.num
  64. })
  65. self:CloseSelf()
  66. end
  67. function this:Close()
  68. end
  69. return this