public void DestroyTiles(FTileData tileData) { Debug.Log(tileData.boardPosition); /* * xxxxxxxxx * xxx0xxxx y+1 * 0 x-1 xx01000xxxx x +1 * xxx0xxxx y-1 * xxxxxxxx0 * * */ //for para la derecha for (int x = tileData.boardPosition.x; x < boardSize.x; x++) { //safe check // null check if (board[x, tileData.boardPosition.y] == null) { break; } if (board[x, tileData.boardPosition.y].tileIndex != tileData.tileIndex) { break; } if (board[x, tileData.boardPosition.y].tileIndex == tileData.tileIndex) { board[x, tileData.boardPosition.y].DestroyTile(); } } //for para la izquierda for (int x = tileData.boardPosition.x; x >= 0; x--) { //safe check // null check if (board[x, tileData.boardPosition.y] == null) { break; } if (board[x, tileData.boardPosition.y].tileIndex != tileData.tileIndex) { break; } if (board[x, tileData.boardPosition.y].tileIndex == tileData.tileIndex) { board[x, tileData.boardPosition.y].DestroyTile(); } } //for para la up for (int y = tileData.boardPosition.y; y < boardSize.y; y++) { //safe check // null check if (board[tileData.boardPosition.x, y] == null) { break; } if (board[tileData.boardPosition.x, y].tileIndex != tileData.tileIndex) { break; } if (board[tileData.boardPosition.x, y].tileIndex == tileData.tileIndex) { board[tileData.boardPosition.x, y].DestroyTile(); } } //for para la izquierda for (int y = tileData.boardPosition.y; y >= 0; y--) { if (board[tileData.boardPosition.x, y] == null) { break; } if (board[tileData.boardPosition.x, y].tileIndex != tileData.tileIndex) { break; } if (board[tileData.boardPosition.x, y].tileIndex == tileData.tileIndex) { board[tileData.boardPosition.x, y].DestroyTile(); } } board[tileData.boardPosition.x, tileData.boardPosition.y].DestroyTile(); }
public void Explode(FTileData tileData) { ///destruye un area alrededor de //bomb tambien tiene tileData.boardPosition }