Jogo da velha

preciso criar um computador com três níveis de dificuldade nessa interface gráfica

meu codigo:
package JogoDaVelha;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.Font;
import java.awt.event.ActionListener;

import javax.swing.JOptionPane;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingConstants;
import javax.swing.JLabel;

public class JogoDaVelha extends JFrame{

ImageIcon iconCirc = new ImageIcon(getClass().getResource("circulo.png"));
ImageIcon iconX = new ImageIcon(getClass().getResource("X.png"));

JPanel pTela = new JPanel(new GridLayout(3, 3, 10, 10));


Bloco[] blocos = new Bloco[9];

int partidas = 0;

final int JOGADOR_1 = 1;
final int JOGADOR_2 = 2;		

int JVez = JOGADOR_1;

JLabel Linfo = new JLabel("Jogador "+JOGADOR_1);
		
  public JogoDaVelha(){
	  configurarjanela();
	  configurarTela();
}
  
  public void configurarTela() {
	   add(BorderLayout.CENTER,pTela);
	   add(BorderLayout.NORTH,Linfo);
	   pTela.setBackground(Color.BLACK);
	   Linfo.setFont(new Font("Arial" ,Font.BOLD,30));
	   Linfo.setForeground(new Color(50,200,50));
	   Linfo.setHorizontalAlignment(SwingConstants.CENTER);
	   
	   for(int i=0;i<9;i++) {
			Bloco bloco = new Bloco();
			blocos[i] = bloco;
			pTela.add(bloco);
	   }
	   
  }
  
  public void mudarVez(){
		if(JVez==1) {
			JVez=2;
			Linfo.setText("Jogador 2");
			Linfo.setForeground(Color.RED);
		} else {
			JVez=1;
			Linfo.setText("Jogador 1");
			Linfo.setForeground(new Color(50,200,50));
		}
	}
 
  public boolean testVic(int joga) {
	  if(blocos[0].quem==joga && blocos[1].quem==joga && blocos[2].quem==joga) {
		  return true;
	  }
	  if(blocos[3].quem==joga && blocos[4].quem==joga && blocos[5].quem==joga) {
		  return true;
	  }
	  if(blocos[6].quem==joga && blocos[7].quem==joga && blocos[8].quem==joga) {
		  return true;
	  }
	  if(blocos[0].quem==joga && blocos[3].quem==joga && blocos[6].quem==joga) {
		  return true;
	  }
	  if(blocos[1].quem==joga && blocos[4].quem==joga && blocos[7].quem==joga) {
		  return true;
	  }
	  if(blocos[2].quem==joga && blocos[5].quem==joga && blocos[8].quem==joga) {
		  return true;
	  }
	  if(blocos[0].quem==joga && blocos[4].quem==joga && blocos[8].quem==joga) {
		  return true;
	  }
	  if(blocos[6].quem==joga && blocos[4].quem==joga && blocos[2].quem==joga) {
		  return true;
	  }
	  return false;
	  
	 }


public void configurarjanela() {
	setTitle("Jogo Da Velha");
	setDefaultCloseOperation(EXIT_ON_CLOSE);
	setSize(600,600);
	setLocationRelativeTo(null);
	setVisible(true);
	
}


public static void main(String[] args) {
	new JogoDaVelha();
}

public class Bloco extends JButton{
	int quem = 0;
	public Bloco() {
		setBackground(Color.WHITE);
		addActionListener(e->{
			
			if(quem==0) {
				if(JVez==JOGADOR_1) {
					setIcon(iconCirc);
					quem = JOGADOR_1;
				} else {
					setIcon(iconX);
					quem = JOGADOR_2;
				}
				if(testVic(JVez)) {
					JOptionPane.showMessageDialog(null, "Jogador "+ JVez+ " Ganhou!");
					System.exit(0);
				}
				 partidas++;
				 if(partidas==9) {
					 JOptionPane.showMessageDialog(null, "Deu Velha :(");
				 }
				 mudarVez();
			}
		
		});
	}
}

}