Exemplo n.º 1
0
 public void Init(AsteroidModel asteroidModel, Vector2 movePosition, DestructionAsteroidView destructionAsteroidView,
                  AsteroidsType asteroidsType, Action <Transform, AsteroidsType> spawnSmallAsteroid)
 {
     _speed                   = UnityEngine.Random.Range(-asteroidModel.ForceRange, asteroidModel.ForceRange) + asteroidModel.MiddleForce;
     _movePosition            = movePosition;
     _destructionAsteroidView = destructionAsteroidView;
     _asteroidType            = asteroidsType;
     _spawnSmallAsteroid      = spawnSmallAsteroid;
 }
Exemplo n.º 2
0
    public AsteroidSpawner(SpawnerModel spawnerModel, AsteroidModel asteroidModel, Dictionary <AsteroidsType, AsteroidView> asteroidsView,
                           DestructionAsteroidView destructionAsteroidView)
    {
        _asteroidModel           = asteroidModel;
        _asteroidsView           = asteroidsView;
        _destructionAsteroidView = destructionAsteroidView;
        _spawnerModel            = spawnerModel;
        _camera = Camera.main;

        InitSpawnZonesPosition();
    }
Exemplo n.º 3
0
    public AsteroidsPool(AsteroidModel asteroidModel, List <AsteroidView> asteroidsView, Transform poolsParent,
                         SpawnerModel spawnerModel, DestructionAsteroidView destructionAsteroidView)
    {
        PoolManager.SetRoot(poolsParent);
        foreach (var asterod in asteroidsView)
        {
            PoolManager.WarmPool(asterod.gameObject, asteroidModel.AsteroidsCountInPool);
        }
        PoolManager.WarmPool(destructionAsteroidView.gameObject, 5);

        _spawner = new AsteroidSpawner(spawnerModel, asteroidModel, GetAsteroidsByType(asteroidsView), destructionAsteroidView);
    }