Example #1
0
        public StreamingManager(ISceneResourceRequestHandler requestHandler,
                                IStreamingGoManager streamingGo,
                                StreamingData sceneDescription,
                                ScenesLightmapData.MeshRecords scenesLightmapRecords,
                                ScenesIndoorCullData.IndoorCullRecords scenesIndoorCullRecords,
                                WorldCompositionParam param,
                                int preloadSceneCount)
        {
            _requestHandler          = requestHandler;
            _sceneDescription        = sceneDescription;
            _scenesLightmapRecords   = scenesLightmapRecords;
            _scenesIndoorCullRecords = scenesIndoorCullRecords;
            _concurrentCount         = preloadSceneCount;

            _worldComposition = new WorldCompositionManager(this, param);
            _streamingGo      = streamingGo ?? new StreamingGoByScene();

            _streamingGo.SetResourceHandler(this);
            _triggerObjectManager = SingletonManager.Get <TriggerObjectManager>();
            if (_sceneDescription != null)
            {
                var count = _sceneDescription.Scenes.Count;
                for (int i = 0; i < count; i++)
                {
                    _sceneIndex.Add(_sceneDescription.Scenes[i].SceneName, i);
                }
            }

            _requestHandler.SceneLoaded   += SceneLoaded;
            _requestHandler.SceneUnloaded += SceneUnloaded;
            _requestHandler.GoLoaded      += GoLoaded;
            _requestHandler.GoUnloaded    += GoUnloaded;
        }
Example #2
0
 public DoorCastLogic(MapObjectContext mapObjectContext, PlayerContext playerContext, IUserCmdGenerator cmdGenerator, float maxDistance) : base(playerContext, maxDistance)
 {
     _doorContext          = mapObjectContext;
     _playerContext        = playerContext;
     _userCmdGenerator     = cmdGenerator;
     _triggerObjectManager = SingletonManager.Get <TriggerObjectManager>();
 }
Example #3
0
        protected ClientAbstractTriggerObjectListener(Contexts contexts, ETriggerObjectType triggerType,
                                                      IMatcher <MapObjectEntity> activeMapMatcher, IMatcher <MapObjectEntity> deactiveMapMatcher)
        {
            _triggerType = triggerType;
            _contexts    = contexts;

            _triggerObjectManager = SingletonManager.Get <TriggerObjectManager>();
            _triggerObjectManager.RegisterListener(triggerType, this);
            _objectManager = _triggerObjectManager.GetManager(triggerType);

            var mapContext = contexts.mapObject;

            _activeMapObjects   = mapContext.GetGroup(activeMapMatcher);
            _deactiveMapObjects = mapContext.GetGroup(deactiveMapMatcher);

            MapObjectEntityFactory = contexts.session.entityFactoryObject.MapObjectEntityFactory;
            _detachCallback        = new ClientFracturedChunkDetachCallback();
        }
Example #4
0
 public TriggerObjectUpdateSystem()
 {
     _manager = SingletonManager.Get <TriggerObjectManager>();
 }
 public TriggerObjectUpdateSystem(Contexts contexts)
 {
     _manager  = SingletonManager.Get <TriggerObjectManager>();
     _contexts = contexts;
 }