public SectorViewModel(Game game, Camera camera, SpriteBatch spriteBatch)
        {
            _camera      = camera;
            _spriteBatch = spriteBatch;

            var serviceScope = ((LivGame)game).ServiceProvider;

            _player  = serviceScope.GetRequiredService <IPlayer>();
            _uiState = serviceScope.GetRequiredService <ISectorUiState>();

            _intarectionBus = serviceScope.GetRequiredService <IActorInteractionBus>();

            _intarectionBus.NewEvent += IntarectionBus_NewEvent;

            var personVisualizationContentStorage =
                serviceScope.GetRequiredService <IPersonVisualizationContentStorage>();
            var personSoundContentStorage             = serviceScope.GetRequiredService <IPersonSoundContentStorage>();
            var gameObjectVisualizationContentStorage =
                serviceScope.GetRequiredService <IGameObjectVisualizationContentStorage>();

            var sector = GetPlayerSectorNode(_player).Sector;

            if (sector is null)
            {
                throw new InvalidOperationException();
            }

            Sector = sector;

            var playerActor = (from actor in Sector.ActorManager.Items
                               where actor.Person == _player.MainPerson
                               select actor).SingleOrDefault();

            _mapViewModel = new MapViewModel(game, _player, _uiState, Sector, spriteBatch);

            ViewModelContext = new SectorViewModelContext(sector);

            var gameObjectParams = new GameObjectParams
            {
                Game                                  = game,
                Camera                                = camera,
                UiState                               = _uiState,
                Player                                = _player,
                SpriteBatch                           = _spriteBatch,
                SectorViewModelContext                = ViewModelContext,
                PersonSoundStorage                    = personSoundContentStorage,
                PersonVisualizationContentStorage     = personVisualizationContentStorage,
                GameObjectVisualizationContentStorage = gameObjectVisualizationContentStorage
            };

            _gameObjectsViewModel = new GameObjectsViewModel(gameObjectParams);

            var commandFactory = new ServiceProviderCommandFactory(((LivGame)game).ServiceProvider);

            var commandPool      = serviceScope.GetRequiredService <ICommandPool>();
            var sectorInteractor =
                new SectorInteractor(_uiState, commandPool, _camera, Sector, ViewModelContext, commandFactory);

            _sectorInteractor = sectorInteractor;
        }