forked from endernon/PGRData
483 lines
17 KiB
Lua
483 lines
17 KiB
Lua
|
local XUiMaverick2CharacterRobot = require("XUi/XUiMaverick2/XUiMaverick2CharacterRobot")
|
|||
|
local XUiPanelRoleModel = require("XUi/XUiCharacter/XUiPanelRoleModel")
|
|||
|
|
|||
|
-- 异构阵线2.0成员界面
|
|||
|
local XUiMaverick2Character = XLuaUiManager.Register(XLuaUi, "UiMaverick2Character")
|
|||
|
local TabType =
|
|||
|
{
|
|||
|
HelpSkill = 1, -- 支援技能
|
|||
|
Info = 2, -- 角色信息
|
|||
|
}
|
|||
|
local Select = CS.UiButtonState.Select
|
|||
|
local Normal = CS.UiButtonState.Normal
|
|||
|
|
|||
|
function XUiMaverick2Character:OnAwake()
|
|||
|
self.SelectRobotIndex = nil
|
|||
|
self.RobotCfgList = {}
|
|||
|
self.SelectTag = TabType.HelpSkill
|
|||
|
self.StageId = nil -- 挑战关卡id
|
|||
|
self.HelpSkillInfoList = {} -- 支援技列表
|
|||
|
self.SelHelpSkillIndex = nil -- 选中的支援技列表
|
|||
|
|
|||
|
self:SetButtonCallBack()
|
|||
|
self:InitDynamicTable()
|
|||
|
self:InitAssetPanel()
|
|||
|
self:InitTimes()
|
|||
|
self:InitRoleModel()
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:OnStart(stageId)
|
|||
|
self.StageId = stageId
|
|||
|
local isFight = self.StageId ~= nil
|
|||
|
self.SelectTag = isFight and TabType.HelpSkill or TabType.Info
|
|||
|
|
|||
|
-- 挑战界面显示挑战按钮和支援技能
|
|||
|
self.PanelTabGroup.gameObject:SetActiveEx(isFight)
|
|||
|
self.TxtTitle.gameObject:SetActiveEx(not isFight)
|
|||
|
self.BtnFight.gameObject:SetActiveEx(isFight)
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:OnEnable()
|
|||
|
self.Super.OnEnable(self)
|
|||
|
self:Refresh()
|
|||
|
|
|||
|
-- 战斗失败回到选角色界面重新播放BGM
|
|||
|
XDataCenter.Maverick2Manager.PlayBGM()
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:OnDisable()
|
|||
|
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:SetButtonCallBack()
|
|||
|
XUiHelper.RegisterClickEvent(self, self.BtnBack, self.Close)
|
|||
|
XUiHelper.RegisterClickEvent(self, self.BtnMainUi, function() XLuaUiManager.RunMain() end)
|
|||
|
XUiHelper.RegisterClickEvent(self, self.BtnFight, self.OnClickBtnFight)
|
|||
|
XUiHelper.RegisterClickEvent(self, self.BtnHelpSkill, function() self:OnClickTab(TabType.HelpSkill) end)
|
|||
|
XUiHelper.RegisterClickEvent(self, self.BtnInfo, function() self:OnClickTab(TabType.Info) end)
|
|||
|
XUiHelper.RegisterClickEvent(self, self.BtnTalent, self.OnClickBtnTalent)
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:OnClickBtnFight()
|
|||
|
|
|||
|
-- 进入战斗前需刷新支援技能信息,防止改动天赋导致之前选中的支援技能失效
|
|||
|
local talentGroupId = nil
|
|||
|
local talentId = nil
|
|||
|
self:RefreshDetailHelpSkill()
|
|||
|
if self.SelHelpSkillIndex then
|
|||
|
local helpSkillCfg = self.HelpSkillInfoList[self.SelHelpSkillIndex].HelpSkillCfg
|
|||
|
talentGroupId = helpSkillCfg.TalentGroupId
|
|||
|
talentId = helpSkillCfg.TalentId
|
|||
|
end
|
|||
|
|
|||
|
local robotId = self:GetSelectRobotId()
|
|||
|
XDataCenter.Maverick2Manager.EnterFight(self.StageId, robotId, talentGroupId, talentId)
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:OnClickBtnTalent()
|
|||
|
XLuaUiManager.Open("UiMaverick2Talent", self:GetSelectRobotId(), self.StageId, function(robotId)
|
|||
|
-- 设置最后选中的机器人
|
|||
|
XDataCenter.Maverick2Manager.SaveLastSelRobotId(robotId)
|
|||
|
end)
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:Refresh()
|
|||
|
self.RobotCfgList = XDataCenter.Maverick2Manager.GetRobotCfgList(self.StageId)
|
|||
|
self:RefreshDynamicTable()
|
|||
|
self:UpdateAssetPanel()
|
|||
|
self:UpdateCamera(XMaverick2Configs.CharacterCamera.Prepare)
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:InitTimes()
|
|||
|
self:SetAutoCloseInfo(XDataCenter.Maverick2Manager.GetActivityEndTime(), function(isClose)
|
|||
|
if isClose then
|
|||
|
XLuaUiManager.RunMain()
|
|||
|
XUiManager.TipMsg(XUiHelper.GetText("ActivityAlreadyOver"))
|
|||
|
end
|
|||
|
end)
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:GetSelectRobotId()
|
|||
|
return self.RobotCfgList[self.SelectRobotIndex].RobotId
|
|||
|
end
|
|||
|
|
|||
|
-- 机器人是否被禁用
|
|||
|
function XUiMaverick2Character:IsRobotForbid(robotId)
|
|||
|
return XDataCenter.Maverick2Manager.IsRobotForbid(robotId, self.StageId)
|
|||
|
end
|
|||
|
|
|||
|
---------------------------------------- 机器人动态列表 begin ----------------------------------------
|
|||
|
function XUiMaverick2Character:InitDynamicTable()
|
|||
|
self.GridCharacter.gameObject:SetActive(false)
|
|||
|
self.DynamicTable = XDynamicTableNormal.New(self.CharacterList)
|
|||
|
self.DynamicTable:SetProxy(XUiMaverick2CharacterRobot)
|
|||
|
self.DynamicTable:SetDelegate(self)
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:RefreshDynamicTable()
|
|||
|
-- 优先选中上次的机器人
|
|||
|
self.SelectRobotIndex = 1
|
|||
|
local robotId = XDataCenter.Maverick2Manager.GetLastSelRobotId()
|
|||
|
if not self:IsRobotForbid(robotId) then
|
|||
|
for i, robotCfg in ipairs(self.RobotCfgList) do
|
|||
|
if robotCfg.RobotId == robotId then
|
|||
|
self.SelectRobotIndex = i
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
-- 刷新机器人列表
|
|||
|
self.DynamicTable:SetDataSource(self.RobotCfgList)
|
|||
|
self.DynamicTable:ReloadDataASync(self.SelectRobotIndex)
|
|||
|
self:UpdateRobotInfo()
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:OnDynamicTableEvent(event, index, grid)
|
|||
|
if event == DYNAMIC_DELEGATE_EVENT.DYNAMIC_GRID_ATINDEX then
|
|||
|
local robotCfg = self.RobotCfgList[index]
|
|||
|
local isSelect = self.SelectRobotIndex == index
|
|||
|
local isForbid = self:IsRobotForbid(robotCfg.RobotId)
|
|||
|
grid:Refresh(robotCfg, isForbid, isSelect)
|
|||
|
elseif event == DYNAMIC_DELEGATE_EVENT.DYNAMIC_GRID_TOUCHED then
|
|||
|
self:OnClickRobot(index, grid)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:OnClickRobot(index, selectGrid)
|
|||
|
if self.SelectRobotIndex == index then
|
|||
|
return
|
|||
|
end
|
|||
|
|
|||
|
-- 禁用/未解锁,播放禁止音效
|
|||
|
if selectGrid.IsForbid or not selectGrid.IsUnlock then
|
|||
|
CS.XAudioManager.PlaySound(XSoundManager.UiBasicsMusic.Intercept)
|
|||
|
return
|
|||
|
end
|
|||
|
|
|||
|
-- 切换按钮状态
|
|||
|
self.SelectRobotIndex = index
|
|||
|
local grids = self.DynamicTable:GetGrids()
|
|||
|
for i, grid in pairs(grids) do
|
|||
|
local isSelect = i == self.SelectRobotIndex
|
|||
|
grid:ShowSelect(isSelect)
|
|||
|
end
|
|||
|
|
|||
|
-- 选中回调
|
|||
|
selectGrid:OnClickRobot()
|
|||
|
|
|||
|
-- 刷新角色
|
|||
|
self:UpdateRobotInfo()
|
|||
|
end
|
|||
|
---------------------------------------- 机器人动态列表 end ----------------------------------------
|
|||
|
|
|||
|
---------------------------------------- 机器人详情 begin ----------------------------------------
|
|||
|
-- 刷新机器人信息
|
|||
|
function XUiMaverick2Character:UpdateRobotInfo()
|
|||
|
-- 刷新模型旁边名字
|
|||
|
local robotId = self:GetSelectRobotId()
|
|||
|
local characterId = XEntityHelper.GetCharacterIdByEntityId(robotId)
|
|||
|
self.TxtName.text = XCharacterConfigs.GetCharacterName(characterId)
|
|||
|
self.TxtType.text = XCharacterConfigs.GetCharacterTradeName(characterId)
|
|||
|
self.TxtNumber.text = XCharacterConfigs.GetCharacterCodeStr(characterId)
|
|||
|
|
|||
|
-- 刷新模型
|
|||
|
self:UpdateRoleModel(robotId)
|
|||
|
|
|||
|
-- 刷新详细信息
|
|||
|
self:OnClickTab(self.SelectTag, true)
|
|||
|
|
|||
|
-- 机器人天赋红点
|
|||
|
self:RefreshTalentRed()
|
|||
|
|
|||
|
-- 设置最后选中的机器人
|
|||
|
XDataCenter.Maverick2Manager.SaveLastSelRobotId(self:GetSelectRobotId())
|
|||
|
end
|
|||
|
|
|||
|
-- 初始化3D模型
|
|||
|
function XUiMaverick2Character:InitRoleModel()
|
|||
|
local root = self.UiModelGo.transform
|
|||
|
self.PanelRoleModel = root:FindTransform("PanelRoleModel")
|
|||
|
self.UiPanelRoleModel = XUiPanelRoleModel.New(self.PanelRoleModel, self.Name, nil, true, nil, true)
|
|||
|
|
|||
|
self.CameraFar = {
|
|||
|
root:FindTransform("UiCamFarMaverick2Lv"),
|
|||
|
root:FindTransform("UiCamFarMaverick2Prepare"),
|
|||
|
root:FindTransform("UiCamFarMaverick2Exchange"),
|
|||
|
}
|
|||
|
self.CameraNear = {
|
|||
|
root:FindTransform("UiCamNearMaverick2Lv"),
|
|||
|
root:FindTransform("UiCamNearMaverick2Prepare"),
|
|||
|
root:FindTransform("UiCamNearMaverick2Exchange"),
|
|||
|
}
|
|||
|
end
|
|||
|
|
|||
|
-- 刷新3D模型
|
|||
|
function XUiMaverick2Character:UpdateRoleModel(robotId)
|
|||
|
local entity = XRobotManager.GetRobotById(robotId)
|
|||
|
if entity == nil then
|
|||
|
return
|
|||
|
end
|
|||
|
|
|||
|
local finishedCallback = function(model)
|
|||
|
self.PanelDrag.Target = model.transform
|
|||
|
end
|
|||
|
local characterViewModel = entity:GetCharacterViewModel()
|
|||
|
local sourceEntityId = characterViewModel:GetSourceEntityId()
|
|||
|
if XRobotManager.CheckIsRobotId(sourceEntityId) then
|
|||
|
local robot2CharEntityId = XRobotManager.GetCharacterId(sourceEntityId)
|
|||
|
local isOwen = XDataCenter.CharacterManager.IsOwnCharacter(robot2CharEntityId)
|
|||
|
if XRobotManager.CheckUseFashion(sourceEntityId) and isOwen then
|
|||
|
local character = XDataCenter.CharacterManager.GetCharacter(robot2CharEntityId)
|
|||
|
local robot2CharViewModel = character:GetCharacterViewModel()
|
|||
|
self.UiPanelRoleModel:UpdateCharacterModel(robot2CharEntityId
|
|||
|
, self.PanelRoleModelGo
|
|||
|
, self.Name
|
|||
|
, finishedCallback
|
|||
|
, nil
|
|||
|
, robot2CharViewModel:GetFashionId())
|
|||
|
else
|
|||
|
local robotConfig = XRobotManager.GetRobotTemplate(sourceEntityId)
|
|||
|
self.UiPanelRoleModel:UpdateRobotModel(sourceEntityId
|
|||
|
, robotConfig.CharacterId
|
|||
|
, nil
|
|||
|
, robotConfig.FashionId
|
|||
|
, robotConfig.WeaponId
|
|||
|
, finishedCallback
|
|||
|
, nil
|
|||
|
, self.PanelRoleModelGo
|
|||
|
, self.Name)
|
|||
|
end
|
|||
|
else
|
|||
|
self.UiPanelRoleModel:UpdateCharacterModel(
|
|||
|
sourceEntityId,
|
|||
|
self.PanelRoleModelGo,
|
|||
|
self.Name,
|
|||
|
finishedCallback,
|
|||
|
nil,
|
|||
|
characterViewModel:GetFashionId()
|
|||
|
)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:UpdateCamera(index)
|
|||
|
if self.CurCameraIndex == index then
|
|||
|
return
|
|||
|
end
|
|||
|
|
|||
|
self.CurCameraIndex = index
|
|||
|
for i = 1, XMaverick2Configs.CAMERA_CNT do
|
|||
|
local isShow = self.CurCameraIndex == i
|
|||
|
if self.CameraFar[i] then
|
|||
|
self.CameraFar[i].gameObject:SetActiveEx(isShow)
|
|||
|
end
|
|||
|
if self.CameraNear[i] then
|
|||
|
self.CameraNear[i].gameObject:SetActiveEx(isShow)
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
---------------------------------------- 机器人详情 end ----------------------------------------
|
|||
|
|
|||
|
---------------------------------------- 页签 begin ----------------------------------------
|
|||
|
function XUiMaverick2Character:OnClickTab(index, isForcedRefresh)
|
|||
|
if self.SelectTag == index and not isForcedRefresh then
|
|||
|
return
|
|||
|
end
|
|||
|
|
|||
|
self.SelectTag = index
|
|||
|
local isSelectInfo = index == TabType.Info
|
|||
|
self.BtnHelpSkill:SetButtonState(isSelectInfo and Normal or Select)
|
|||
|
self.BtnInfo:SetButtonState(isSelectInfo and Select or Normal)
|
|||
|
|
|||
|
if isSelectInfo then
|
|||
|
self:RefreshDetailInfo()
|
|||
|
else
|
|||
|
self:RefreshDetailHelpSkill()
|
|||
|
end
|
|||
|
self.PanelHelpSkill.gameObject:SetActiveEx(not isSelectInfo)
|
|||
|
self.PanelInfo.gameObject:SetActiveEx(isSelectInfo)
|
|||
|
self.BtnTalent.gameObject:SetActiveEx(isSelectInfo)
|
|||
|
end
|
|||
|
|
|||
|
-- 刷新支援技能
|
|||
|
function XUiMaverick2Character:RefreshDetailHelpSkill()
|
|||
|
self.SelHelpSkillIndex = nil
|
|||
|
self.HelpSkillInfoList = {}
|
|||
|
local robotId = self:GetSelectRobotId()
|
|||
|
local helpSkillList = XMaverick2Configs.GetRobotAssistSkillConfigs()
|
|||
|
table.sort(helpSkillList, function(a, b)
|
|||
|
local isUnlockA = XDataCenter.Maverick2Manager.IsAssistTalentUnlock(a.TalentId)
|
|||
|
local isUnlockB = XDataCenter.Maverick2Manager.IsAssistTalentUnlock(b.TalentId)
|
|||
|
local aValue = isUnlockA and 1 or 0
|
|||
|
local bValue = isUnlockB and 1 or 0
|
|||
|
if aValue ~= bValue then
|
|||
|
return aValue > bValue
|
|||
|
else
|
|||
|
return a.TalentId < b.TalentId
|
|||
|
end
|
|||
|
end)
|
|||
|
|
|||
|
-- 刷新ui
|
|||
|
XUiHelper.RefreshCustomizedList(self.PanelContent, self.GridHelpSkill, #helpSkillList, function(index, go)
|
|||
|
self:RefreshHelpSkill(index, go, helpSkillList[index])
|
|||
|
end)
|
|||
|
|
|||
|
-- 没有支援技
|
|||
|
self.TxtSelectHelpSkillTitle.text = ""
|
|||
|
self.TxtSelectHelpSkilDesc.text = ""
|
|||
|
if #self.HelpSkillInfoList == 0 then
|
|||
|
return
|
|||
|
end
|
|||
|
|
|||
|
-- 优先选择上次选中的技能,没有则选第一个,都没解锁则不选中
|
|||
|
local selTalentId = XDataCenter.Maverick2Manager.GetRobotSelHelpSkill(robotId)
|
|||
|
local selectIndex = 1
|
|||
|
for i, skillInfo in ipairs(self.HelpSkillInfoList) do
|
|||
|
local skillCfg = skillInfo.HelpSkillCfg
|
|||
|
local isUnlock = XDataCenter.Maverick2Manager.IsAssistTalentUnlock(skillCfg.TalentId)
|
|||
|
if skillCfg.TalentId == selTalentId and isUnlock then
|
|||
|
selectIndex = i
|
|||
|
end
|
|||
|
end
|
|||
|
if self.HelpSkillInfoList[selectIndex].IsLock then
|
|||
|
self.TxtSelectHelpSkillTitle.text = ""
|
|||
|
self.TxtSelectHelpSkilDesc.text = ""
|
|||
|
for _, skillInfo in ipairs(self.HelpSkillInfoList) do
|
|||
|
skillInfo.ImgSelected.gameObject:SetActiveEx(false)
|
|||
|
end
|
|||
|
else
|
|||
|
self:OnClickBtnHelpSkill(selectIndex)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
-- 刷新支援技能
|
|||
|
function XUiMaverick2Character:RefreshHelpSkill(index, go, helpSkillCfg)
|
|||
|
local robotId = self:GetSelectRobotId()
|
|||
|
local groupId = helpSkillCfg.TalentGroupId
|
|||
|
local talentId = helpSkillCfg.TalentId
|
|||
|
local lvConfigs = XMaverick2Configs.GetTalentLvConfigs(talentId)
|
|||
|
local lv = XDataCenter.Maverick2Manager.GetAssistTalentLv(talentId)
|
|||
|
local icon = lv == 0 and lvConfigs[1].Icon or lvConfigs[lv].Icon -- 无0级配置表,使用一级的图标配置
|
|||
|
|
|||
|
local isLock = not XDataCenter.Maverick2Manager.IsAssistTalentUnlock(talentId)
|
|||
|
|
|||
|
local uiObj = go:GetComponent("UiObject")
|
|||
|
local rImgIcon = uiObj:GetObject("RImgIcon")
|
|||
|
local imgLock = uiObj:GetObject("ImgLock")
|
|||
|
rImgIcon.gameObject:SetActiveEx(not isLock)
|
|||
|
imgLock.gameObject:SetActiveEx(isLock)
|
|||
|
if not isLock then
|
|||
|
rImgIcon:SetRawImage(icon)
|
|||
|
end
|
|||
|
XUiHelper.RegisterClickEvent(self, go, function()
|
|||
|
self:OnClickBtnHelpSkill(index)
|
|||
|
end)
|
|||
|
|
|||
|
local imgSelected = uiObj:GetObject("ImgSelected")
|
|||
|
self.HelpSkillInfoList[index] = { Index = index, ImgSelected = imgSelected, HelpSkillCfg = helpSkillCfg, IsLock = isLock }
|
|||
|
if not isLock then
|
|||
|
self.HelpSkillInfoList[index].Name = XUiHelper.GetText("Maverick2HelpSkillName", helpSkillCfg.Name, lv)
|
|||
|
self.HelpSkillInfoList[index].Desc = lvConfigs[lv].Desc
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
-- 点击支援技能
|
|||
|
function XUiMaverick2Character:OnClickBtnHelpSkill(index)
|
|||
|
local skillInfo = self.HelpSkillInfoList[index]
|
|||
|
if skillInfo.IsLock then
|
|||
|
return
|
|||
|
end
|
|||
|
|
|||
|
-- 刷新ui
|
|||
|
for _, skillInfo in ipairs(self.HelpSkillInfoList) do
|
|||
|
local isSelect = skillInfo.Index == index
|
|||
|
skillInfo.ImgSelected.gameObject:SetActiveEx(isSelect)
|
|||
|
end
|
|||
|
self.TxtSelectHelpSkillTitle.text = skillInfo.Name
|
|||
|
self.TxtSelectHelpSkilDesc.text = skillInfo.Desc
|
|||
|
|
|||
|
-- 更新数据
|
|||
|
self.SelHelpSkillIndex = index
|
|||
|
local robotId = self:GetSelectRobotId()
|
|||
|
local talentId = skillInfo.HelpSkillCfg.TalentId
|
|||
|
XDataCenter.Maverick2Manager.SaveRobotSelHelpSkill(robotId, talentId)
|
|||
|
end
|
|||
|
|
|||
|
-- 刷新角色信息
|
|||
|
function XUiMaverick2Character:RefreshDetailInfo()
|
|||
|
local robotId = self:GetSelectRobotId()
|
|||
|
|
|||
|
-- 刷新属性
|
|||
|
local propertyList = XDataCenter.Maverick2Manager.GetRobotPropertyList(robotId)
|
|||
|
XUiHelper.RefreshCustomizedList(self.PropertyContent, self.PropertyItem, #propertyList, function(index, go)
|
|||
|
self:RefreshProperty(index, go, propertyList[index])
|
|||
|
end)
|
|||
|
local localPos = self.PropertyContent.localPosition
|
|||
|
localPos.y = 0
|
|||
|
self.PropertyContent.localPosition = localPos
|
|||
|
|
|||
|
-- 刷新技能
|
|||
|
local skillCfgs = XMaverick2Configs.GetRobotSkillConfigs(robotId)
|
|||
|
XUiHelper.RefreshCustomizedList(self.PaneSkillContent, self.GridSkill, #skillCfgs, function(index, go)
|
|||
|
self:RefreshSkill(go, skillCfgs[index])
|
|||
|
end)
|
|||
|
end
|
|||
|
|
|||
|
-- 刷新属性
|
|||
|
function XUiMaverick2Character:RefreshProperty(index, go, property)
|
|||
|
local uiObj = go:GetComponent("UiObject")
|
|||
|
local config = XMaverick2Configs.GetMaverick2Attribute(property.AttrId, true)
|
|||
|
local showBg = index % 2 == 1
|
|||
|
local isPercent = config.ShowType == XMaverick2Configs.AttributeEffectType.Percent
|
|||
|
uiObj:GetObject("Bg").gameObject:SetActiveEx(showBg)
|
|||
|
uiObj:GetObject("Icon"):SetSprite(config.Icon)
|
|||
|
uiObj:GetObject("Name").text = config.Name
|
|||
|
uiObj:GetObject("NameEng").text = config.EnglishName
|
|||
|
uiObj:GetObject("TxtAttack").text = isPercent and (property.AttrValue / 100) .. "%" or property.AttrValue
|
|||
|
end
|
|||
|
|
|||
|
-- 刷新角色技能
|
|||
|
function XUiMaverick2Character:RefreshSkill(go, skillCfg)
|
|||
|
local uiObj = go:GetComponent("UiObject")
|
|||
|
uiObj:GetObject("Icon"):SetRawImage(skillCfg.Icon)
|
|||
|
uiObj:GetObject("Text").text = skillCfg.Name
|
|||
|
XUiHelper.RegisterClickEvent(self, go, function() self:OnClickBtnSkill(skillCfg) end)
|
|||
|
end
|
|||
|
|
|||
|
-- 点击角色技能
|
|||
|
function XUiMaverick2Character:OnClickBtnSkill(skillCfg)
|
|||
|
local data = { IsSkill = true }
|
|||
|
for k, v in pairs(skillCfg) do
|
|||
|
data[k] = v
|
|||
|
end
|
|||
|
XLuaUiManager.Open("UiFubenMaverickSkillTips", data)
|
|||
|
end
|
|||
|
---------------------------------------- 页签 end ----------------------------------------
|
|||
|
|
|||
|
---------------------------------------- 资源栏 begin ----------------------------------------
|
|||
|
|
|||
|
function XUiMaverick2Character:InitAssetPanel()
|
|||
|
self.AssetActivityPanel = XUiPanelActivityAsset.New(self.PanelSpecialTool)
|
|||
|
XDataCenter.ItemManager.AddCountUpdateListener(
|
|||
|
{
|
|||
|
XDataCenter.ItemManager.ItemId.Maverick2Coin,
|
|||
|
},
|
|||
|
handler(self, self.UpdateAssetPanel),
|
|||
|
self.AssetActivityPanel
|
|||
|
)
|
|||
|
end
|
|||
|
|
|||
|
function XUiMaverick2Character:UpdateAssetPanel()
|
|||
|
self.AssetActivityPanel:Refresh(
|
|||
|
{
|
|||
|
XDataCenter.ItemManager.ItemId.Maverick2Coin,
|
|||
|
}
|
|||
|
)
|
|||
|
end
|
|||
|
---------------------------------------- 资源栏 end ----------------------------------------
|
|||
|
|
|||
|
-- 刷新天赋红点
|
|||
|
function XUiMaverick2Character:RefreshTalentRed()
|
|||
|
local isRed = XDataCenter.Maverick2Manager.IsShowTalentRed(self:GetSelectRobotId())
|
|||
|
self.BtnInfo:ShowReddot(isRed)
|
|||
|
self.BtnTalent:ShowReddot(isRed)
|
|||
|
end
|