Example #1
0
        public IEnumerator Init()
        {
            //инициализация глобальных компонентов
            InitGlobal();
            InitWorld();
            InitUI();

            terrain  = scene.AddComponent <MapTerrain>();
            lighting = scene.AddComponent <MapLighting>();
            objects  = scene.AddComponent <MapObjects>();
            sound    = scene.AddComponent <MapSound>();
            test     = scene.AddComponent <MapTest>();

            //компоненты загрузки данных
            MapDataObjects DataObjects = new MapDataObjects(global.map);
            MapDataZones   DataZones   = new MapDataZones(global.map);
            MapDataGround  DataGround  = new MapDataGround(global.map);
            MapDataHeight  DataHeight  = new MapDataHeight(global.map);

            DataObjects.EventErrorFile += NotFoundDataFiles;
            DataZones.EventErrorFile   += NotFoundDataFiles;
            DataGround.EventErrorFile  += NotFoundDataFiles;
            DataHeight.EventErrorFile  += NotFoundDataFiles;

            //инициализация ландшафта
            terrain.Init(Terrain.activeTerrain, DataGround.data, DataHeight.data, DataZones.data);
            //инициализация объектов
            objects.Init(DataObjects.data);
            //инициализация маппинга
            lighting.Init(global.map);
            //инициализация маппинга
            sound.Init(global.map);
            //передача данных в мир
            if (EventDataZones != null)
            {
                EventDataZones(DataZones.data);
            }
            if (EventDataTiles != null)
            {
                EventDataTiles(DataGround.data);
            }

            //чистим данные
            DataObjects = null;
            DataZones   = null;
            DataGround  = null;
            DataHeight  = null;
            System.GC.Collect();

            yield break;
        }
Example #2
0
        public IEnumerator Init()
        {
            //инициализация глобальных компонентов
            InitGlobal();
            InitWorld();
            InitUI();

            terrain		= scene.AddComponent<MapTerrain>();
            lighting	= scene.AddComponent<MapLighting>();
            objects		= scene.AddComponent<MapObjects>();
            sound		= scene.AddComponent<MapSound>();
            test		= scene.AddComponent<MapTest>();

            //компоненты загрузки данных
            MapDataObjects	DataObjects	= new MapDataObjects	(global.map);
            MapDataZones	DataZones	= new MapDataZones		(global.map);
            MapDataGround	DataGround	= new MapDataGround		(global.map);
            MapDataHeight	DataHeight	= new MapDataHeight		(global.map);

            DataObjects.EventErrorFile	+= NotFoundDataFiles;
            DataZones.EventErrorFile	+= NotFoundDataFiles;
            DataGround.EventErrorFile	+= NotFoundDataFiles;
            DataHeight.EventErrorFile	+= NotFoundDataFiles;

            //инициализация ландшафта
            terrain.	Init(Terrain.activeTerrain, DataGround.data, DataHeight.data, DataZones.data);
            //инициализация объектов
            objects.	Init(DataObjects.data);
            //инициализация маппинга
            lighting.	Init(global.map);
            //инициализация маппинга
            sound.		Init(global.map);
            //передача данных в мир
            if (EventDataZones!=null)
                EventDataZones ( DataZones.data );
            if (EventDataTiles!=null)
                EventDataTiles ( DataGround.data );

            //чистим данные
            DataObjects		= null;
            DataZones		= null;
            DataGround		= null;
            DataHeight		= null;
            System.GC.Collect();

            yield break;
        }
Example #3
0
        IEnumerator Start()
        {
            InitWorld();
            InitObjects();
            InitSMD();

            yield return StartCoroutine("SearchMe");

            if (world!=null) {
                mobject = world.GetComponent<MapObjects>();
                mobject.EventUpdateLOD += UpdateLOD;
            }

            if (objects!=null && me!=null)
                me.EventStartMoveTo += StartMoveTo;

            UpdateLOD();
            Check();

            yield break;
        }