c1_lua/lua/app/ui/common/cell/player_head_cell.lua
2023-06-29 16:09:54 +08:00

53 lines
1.7 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

local PlayerHeadCell = class("PlayerHeadCell", BaseCell)
function PlayerHeadCell:init()
local uiMap = self.baseObject:genAllChildren()
self.imgFrame = uiMap["player_head_cell.img_frame"]
self.imgAvatar = uiMap["player_head_cell.img_avatar"]
end
-- (avatarId头像idframeId头像框id)
function PlayerHeadCell:refresh(avatarId, frameId, showRp)
if avatarId == nil or frameId == nil then
-- 是玩家自己
self.isSelf = true
avatarId = DataManager.PlayerData:getUsingAvatarId()
frameId = DataManager.PlayerData:getUsingFrameId()
end
-- 背景颜色
local heroId = DataManager.PlayerData:getAvatarHeroId(avatarId)
if heroId then
local smallFrame = ModuleManager.HeroManager:getHeroSmallFrame(heroId)
if smallFrame then
self.baseObject:setSprite(GConst.ATLAS_PATH.ICON_HERO, smallFrame)
end
end
-- 头像
local avatarName = DataManager.PlayerData:getAvatarIconId(avatarId)
if avatarName then
self.imgAvatar:setSprite(GConst.ATLAS_PATH.ICON_HERO, avatarName, function()
self.imgAvatar:getComponent(GConst.TYPEOF_UNITY_CLASS.UI_IMAGE):SetNativeSize()
end)
end
-- 头像框
local frameName = DataManager.PlayerData:getFrameIconId(frameId)
if frameName then
self.imgFrame:setSprite(GConst.ATLAS_PATH.ICON_AVATAR, frameName, function()
self.imgFrame:getComponent(GConst.TYPEOF_UNITY_CLASS.UI_IMAGE):SetNativeSize()
end)
end
-- 红点
if showRp and (DataManager.PlayerData:hasNewAvatar() or DataManager.PlayerData:hasNewFrame()) then
self.baseObject:addRedPoint(50, 50, 0.7)
else
self.baseObject:removeRedPoint()
end
end
return PlayerHeadCell