func DrawGames(columns int, rows int, games []game.Game) {
	fmt.Printf("\033[0;0H")
	for row := 0; row < rows; row++ {
		horizontalWindows := make([]string, columns)
		for column := 0; column < columns; column++ {
			index := row*columns + column
			horizontalWindows[column] = drawGame(games[index], fmt.Sprintf("Neural Network: %d", index))
		}
		fmt.Print(mergeBoardsHorizontally(" ", horizontalWindows...))
		fmt.Println()
	}
}
// DrawGames draws an array of games in rows x columns grid layout
DrawGames draws an array of games in rows x columns grid layout
// DrawGames draws an array of games in rows x columns grid layout
func DrawGames(columns int, rows int, games []game.Game) {
	fmt.Printf("\033[0;0H")
	for row := 0; row < rows; row++ {
		horizontalWindows := make([]string, columns)
		for column := 0; column < columns; column++ {
			index := row*columns + column
			horizontalWindows[column] = drawGame(games[index], fmt.Sprintf("Neural Network: %d", index))
		}
		fmt.Print(mergeBoardsHorizontally(" ", horizontalWindows...))
		fmt.Println()
	}
}
func DrawGames ( columns int , rows int , games [ ] game . Game ) { fmt . Printf ( " \033 " ) for row := 0 ; row < rows ; row ++ { horizontalWindows := make ( [ ] string , columns ) for column := 0 ; column < columns ; column ++ { index := row * columns + column horizontalWindows [ column ] = drawGame ( games [ index ] , fmt . Sprintf ( " " , index ) ) } fmt . Print ( mergeBoardsHorizontally ( " " , horizontalWindows ... ) ) fmt . Println ( ) } }
DrawGames draws an array of games in rows x columns grid layout
DrawGames draws an array of games in rows x columns grid layout