void CreateNewTilesAndMoveThemDownToLastTopLayer(int y) { if (y == mapDimentions.height - 1) { for (int x = 0; x < mapDimentions.width; x++) { Vector3Int actualPosition = new Vector3Int(x, mapDimentions.height - 1, 0); Vector3Int topPosition = new Vector3Int(x, mapDimentions.height, 0); if (!tilemap.HasTile(actualPosition)) { tilemap.SetTile(topPosition, tiles[Random.Range(0, tiles.Length)]); tilemapManager.StartCoroutine(ChangeTilePositionWithLerp(actualPosition, topPosition)); } } } }
public void InitCreatorAndMover(Tilemap tilemap, MapDimentions mapDimentions) { this.mapDimentions = mapDimentions; this.tilemap = tilemap; tilemapManager = tilemap.GetComponent <TilemapManager>(); this.mapInfo = tilemap.GetComponent <Match3TileMapInformation>(); this.mapInfo.InitMapToCreateAndMove(new Vector3Int(0, 0, 0), tilemap, mapDimentions, tiles); tilemapManager.StartCoroutine(ChangeObliqueMoveDirection()); }