Files
StellaSora_DataLua/lua/game/ui/templateex/templatecharinfoctrl.lua
T
SL1900 5e0d58cfad Initial version - 1.2.0.60
EN: 1.2.0.60
CN: 1.2.0.61
JP: 1.2.0.63
KR: 1.2.0.67
2025-12-03 01:00:00 +09:00

49 lines
2.3 KiB
Lua

local TemplateCharInfoCtrl = class("TemplateCharInfoCtrl", BaseCtrl)
local ElementColor = {
[GameEnum.elementType.WE] = Color(0.3058823529411765, 0.6235294117647059, 0.8470588235294118),
[GameEnum.elementType.FE] = Color(0.9372549019607843, 0.3215686274509804, 0.1803921568627451),
[GameEnum.elementType.SE] = Color(0.6313725490196078, 0.403921568627451, 0.23921568627450981),
[GameEnum.elementType.AE] = Color(0.5294117647058824, 0.7490196078431373, 0.06274509803921569),
[GameEnum.elementType.LE] = Color(0.9529411764705882, 0.7098039215686275, 0.12941176470588237),
[GameEnum.elementType.DE] = Color(0.6941176470588235, 0.37254901960784315, 0.6235294117647059)
}
TemplateCharInfoCtrl._mapNodeConfig = {
imgElementBg = {sComponentName = "Image"},
txtTitle = {
sComponentName = "TMP_Text",
sLanguageId = "T_Element_Property"
},
txtElement = {sComponentName = "TMP_Text"},
imgElementIcon = {sComponentName = "Image"},
txtName = {sComponentName = "TMP_Text"},
imgRareName = {sComponentName = "Image"},
imgCharColor = {sComponentName = "Image"},
txtLv = {sComponentName = "TMP_Text", sLanguageId = "Lv"},
txtLevel = {sComponentName = "TMP_Text"}
}
TemplateCharInfoCtrl._mapEventConfig = {}
function TemplateCharInfoCtrl:Refresh(mapChar, configData, mapTrailCfg)
local nLv = mapTrailCfg and mapTrailCfg.Level or mapChar.nLevel
local nEET = configData.EET
local sName = configData.Name
local Grade = configData.Grade
local CharColor
local mapCharDescCfg = ConfigTable.GetData("CharacterDes", mapTrailCfg and mapTrailCfg.CharId or mapChar.nId)
if mapCharDescCfg ~= nil then
CharColor = mapCharDescCfg.CharColor
else
CharColor = ""
end
NovaAPI.SetTMPText(self._mapNode.txtLevel, nLv)
local Name = AllEnum.ElementIconType.Icon .. nEET
self:SetAtlasSprite(self._mapNode.imgElementIcon, "12_rare", Name)
NovaAPI.SetImageColor(self._mapNode.imgElementBg, ElementColor[nEET])
NovaAPI.SetTMPText(self._mapNode.txtElement, ConfigTable.GetUIText("T_Element_Attr_" .. nEET))
NovaAPI.SetTMPText(self._mapNode.txtName, mapTrailCfg and mapTrailCfg.Name or sName)
self:SetSprite_FrameColor(self._mapNode.imgRareName, Grade, AllEnum.FrameType_New.Text)
NovaAPI.SetImageNativeSize(self._mapNode.imgRareName)
local _, colorChar = ColorUtility.TryParseHtmlString(CharColor)
NovaAPI.SetImageColor(self._mapNode.imgCharColor, colorChar)
end
return TemplateCharInfoCtrl