diff --git a/lua/app/ui/common/cell/player_head_cell.lua b/lua/app/ui/common/cell/player_head_cell.lua index 19f3648b..557088dd 100644 --- a/lua/app/ui/common/cell/player_head_cell.lua +++ b/lua/app/ui/common/cell/player_head_cell.lua @@ -16,12 +16,9 @@ function PlayerHeadCell:refresh(avatarId, frameId, showRp) 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 + local smallFrame = DataManager.PlayerData:getAvatarBg(avatarId) + if smallFrame then + self.baseObject:setSprite(GConst.ATLAS_PATH.ICON_HERO, smallFrame) end -- 头像 diff --git a/lua/app/ui/player_info/avatar_cell.lua b/lua/app/ui/player_info/avatar_cell.lua index 2333e65d..0ea61ce0 100644 --- a/lua/app/ui/player_info/avatar_cell.lua +++ b/lua/app/ui/player_info/avatar_cell.lua @@ -27,12 +27,9 @@ function AvatarCell:refresh(id, isSelect) end -- 背景 - local heroId = DataManager.PlayerData:getAvatarHeroId(self.id) - if heroId then - local smallFrame = ModuleManager.HeroManager:getHeroSmallFrame(heroId) - if smallFrame then - self.baseObject:setSprite(GConst.ATLAS_PATH.ICON_HERO, smallFrame) - end + local smallFrame = DataManager.PlayerData:getAvatarBg(self.id) + if smallFrame then + self.baseObject:setSprite(GConst.ATLAS_PATH.ICON_HERO, smallFrame) end self.select:setActive(isSelect) diff --git a/lua/app/ui/player_info/player_info_ui.lua b/lua/app/ui/player_info/player_info_ui.lua index 3500c313..c68b8757 100644 --- a/lua/app/ui/player_info/player_info_ui.lua +++ b/lua/app/ui/player_info/player_info_ui.lua @@ -202,12 +202,9 @@ end -- 刷新头像和头像框 function PlayerInfoUI:refreshAvatarAndFrame() - local heroId = DataManager.PlayerData:getAvatarHeroId(self.selectAvatarId) - if heroId then - local smallFrame = ModuleManager.HeroManager:getHeroSmallFrame(heroId) - if smallFrame then - self.bgAvatar:setSprite(GConst.ATLAS_PATH.ICON_HERO, smallFrame) - end + local smallFrame = DataManager.PlayerData:getAvatarBg(self.selectAvatarId) + if smallFrame then + self.bgAvatar:setSprite(GConst.ATLAS_PATH.ICON_HERO, smallFrame) end local avatarName = DataManager.PlayerData:getAvatarIconId(self.selectAvatarId) if avatarName then diff --git a/lua/app/userdata/player/player_data.lua b/lua/app/userdata/player/player_data.lua index b6bc9827..083754da 100644 --- a/lua/app/userdata/player/player_data.lua +++ b/lua/app/userdata/player/player_data.lua @@ -403,12 +403,19 @@ function PlayerData:getCanUnlockAvatarIds(checkData) return ids end --- 获取头像对应的英雄id -function PlayerData:getAvatarHeroId(id) +-- 获取头像背景 +function PlayerData:getAvatarBg(id) local cfg = ConfigManager:getConfig("avatar")[id] - if cfg then - return cfg.hero + if cfg.hero then + -- hero来源 + local hero = ConfigManager:getConfig("hero")[cfg.hero] + return hero and GConst.HERO_SMALL_FRAME_QLT[hero.qlt] + elseif cfg.item then + -- item来源 + local item = ConfigManager:getConfig("item")[cfg.item] + return item and GConst.HERO_SMALL_FRAME_QLT[item.qlt] end + return nil end -- 头像框-----------------------------------------------------------------------------------