local this = class("worldManager", G_EventManagerBase)
this.event = {
  setMainControlEntity = "setMainControlEntity",
  exitBattle = "syncManager_exitBattle",
  triggerInteractive = "triggerInteractive"
}

function this:ctor()
  this.super.ctor(self)
  self.handleCenter = require(L_R.world.coreMgr .. "world.handleCenter.handleCenter").new()
end

function this:getCurModule()
  return self.handleCenter:getCurModule()
end

function this:getCurProxy()
  return nil
end

function this:getIsActive()
  return self.handleCenter:getCurPoxyIsActive()
end

function this:translateUpdate(isUpdate)
  local worldIns = C_WorldProxy.GetInstance()
  if isUpdate then
    L_GameTimer.resume()
    AzurWorldInstance:ResumeWorld()
  else
    L_GameTimer.pause()
    AzurWorldInstance:PauseWorld()
  end
end

function this:dispose(callback)
  self.handleCenter:dispose()
  L_GuideManager:dispose()
  L_ShortCutManager:dispose()
  L_MultiDungeonManager:dispose()
  L_BattleManager:dispose()
  L_InteractiveManager:resetLock()
  L_SummonedManager:dispose()
  L_PriorityShowQueueManager:dispose()
  L_FlyMsgManager:dispose()
  L_TopBarManager:dispose()
  L_SceneManager:dispose(callback)
  L_WaterMarkManager:dispose()
  L_WorldChallengeManager:dispose()
  L_MiniGameManager:dispose()
end

return this
