12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- ---@class KLFriendInfoItem:UIKmlLuaPanelBase
- ---@field view KLFriendInfoItemView
- local KLFriendInfoItem = class(UIKmlLuaPanelBase)
- local this =KLFriendInfoItem
- ---创建时调用一次
- function this:Init()
-
- end
- ---@param friend FriendProto.FriendInfo
- function this:SetFriend(friend)
- self.friend = friend
- GUI:Image_loadTexture(self.view.Icon,"1"..friend.career,"Atlas/MUIcon.spriteatlas")
- GUI:Text_setString(self.view.friend_level, "LV."..friend.level)
- GUI:Text_setString(self.view.friend_name, friend.name)
- GUI:Text_setString(self.view.friend_union_name, "战盟:"..(string.isNullOrEmpty(friend.unionName) and "无" or friend.unionName))
- if friend.online == 1 then
- GUI:Text_setString(self.view.TextOnline, "在线")
- GUI:Text_setTextColor(self.view.TextOnline, "#1ADD1F")
- GUI:Image_setGrey(self.view.Icon, false)
- GUI:Image_setGrey(self.view.friend_select, false)
- else
- GUI:Text_setString(self.view.TextOnline, "离线")
- GUI:Text_setTextColor(self.view.TextOnline, "#C8C8C8")
- GUI:Image_setGrey(self.view.Icon, true)
- GUI:Image_setGrey(self.view.friend_select, true)
- end
- GUI:Text_setString(self.view.friend_value, (self.type == EFriendRelation.Friend and "亲密度:" or "仇恨值:")..friend.friendLove)
- end
- ---创建或者刷新界面数据时调用
- function this:Refresh()
- self.type = self.args.type
- local friend = self.args.info
- self:SetFriend(friend)
- local toggleGroup = self.args.toggleGroup
- GUI:SetToggleGroup(self.view.KmlFriendListItem, toggleGroup)
- end
- function this:SetChoose()
- --self.view.KmlFriendListItem:SetTogDefaultThis()
- GUI:SetTogDefaultThis(self.view.KmlFriendListItem)
- end
-
- ---注册UI事件和服务器消息
- function this:RegistEvents()
- GUI:AddOnClickEvent(self.view.friend_message, self, self.OperateFriend)
- --[[ SL:RegisterLuaNetMsg(LuaMessageIdToClient.FRIEND_LIKE_CHANGE, self.ON_FRIEND_LIKE_CHANGE, self)]]
- SL:RegisterLuaNetMsg(LuaMessageIdToSever.SET_FRIEND_DEGREE, self.ON_FRIEND_LIKE_CHANGE, self)
- end
- function this:ON_FRIEND_LIKE_CHANGE(id, message)
- if self.friend.rid == message.targetfriendid then
- GUI:Text_setString(self.view.friend_value, (message.type == EFriendRelation.Friend and "亲密度:" or "仇恨值:")
- ..message.likevalue)
- if message.likevalue <= 0 then
- SL:onLUAEvent(FRIEND_LIKE_ZERO_EVENT, message.type)
- end
- end
- end
- function this:OperateFriend()
- GUI:UIPanel_Open("dev/ui/FriendSys/Panel/KLFriendOperate/KLFriendOperatePanel", _, _, {rid = self.friend.rid})
- end
- function this:Close()
- end
- return this
|