80 lines
2.1 KiB
Lua
80 lines
2.1 KiB
Lua
|
------------------------------------------------
|
||
|
-- 作者: 王圣
|
||
|
-- 日期: 2021-06-11
|
||
|
-- 文件: UISceneBase.lua
|
||
|
-- 模块: UISceneBase
|
||
|
-- 描述: UISceneBase
|
||
|
------------------------------------------------
|
||
|
-- 引用
|
||
|
local UISceneBase = {
|
||
|
Manager = nil,
|
||
|
ModelId = -1,
|
||
|
SceneIndex = 0,
|
||
|
IsTop = false,
|
||
|
IsLoadFinish = false,
|
||
|
SceneType = UISceneDefine.Default,
|
||
|
SceneCamera = nil,
|
||
|
SceneObj = nil,
|
||
|
}
|
||
|
|
||
|
function UISceneBase:New(type, modelId, manager)
|
||
|
local _m = Utils.DeepCopy(self)
|
||
|
_m.ModelId = modelId
|
||
|
_m.SceneType = type
|
||
|
_m.Manager = manager
|
||
|
return Utils.DeepCopy(_m);
|
||
|
end
|
||
|
|
||
|
function UISceneBase:LoadedCallBack(obj)
|
||
|
if obj ~= nil then
|
||
|
self.SceneObj = obj
|
||
|
if self.SceneObj ~= nil then
|
||
|
self.SceneObj:SetLayer(LayerUtils.UIStory)
|
||
|
if self.SceneObj.RealTransform ~= nil then
|
||
|
self.SceneObj.RealTransform.parent = self.Manager.SceneRoot;
|
||
|
self.SceneObj.RealTransform.localPosition = Vector3.zero;
|
||
|
self.SceneCamera = self:GetCamera()
|
||
|
if self.SceneCamera == nil then
|
||
|
self.SceneCamera = UIUtils.FindCamera(self.SceneObj.RealTransform, "Camera")
|
||
|
if self.SceneCamera ~= nil then
|
||
|
self.SceneCamera.gameObject:SetActive(true)
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
if self.OnLoadedCallBack ~= nil then
|
||
|
self:OnLoadedCallBack(obj)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
function UISceneBase:GetCamera()
|
||
|
local ret = nil
|
||
|
if self.OnGetCamera ~= nil then
|
||
|
ret = self:OnGetCamera()
|
||
|
end
|
||
|
return ret
|
||
|
end
|
||
|
|
||
|
function UISceneBase:Destory()
|
||
|
if self.SceneCamera ~= nil then
|
||
|
self.SceneCamera.gameObject:SetActive(false)
|
||
|
end
|
||
|
if self.SceneObj ~= nil then
|
||
|
self.SceneObj:Destroy()
|
||
|
self.SceneObj = nil
|
||
|
end
|
||
|
self.IsLoadFinish = false
|
||
|
if self.OnDestory ~= nil then
|
||
|
self:OnDestory()
|
||
|
end
|
||
|
end
|
||
|
|
||
|
function UISceneBase:Update(dt)
|
||
|
if self.OnUpdate ~= nil then
|
||
|
self:OnUpdate(dt)
|
||
|
end
|
||
|
end
|
||
|
|
||
|
return UISceneBase
|