miduo_client/Assets/ManagedResources/~Lua/Modules/Expert/PatFaceDiffMonsterInfoPanel...

89 lines
3.6 KiB
Lua

require("Base/BasePanel")
PatFaceDiffMonsterInfoPanel = Inherit(BasePanel)
local pokemonId = 0
--初始化组件(用于子类重写)
function PatFaceDiffMonsterInfoPanel:InitComponent()
self.spLoader = SpriteLoader.New()
self.btnBack = Util.GetGameObject(self.transform, "btnBack")
self.SkillIcon = Util.GetGameObject(self.transform, "DemonInfoRoot/SkillInfoRoot/skillIconBg/SkillIcon"):GetComponent("Image")
self.skillLevel = Util.GetGameObject(self.transform, "DemonInfoRoot/SkillInfoRoot/skillLevel"):GetComponent("Text")
self.skillName = Util.GetGameObject(self.transform, "DemonInfoRoot/SkillInfoRoot/skillName"):GetComponent("Text")
self.skillDesc = Util.GetGameObject(self.transform, "DemonInfoRoot/SkillInfoRoot/skillDesc/skillInfoText"):GetComponent("Text")
self.proPer = Util.GetGameObject(self.transform, "DemonInfoRoot/proPer")
self.proGrid = Util.GetGameObject(self.transform, "DemonInfoRoot/proRect/proGrid")
end
--绑定事件(用于子类重写)
function PatFaceDiffMonsterInfoPanel:BindEvent()
Util.AddClick(self.btnBack, function()
self:ClosePanel()
end)
end
--添加事件监听(用于子类重写)
function PatFaceDiffMonsterInfoPanel:AddListener()
end
--移除事件监听(用于子类重写)
function PatFaceDiffMonsterInfoPanel:RemoveListener()
end
--界面打开时调用(用于子类重写)
function PatFaceDiffMonsterInfoPanel:OnOpen(_pokemonId)
pokemonId = _pokemonId
end
--界面打开或者重新打开后,界面刷新时调用(用于子类重写)
function PatFaceDiffMonsterInfoPanel:OnShow()
local differDemonsStageConfigId = 0
local differDemonsStageConfig = {}
for i, v in ConfigPairs(ConfigManager.GetConfig(ConfigName.DifferDemonsStageConfig)) do
if math.floor(v.ID/100) == pokemonId then
if differDemonsStageConfigId < v.ID then
differDemonsStageConfigId = v.ID
differDemonsStageConfig = v
end
end
end
local skillConFig = ConfigManager.GetConfigData(ConfigName.SkillConfig,differDemonsStageConfig.SkillId)
self.SkillIcon.sprite = self.spLoader:LoadSprite(GetResourcePath(skillConFig.Icon))
self.skillLevel.text = differDemonsStageConfigId % 100
self.skillName.text = GetLanguageStrById(skillConFig.Name)
self.skillDesc.text = GetSkillConfigDesc(skillConFig)
local allProVal = DiffMonsterManager.CalculatePokemonProValue(pokemonId)
Util.ClearChild(self.proGrid.transform)
for k, v in pairs(allProVal) do
if v > 0 then
local go = newObject(self.proPer)
go.transform:SetParent(self.proGrid.transform)
go.transform.localScale = Vector3.one
go.transform.localPosition = Vector3.zero
go:SetActive(true)
if PropertyTypeIconDef[k] then
Util.GetGameObject(go, "icon"):GetComponent("Image").sprite = self.spLoader:LoadSprite(PropertyTypeIconDef[k])
end
Util.GetGameObject(go, "icon"):GetComponent("Image"):SetNativeSize()
Util.GetGameObject(go, "proName"):GetComponent("Text").text = GetLanguageStrById(ConfigManager.GetConfigData(ConfigName.PropertyConfig, k).Info) .. ":"
Util.GetGameObject(go, "proValue"):GetComponent("Text").text = GetPropertyFormatStr(ConfigManager.GetConfigData(ConfigName.PropertyConfig, k).Style, v)
end
end
end
--界面关闭时调用(用于子类重写)
function PatFaceDiffMonsterInfoPanel:OnClose()
end
--界面销毁时调用(用于子类重写)
function PatFaceDiffMonsterInfoPanel:OnDestroy()
self.spLoader:Destroy()
end
return PatFaceDiffMonsterInfoPanel