Example #1
0
        public void Prepare()
        {
            _controllerFactor = new BombsFactory(_prefabsPoolingService);
            MainSceneConfig sceneConfig = _configStorage.Get <MainSceneConfig>();

            _bombIds = sceneConfig.BombIds;
            float totalRarity = 0;

            foreach (int bombId in _bombIds)
            {
                totalRarity += _configStorage.Get <BombConfig>(bombId).Rarity;
            }

            float currentRarity = 0;

            _bombsRarity = new Dictionary <float, int>(_bombIds.Length);
            foreach (int bombId in _bombIds)
            {
                _bombsRarity[currentRarity] = bombId;
                currentRarity += _configStorage.Get <BombConfig>(bombId).Rarity / totalRarity;
            }

            _maxCount     = sceneConfig.MaxBombs;
            _spawnTimeout = sceneConfig.BombSpawnTimeout;
            _spawnArea    = sceneConfig.BombSpawnArea;
        }
Example #2
0
        public void Prepare()
        {
            _charControllerFactory = new CharacterFactory(_prefabsPoolingService);
            MainSceneConfig sceneConfig = _configStorage.Get <MainSceneConfig>();

            _characterIds  = sceneConfig.CharacterIds;
            _spawnTimeout  = sceneConfig.CharsSpawnTimeout;
            _maxChars      = sceneConfig.MaxChars;
            _charSpawnArea = sceneConfig.CharSpawnArea;
        }