local this = class("sceneManager", G_EventManagerBase)
this.event = {
  switchSceneStart = "switchSceneStart",
  switchSceneEnd = "switchSceneEnd",
  unloadSceneStart = "unloadSceneStart",
  loadSceneEnd = "loadSceneEnd",
  suspendCurScene = "suspendCurScene",
  resumeCurSceneStart = "resumeCurSceneStart",
  resumeCurSceneEnd = "resumeCurSceneEnd",
  transmitSceneStart = "transmitSceneStart",
  transmitSceneEnd = "transmitSceneEnd"
}

function this:ctor()
  this.super.ctor(self)
end

function this:setSceneActive(isActive)
  L_EntityManager:showOrHideAllRoot(isActive, L_Const.moduleControl.world)
  AzurWorld.visbleMgr:SetWeatherActive(isActive)
  AzurWorld.visbleMgr:UISetArtSceneVisible(isActive)
end

function this:setSceneActiveForTimeline(isActive)
  local prefabRoot = L_CommonUtil.findTranByName("[Prefabs]", C_LuaUtility.GetRootNode().transform)
  if prefabRoot then
    prefabRoot.gameObject:ActiveTrans(isActive)
  end
end

function this:dispose(callback)
end

function this:getIsTeleport()
  return self.scene.isTeleport == true
end

return this
