public override Systems CreateUpdateSystems(IContexts contexts1)
        {
            var gameModule = new CompositeGameModule();
            var contexts   = contexts1 as Contexts;

            var loadSceneSystem = new InitialSceneLoadingSystem(this, contexts, null, true);

            loadSceneSystem.AsapMode = true;
            gameModule.AddSystem(loadSceneSystem);
            gameModule.AddSystem(new InitTriggerObjectManagerSystem(contexts));

            gameModule.AddSystem(new ServerScenePostprocessorSystem(contexts.session.commonSession));
            //gameModule.AddModule(new ResourcePreloadModule(this));

            var featrue = new ServerPrepareFeature("loadMapConfig", gameModule, contexts.session.commonSession.AssetManager);

            featrue.Add(new MapConfigInitModule(contexts, this));
            if (contexts.session.commonSession.RoomInfo.MapId == 2)
            {
                contexts.session.commonSession.InitPosition = new Vector3(1906, 20, -1964);
            }
            else
            {
                contexts.session.commonSession.InitPosition = Vector3.zero;
            }
            return(featrue);
        }
Пример #2
0
        public static CompositeGameModule CreateCompositeGameModule(Contexts contexts)
        {
            var motors         = MotorsFactory.CraeteMotors(contexts, SingletonManager.Get <CameraConfigManager>().Config);
            var sessionObjects = contexts.session.commonSession;

            var gameModule = new CompositeGameModule();

            IHitBoxEntityManager      hitBoxEntityManager = new HitBoxEntityManager(contexts, false);
            ICompensationWorldFactory factory             =
                new ClientCompensationWorldFactory(contexts.session.commonSession.GameContexts,
                                                   hitBoxEntityManager);
            GameModule cmdModule = new UserCmdGameModule(contexts, factory,
                                                         new BulletHitHandler(contexts, sessionObjects.EntityIdGenerator, null), new MeleeHitHandler(null),
                                                         new ThrowingHitHandler(null), contexts.session.commonSession, motors);

//            cmdModule.AddSystem(new PlayerAddMarkSystem(contexts));
            cmdModule.AddSystem(new PlayerSprayPaintSystem(contexts));

            gameModule.AddModule(cmdModule);

            gameModule.AddModule(new BulletModule(contexts));
            gameModule.AddModule(new ThrowingModule(contexts));
            gameModule.AddModule(new ClientEffectModule(contexts));
            gameModule.AddModule(new ClientVehicleModule(contexts));
            gameModule.AddModule(new ClientPlayerModule(contexts));
            gameModule.AddModule(new ClientSoundModule(contexts));


            if (SharedConfig.IsRobot)
            {
                gameModule.AddModule(new ClientRobotModule(contexts));
            }

            gameModule.AddSystem(new VisionCenterUpdateSystem(contexts));
            gameModule.AddSystem(new TerrainDataLoadSystem(contexts));
            if (SingletonManager.Get <MapConfigManager>().SceneParameters is SceneConfig ||
                SingletonManager.Get <MapConfigManager>().SceneParameters.Id == 0)
            {
                gameModule.AddSystem(new ClientAutoWorldShiftRenderSystem(contexts));
            }

            //gameModule.AddSystem(new OcclusionCullingSystem(contexts));

            gameModule.AddModule(new ClientSceneObjectModule(contexts, sessionObjects));
            //  gameModule.AddModule(new ClientSoundModule(contexts));
            gameModule.AddModule(new ClientGamePlayModule(contexts));
            gameModule.AddModule(new ClientFreeMoveModule(contexts));
            gameModule.AddModule(new UiModule(contexts));

            gameModule.AddModule(new ConfigurationRefreshModule(contexts));
            SingletonManager.Get <FreeUiManager>().Contexts1 = contexts;
            SimpleMessageManager.Instance.Init(contexts.session.entityFactoryObject.SoundEntityFactory);

            return(gameModule);
        }
Пример #3
0
        public override Systems CreateUpdateSystems(IContexts contexts1)
        {
            var gameModule = new CompositeGameModule();
            var contexts   = contexts1 as Contexts;

            var loadSceneSystem = new InitialSceneLoadingSystem(this, contexts, null, true);

            loadSceneSystem.AsapMode = true;
            gameModule.AddSystem(loadSceneSystem);
            gameModule.AddSystem(new InitTriggerObjectManagerSystem(contexts));

            gameModule.AddSystem(new ServerScenePostprocessorSystem(contexts.session.commonSession));
            //gameModule.AddModule(new ResourcePreloadModule(this));
            var featrue = new ServerPrepareFeature("loadMapConfig", gameModule, contexts.session.commonSession);

            return(featrue);
        }
Пример #4
0
        private CompositeGameModule CreateCompositeGameModule(Contexts contexts)
        {
            var gameModule = new CompositeGameModule();


            gameModule.AddSystem(new InitOcclusionCullingControllerSystem(this, contexts));

            return(gameModule);
        }
Пример #5
0
        public override Systems CreateUpdateSystems(IContexts contexts)
        {
            var ctx     = (Contexts)contexts;
            var systems = new Feature("ProfileState");

            ctx.player.flagSelfEntity.cameraObj.MainCamera = Camera.main;
            ctx.player.flagSelfEntity.cameraObj.MainCamera.transform.position =
                ctx.player.flagSelfEntity.position.Value;

            CompositeGameModule module = new CompositeGameModule();

            module.AddSystem(new VisionCenterUpdateSystem(ctx));
            module.AddSystem(new TerrainDataLoadSystem(ctx));

            systems.Add(new AutoTerrainNavigatorSystem((Contexts)contexts));
            systems.Add(new ProfileFeature(module, ctx.session.commonSession));

            return(systems);
        }
Пример #6
0
        private CompositeGameModule CreateCompositeGameModule(Contexts contexts)
        {
            var gameModule = new CompositeGameModule();

            var loadSceneSystem = new InitialSceneLoadingSystem(this, contexts, new StreamingGoByDistance(), _isServer);

            loadSceneSystem.AsapMode = _loadSceneAsap;
            gameModule.AddSystem(loadSceneSystem);
            gameModule.AddSystem(new InitTriggerObjectManagerSystem(contexts));
            gameModule.AddSystem(new GameObjectRecordSystem(contexts));
            gameModule.AddSystem(new ClientScenePostprocessorSystem(contexts.session.commonSession));
            gameModule.AddSystem(new TerrainRendererInitSystem(contexts.session.commonSession,
                                                               contexts.session.clientSessionObjects));
            gameModule.AddSystem(new ClientWorldShiftPostProcessSystem(contexts.session.commonSession));

            gameModule.AddSystem(new TerrainDataLoadSystem(this, contexts));

            return(gameModule);
        }