UnRegisterWorldMediatorCommand.lua 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. local UnRegisterWorldMediatorCommand = class('UnRegisterWorldMediatorCommand', framework.SimpleCommand)
  2. function UnRegisterWorldMediatorCommand:ctor()
  3. end
  4. function UnRegisterWorldMediatorCommand:execute(note)
  5. self:UnRegisterOtherMediator()
  6. self:RemoveNormalLayerMediator()
  7. end
  8. function UnRegisterWorldMediatorCommand:UnRegisterOtherMediator()
  9. local facade = global.Facade
  10. -- debug map
  11. if global.isDebugMode or global.isGMMode then
  12. local DebugMapMediator = requireMediator( "debug_map/DebugMapMediator" )
  13. facade:removeMediator(DebugMapMediator.NAME)
  14. end
  15. end
  16. function UnRegisterWorldMediatorCommand:RemoveNormalLayerMediator()
  17. local requireMediator = requireMediator
  18. local registerTable = requireCommand("register/WorldMediatorTable")
  19. local facade = global.Facade
  20. for k, v in pairs(registerTable) do
  21. package.loaded[v] = nil
  22. local Mediator = requireMediator(v)
  23. facade:removeMediator(Mediator.NAME)
  24. end
  25. end
  26. return UnRegisterWorldMediatorCommand