protected override void OnStartRunning()
 {
     m_gameSettings      = GetSingleton <GameSettingsSingletonComponent>();
     m_quadTreeLevelInfo = new QuadTreeLevelInfo(m_gameSettings.planetSpawnProbability,
                                                 20,
                                                 10,
                                                 UnityEngine.Random.Range(0, 100),
                                                 m_gameSettings.specialModeVisiblePlanetsCount,
                                                 m_gameSettings.minRating,
                                                 m_gameSettings.maxRating);
 }
Example #2
0
        protected override void OnStartRunning()
        {
            m_gameSettings = GetSingleton <GameSettingsSingletonComponent>();

            for (int i = 0; i < 120; i++)
            {
                var tm = GameObject.Instantiate(labelPrefab, Vector3.zero, Quaternion.identity);
                tm.gameObject.SetActive(false);
                m_labelBuffer.Add(tm);
            }

            m_shipText = GameObject.Instantiate(labelPrefab, Vector3.zero, Quaternion.identity);
        }
        void Awake()
        {
            entityManager = World.Active.EntityManager;
            Entity entity = entityManager.CreateEntity(
                ComponentType.ReadOnly <GameSettingsSingletonComponent>(),
                ComponentType.ReadWrite <ProxyInfo>()
                );
            var gameSettings = new GameSettingsSingletonComponent
            {
                maxCellsVisibleSize = maxCellsVisibleSize,
                minCellsVisibleSize = minCellsVisibleSize,

                minRating = minRating,
                maxRating = maxRating,

                specialModeVisiblePlanetsCount = specialModeVisiblePlanetsCount,

                minVisiblePlanetScale  = minVisiblePlanetScale,
                minShipScale           = minShipScale,
                planetSpawnProbability = planetSpawnProbability
            };
            var proxyInfo = new ProxyInfo
            {
                shipPosition   = new int2(2, 2),
                visibleRectInt = new RectInt(2, 2, 5, 5),
                zoom           = 5,
                shipValue      = UnityEngine.Random.Range(minRating, maxRating)
            };
            var spawnSystem = World.Active.GetOrCreateSystem <SpawnPlanetsSystem>();

            spawnSystem.shipMaterial   = this.shipMaterial;
            spawnSystem.planetMaterial = this.planetMaterial;
            spawnSystem.shipMesh       = CreateMesh(2, 2);
            spawnSystem.planetMesh     = CreateMesh(2, 1);
            var quadSystem = World.Active.GetOrCreateSystem <ProcessQuadTreeLevelInfoSystem>();

            quadSystem.SetSingleton(gameSettings);
            quadSystem.SetSingleton(proxyInfo);
            var updatePlanetPositionsByZoomSystem = World.Active.GetOrCreateSystem <UpdatePlanetPositionsByZoomSystem>();

            updatePlanetPositionsByZoomSystem.labelPrefab = labelPrefab;
        }