PGRData/Script/matrix/xui/xuicharacter/XUiPanelQualityUpgrade.lua

96 lines
4.7 KiB
Lua
Raw Normal View History

local stringFormat = string.format
XUiPanelQualityUpgrade = XClass(nil, "XUiPanelQualityUpgrade")
function XUiPanelQualityUpgrade:Ctor(ui, parent)
self.GameObject = ui.gameObject
self.Transform = ui.transform
self.Parent = parent
self:InitAutoScript()
end
-- auto
-- Automatic generation of code, forbid to edit
function XUiPanelQualityUpgrade:InitAutoScript()
self:AutoInitUi()
self:AutoAddListener()
end
function XUiPanelQualityUpgrade:AutoInitUi()
self.BtnDarkBg = self.Transform:Find("BtnDarkBg"):GetComponent("Button")
self.BtnBgImage = self.Transform:Find("BtnBgImage"):GetComponent("Button")
self.PanelCharLife = self.Transform:Find("BtnBgImage/Properties/PanelCharLife")
self.TxtOldLife = self.Transform:Find("BtnBgImage/Properties/PanelCharLife/TxtOldLife"):GetComponent("Text")
self.TxtCurLife = self.Transform:Find("BtnBgImage/Properties/PanelCharLife/TxtCurLife"):GetComponent("Text")
self.PanelCharAttack = self.Transform:Find("BtnBgImage/Properties/PanelCharAttack")
self.TxtOldAttack = self.Transform:Find("BtnBgImage/Properties/PanelCharAttack/TxtOldAttack"):GetComponent("Text")
self.TxtCurAttack = self.Transform:Find("BtnBgImage/Properties/PanelCharAttack/TxtCurAttack"):GetComponent("Text")
self.PanelCharDefense = self.Transform:Find("BtnBgImage/Properties/PanelCharDefense")
self.TxtOldDefense = self.Transform:Find("BtnBgImage/Properties/PanelCharDefense/TxtOldDefense"):GetComponent("Text")
self.TxtCurDefense = self.Transform:Find("BtnBgImage/Properties/PanelCharDefense/TxtCurDefense"):GetComponent("Text")
self.PanelCharCrit = self.Transform:Find("BtnBgImage/Properties/PanelCharCrit")
self.TxtOldCrit = self.Transform:Find("BtnBgImage/Properties/PanelCharCrit/TxtOldCrit"):GetComponent("Text")
self.TxtCurCrit = self.Transform:Find("BtnBgImage/Properties/PanelCharCrit/TxtCurCrit"):GetComponent("Text")
self.PanelTxt = self.Transform:Find("BtnBgImage/PanelTxt")
self.RImgQuality = self.Transform:Find("BtnBgImage/PanelTxt/RImgQuality"):GetComponent("RawImage")
self.RImgQuality1 = self.Transform:Find("BtnBgImage/PanelTxt/RImgQuality1"):GetComponent("RawImage")
end
function XUiPanelQualityUpgrade:RegisterClickEvent(uiNode, func)
if func == nil then
XLog.Error("XUiPanelQualityUpgrade:RegisterClickEvent函数参数错误参数func不能为空")
return
end
if type(func) ~= "function" then
XLog.Error("XUiPanelQualityUpgrade:RegisterClickEvent函数错误, 参数func需要是function类型, func的类型是" .. type(func))
end
local listener = function(...)
func(self, ...)
end
CsXUiHelper.RegisterClickEvent(uiNode, listener)
end
function XUiPanelQualityUpgrade:AutoAddListener()
self:RegisterClickEvent(self.BtnDarkBg, self.OnBtnDarkBgClick)
end
function XUiPanelQualityUpgrade:OnBtnDarkBgClick()
self.Parent.QualityUpgradeDisable:PlayTimelineAnimation(function()
self:HideLevelInfo()
end)
end
function XUiPanelQualityUpgrade:ShowLevelInfo(characterId)
self.GameObject:SetActive(true)
self.IsShow = true
local character = XDataCenter.CharacterManager.GetCharacter(characterId)
self:CurCharUpgradeInfo(character)
CS.XAudioManager.PlaySound(XSoundManager.UiBasicsMusic.Success) -- 成功
end
function XUiPanelQualityUpgrade:HideLevelInfo()
self.IsShow = false
if self.GameObject:Exist() then
self.GameObject:SetActive(false)
end
end
function XUiPanelQualityUpgrade:OldCharUpgradeInfo(character)
local attrbis = XCharacterConfigs.GetNpcPromotedAttribByQuality(character.Id, character.Quality)
self.TxtOldAttack.text = stringFormat("%.2f", FixToDouble(attrbis[XNpcAttribType.AttackNormal]))
self.TxtOldLife.text = stringFormat("%.2f", FixToDouble(attrbis[XNpcAttribType.Life]))
self.TxtOldDefense.text = stringFormat("%.2f", FixToDouble(attrbis[XNpcAttribType.DefenseNormal]))
self.TxtOldCrit.text = stringFormat("%.2f", FixToDouble(attrbis[XNpcAttribType.Crit]))
self.RImgQuality:SetRawImage(XCharacterConfigs.GetCharQualityIcon(character.Quality))
end
function XUiPanelQualityUpgrade:CurCharUpgradeInfo(character)
local attrbis = XCharacterConfigs.GetNpcPromotedAttribByQuality(character.Id, character.Quality or 0)
self.TxtCurAttack.text = stringFormat("%.2f", FixToDouble(attrbis[XNpcAttribType.AttackNormal]))
self.TxtCurLife.text = stringFormat("%.2f", FixToDouble(attrbis[XNpcAttribType.Life]))
self.TxtCurDefense.text = stringFormat("%.2f", FixToDouble(attrbis[XNpcAttribType.DefenseNormal]))
self.TxtCurCrit.text = stringFormat("%.2f", FixToDouble(attrbis[XNpcAttribType.Crit]))
self.RImgQuality1:SetRawImage(XCharacterConfigs.GetCharQualityIcon(character.Quality))
end