Files
StellaSora_DataLua/lua/game/ui/soldier/handbook/soldierhandbookctrl.lua
T
SL1900 8c4bd41668 Update - 1.13.0.124
EN: 1.13.0.124
CN: 1.13.0.124
JP: 1.13.0.128
KR: 1.13.0.130
2026-07-21 12:30:00 +09:00

128 lines
4.7 KiB
Lua

local SoldierHandbookCtrl = class("SoldierHandbookCtrl", BaseCtrl)
SoldierHandbookCtrl._mapNodeConfig = {
TopBar = {
sNodeName = "TopBarPanel",
sCtrlName = "Game.UI.TopBarEx.TopBarCtrl"
},
btn_char = {
sComponentName = "UIButton",
callback = "OnBtnClick_Char"
},
go_char_in = {},
go_char_off = {},
btn_partner = {
sComponentName = "UIButton",
callback = "OnBtnClick_Partner"
},
go_partner_in = {},
go_partner_off = {},
btn_starterCard = {
sComponentName = "UIButton",
callback = "OnBtnClick_StarterCard"
},
go_starterCard_in = {},
go_starterCard_off = {},
btn_strategyCard = {
sComponentName = "UIButton",
callback = "OnBtnClick_StrategyCard"
},
go_strategyCard_in = {},
go_strategyCard_off = {},
txt_char = {
nCount = 2,
sComponentName = "TMP_Text",
sLanguageId = "Soldier_Handbook_Character"
},
txt_partner = {
nCount = 2,
sComponentName = "TMP_Text",
sLanguageId = "Soldier_Handbook_Partner"
},
txt_starterCard = {
nCount = 2,
sComponentName = "TMP_Text",
sLanguageId = "Soldier_Handbook_StarterCard"
},
txt_strategyCard = {
nCount = 2,
sComponentName = "TMP_Text",
sLanguageId = "Soldier_Handbook_StrategyCard"
},
CharCtrl = {
sNodeName = "CharRoot",
sCtrlName = "Game.UI.Soldier.Handbook.SoldierHandbookCharCtrl"
},
PartnerCtrl = {
sNodeName = "PartnerRoot",
sCtrlName = "Game.UI.Soldier.Handbook.SoldierHandbookPartnerCtrl"
},
StarterCardCtrl = {
sNodeName = "StarterCardRoot",
sCtrlName = "Game.UI.Soldier.Handbook.SoldierHandbookStarterCardCtrl"
},
StrategyCardCtrl = {
sNodeName = "StrategyCardRoot",
sCtrlName = "Game.UI.Soldier.Handbook.SoldierHandbookStrategyCardCtrl"
}
}
SoldierHandbookCtrl._mapEventConfig = {}
SoldierHandbookCtrl._mapRedDotConfig = {}
function SoldierHandbookCtrl:Awake()
local param = self:GetPanelParam()
local nSelectedType = 0
if type(param) == "table" then
nSelectedType = param[1]
end
if nSelectedType == 0 then
nSelectedType = AllEnum.SoldierHandbookType.Character
end
self:SwitchToSelectedType(nSelectedType)
end
function SoldierHandbookCtrl:OnEnable()
EventManager.Hit("SoldierHandbookPanel_Open")
end
function SoldierHandbookCtrl:OnDisable()
EventManager.Hit("SoldierHandbookPanel_Close")
end
function SoldierHandbookCtrl:SwitchToSelectedType(nSelectedType)
self._mapNode.CharCtrl:Clear()
self._mapNode.PartnerCtrl:Clear()
self._mapNode.StarterCardCtrl:Clear()
self._mapNode.StrategyCardCtrl:Clear()
self.nSelectedType = nSelectedType
self._mapNode.CharCtrl.gameObject:SetActive(self.nSelectedType == AllEnum.SoldierHandbookType.Character)
self._mapNode.PartnerCtrl.gameObject:SetActive(self.nSelectedType == AllEnum.SoldierHandbookType.Partner)
self._mapNode.StarterCardCtrl.gameObject:SetActive(self.nSelectedType == AllEnum.SoldierHandbookType.StarterCard)
self._mapNode.StrategyCardCtrl.gameObject:SetActive(self.nSelectedType == AllEnum.SoldierHandbookType.StrategyCard)
self._mapNode.go_char_in.gameObject:SetActive(self.nSelectedType == AllEnum.SoldierHandbookType.Character)
self._mapNode.go_char_off.gameObject:SetActive(self.nSelectedType ~= AllEnum.SoldierHandbookType.Character)
self._mapNode.go_partner_in.gameObject:SetActive(self.nSelectedType == AllEnum.SoldierHandbookType.Partner)
self._mapNode.go_partner_off.gameObject:SetActive(self.nSelectedType ~= AllEnum.SoldierHandbookType.Partner)
self._mapNode.go_starterCard_in.gameObject:SetActive(self.nSelectedType == AllEnum.SoldierHandbookType.StarterCard)
self._mapNode.go_starterCard_off.gameObject:SetActive(self.nSelectedType ~= AllEnum.SoldierHandbookType.StarterCard)
self._mapNode.go_strategyCard_in.gameObject:SetActive(self.nSelectedType == AllEnum.SoldierHandbookType.StrategyCard)
self._mapNode.go_strategyCard_off.gameObject:SetActive(self.nSelectedType ~= AllEnum.SoldierHandbookType.StrategyCard)
if self.nSelectedType == AllEnum.SoldierHandbookType.Character then
self._mapNode.CharCtrl:Init()
elseif self.nSelectedType == AllEnum.SoldierHandbookType.Partner then
self._mapNode.PartnerCtrl:Init()
elseif self.nSelectedType == AllEnum.SoldierHandbookType.StarterCard then
self._mapNode.StarterCardCtrl:Init()
elseif self.nSelectedType == AllEnum.SoldierHandbookType.StrategyCard then
self._mapNode.StrategyCardCtrl:Init()
end
end
function SoldierHandbookCtrl:OnBtnClick_Char()
self:SwitchToSelectedType(AllEnum.SoldierHandbookType.Character)
end
function SoldierHandbookCtrl:OnBtnClick_Partner()
self:SwitchToSelectedType(AllEnum.SoldierHandbookType.Partner)
end
function SoldierHandbookCtrl:OnBtnClick_StarterCard()
self:SwitchToSelectedType(AllEnum.SoldierHandbookType.StarterCard)
end
function SoldierHandbookCtrl:OnBtnClick_StrategyCard()
self:SwitchToSelectedType(AllEnum.SoldierHandbookType.StrategyCard)
end
return SoldierHandbookCtrl