KLFriendFlowerSendPanel.lua 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. ---@class KLFriendFlowerSendPanel:UIKmlLuaPanelBase
  2. ---@field view KLFriendFlowerSendPanelView
  3. local KLFriendFlowerSendPanel = class(UIKmlLuaPanelBase)
  4. local this =KLFriendFlowerSendPanel
  5. local FlowerTypeName = {"1朵鲜花","9朵鲜花","99朵鲜花","999朵鲜花"}
  6. ---创建时调用一次
  7. function this:Init()
  8. self.rid = self.args.rid
  9. local tbl = SL:GetConfigTable("cfg_item")
  10. local index = 0
  11. self.cfgTbl = {}
  12. ---@param v cfg_item_column
  13. for _, v in pairs(tbl) do
  14. if v.type == EItemType.TriggerItem and v.subType == E_OutTriggerItemType.FriendLikeItem then
  15. self.cfgTbl[index] = v.id
  16. index = index + 1
  17. end
  18. end
  19. end
  20. ---创建或者刷新界面数据时调用
  21. function this:Refresh()
  22. self:SetIndex(0)
  23. end
  24. ---注册UI事件和服务器消息
  25. function this:RegistEvents()
  26. GUI:AddOnClickEvent(self.view.BtnSend, self, self.OnClickSendFlower)
  27. GUI:AddOnClickEvent(self.view.BtnClose, self, self.CloseSelf)
  28. GUI:AddOnClickEvent(self.view.BtnMask, self, self.CloseSelf)
  29. GUI:AddOnClickEvent(self.view.BtnTipDown, self, self.OnClickFlower)
  30. for i = 0, 3 do
  31. GUI:AddOnClickEvent(self.view["btn_flower_".. i],self,self.BtnFlowerItemOnClick,i)
  32. end
  33. --GUI:SetDropDownOnValueChange(self.view.flowerOptions, self, self.DropDownChange)
  34. SL:RegisterLuaNetMsg(LuaMessageIdToSever.SET_FRIEND_DEGREE, self.ON_FRIEND_LIKE_CHANGE, self)
  35. end
  36. function this:ON_FRIEND_LIKE_CHANGE()
  37. local count = SL:GetBagItemCount(self.nowCfgId)
  38. GUI:Item_UpdataData(self.view.Item, {
  39. ["itemcount"] = count
  40. })
  41. SL:TipMessage(SL:GetConfig('cfg_string',271).text,1, NoticeType.NoticeMid)--"赠送成功",
  42. end
  43. --function this:DropDownChange()
  44. -- local index = GUI:GetDropDownValue(self.view.flowerOptions)
  45. -- self:SetIndex(index)
  46. --end
  47. function this:OnClickFlower()
  48. local visible = GUI:getVisible(self.view.dropdown_list_flower)
  49. GUI:setVisible(self.view.dropdown_list_flower,not visible)
  50. end
  51. function this:BtnFlowerItemOnClick(item,index)
  52. local flowerName = FlowerTypeName[index+1]
  53. GUI:Button_setTitleText(self.view.btn_flower,flowerName)
  54. GUI:setVisible(self.view.dropdown_list_flower,false)
  55. self:SetIndex(index)
  56. end
  57. function this:SetIndex(index)
  58. self.index = index
  59. self.nowCfgId = self.cfgTbl[index]
  60. ---@type cfg_item_column
  61. local tbl = SL:GetConfig("cfg_item", self.nowCfgId)
  62. GUI:Text_setString(self.view.desc, tbl.topDesc)
  63. local count = SL:GetBagItemCount(self.nowCfgId)
  64. GUI:Item_UpdataData(self.view.Item, {
  65. ["itemid"] = self.nowCfgId,
  66. ["itemcount"] = count
  67. })
  68. end
  69. function this:CloseSelf()
  70. GUI:UIPanel_Close(self.filePath)
  71. end
  72. function this:OnClickSendFlower()
  73. SL:SendLuaNetMsg(LuaMessageIdToSever.SET_FRIEND_DEGREE, {self.nowCfgId, self.rid})
  74. end
  75. function this:Close()
  76. end
  77. return this