private void Fill() { var size = _contexts.config.mapSize.value; for (int row = 0; row < size.y; row++) { for (int column = 0; column < size.x; column++) { float random = Random.Range(0f, 1f); if (random < 0.1f) { if (random < 0.05f) { if (random < 0.005f) { _elementService.CreateExsplosiveBlock(new GridPosition(column, row)); } else { _elementService.CreateNotMovableBlock(new GridPosition(column, row)); } } else { _elementService.CreateMovableBlock(new GridPosition(column, row)); } } else { _elementService.CreateRandomElement(new GridPosition(column, row)); } } } }
protected override void Execute(List <GameEntity> entities) { var size = _contexts.config.mapSize.value; for (int x = 0; x < size.x; x++) { var position = new GridPosition(x, size.y - 1); var candidate = _contexts.game.GetEntityWithPosition(position); if (candidate == null) { _elementService.CreateRandomElement(position); } } }