60 lines
1.8 KiB
Plaintext
60 lines
1.8 KiB
Plaintext
SceneGuildGateInfo = reusableClass("SceneGuildGateInfo")
|
|
|
|
SceneGuildGateInfo.PoolSize = 50
|
|
|
|
SceneGuildGateInfo.ResID = ResourcePathHelper.UICell("SceneGuildGateInfo")
|
|
|
|
function SceneGuildGateInfo:Init()
|
|
self.level = GameObjectUtil.Instance:DeepFind(self.gameObject, "Level"):GetComponent(UILabel);
|
|
self.bossMap = {};
|
|
for i=1,5 do
|
|
local bossSymbol = GameObjectUtil.Instance:DeepFind(self.gameObject, "BossSymbol"..i);
|
|
self.bossMap[i] = GameObjectUtil.Instance:DeepFind(bossSymbol, "Finish");
|
|
end
|
|
self.teamSymbol = GameObjectUtil.Instance:DeepFind(self.gameObject, "TeamSymbol");
|
|
self.bg = GameObjectUtil.Instance:DeepFind(self.gameObject, "Bg"):GetComponent(UISprite);
|
|
end
|
|
|
|
function SceneGuildGateInfo:UpdateInfo( level, killedbossnum ,haveteamer)
|
|
if(level ~= nil)then
|
|
self.level.text = "Lv." .. tostring(level);
|
|
end
|
|
|
|
for i=1,#self.bossMap do
|
|
self.bossMap[i]:SetActive(i<=killedbossnum);
|
|
end
|
|
if(haveteamer)then
|
|
self.teamSymbol:SetActive(true);
|
|
self.bg.width = 286
|
|
else
|
|
self.teamSymbol:SetActive(false);
|
|
self.bg.width = 246
|
|
end
|
|
end
|
|
|
|
-- override begin
|
|
-- args { gameObject, text icon clickFunc }
|
|
function SceneGuildGateInfo:DoConstruct(asArray, args)
|
|
if(not Slua.IsNull(self.gameObject))then
|
|
GameObject.Destroy(self.gameObject);
|
|
self.gameObject = nil;
|
|
end
|
|
|
|
local parent = args[1];
|
|
if(not Slua.IsNull(parent))then
|
|
self.gameObject = Game.AssetManager_UI:CreateSceneUIAsset(self.ResID, parent.transform);
|
|
self.gameObject.transform.localPosition = LuaGeometry.Const_V3_zero;
|
|
self:Init();
|
|
|
|
self:UpdateInfo(args[2], args[3], args[4]);
|
|
end
|
|
end
|
|
|
|
function SceneGuildGateInfo:DoDeconstruct(asArray)
|
|
if(not Slua.IsNull(self.gameObject))then
|
|
Game.GOLuaPoolManager:AddToSceneUIPool(self.ResID, self.gameObject);
|
|
end
|
|
self.gameObject = nil;
|
|
|
|
end
|
|
-- override end |