Joguinho utilizando java.swing

Olá, o caso é o seguinte eu estou fazendo um programa que é assim,

1.Possui número de 1 a 12.
2.O computador gera uma sequência aleatória com esse números
3.O jogado observa a sequêcia e tenta fazê-la.

Eu já comsegui contruir a interface gráfica, porém não sei como fazer para o programa analisar os números clicados pelo usuario e compará-los com os números riado aleatóriamente pelo programa.

Alguém poderia me ajudar.

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Random;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class GameControl {
	
	protected JButton btns[];
	protected JButton bControls[];
	protected int idxOK;
	ArrayList<Integer> rndList;
	
	public GameControl() {

		FormGame game = new FormGame();
		game.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		game.pack();
		game.setSize(300, 280); // set frame size
		game.setVisible(true); // display frame
		this.btns = game.getFormButtons();
		
		ActionListenerControl acontrol = new ActionListenerControl();
		bControls = game.getButtonControl();
		bControls[0].addActionListener(acontrol);
		bControls[1].addActionListener(acontrol);
		
		rndList = new ArrayList<Integer>();
		
		// criar classe interna para tratamento dos botoes de controle
		
	}

	public static void sleep(int n){
		try {
			Thread.sleep(n);
		} catch (InterruptedException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	public void randomSequence(int max) {
		Random rnd = new Random();
		rndList.clear();
		idxOK=0;
		for (int i = 0; i < max; i++) {
			int random = rnd.nextInt(12);
			rndList.add(random);
		}	
	}
	public class ActionListenerControl implements ActionListener {
		
		public void actionPerformed(ActionEvent e) {
			JButton btn = (JButton)e.getSource();
			
			if(btn.getText() == "Inicio") {
				randomSequence(5);
				Iterator <Integer> iterator = rndList.iterator();
				while (iterator.hasNext()) {
					System.out.println("Seq: " + iterator.next());
				}
				AnimationButton a = new AnimationButton();
				a.start();
			}else{rndList.clear();}
		}
		
		
		class AnimationButton extends Thread{
			public void run(){
				Iterator <Integer> i= rndList.iterator();
				while(i.hasNext()){
					int n  = (int)i.next();
					btns[n].setBackground(Color.RED);
					try {
						sleep(400);
					} catch (InterruptedException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
					btns[n].setBackground(Color.GREEN);
					try {
						sleep(400);
					} catch (InterruptedException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
					
				}
				JOptionPane.showMessageDialog(null, "Agora e sua vez");
			}
		}
		
	}
	
	public class ActionListenerForm implements ActionListener {
		
		public void actionPerformed(ActionEvent arg0){
			if(!rndList.isEmpty()){
				
				//Parte que analisará se os número clicados pelo usúario estão iguais aos
				//criados pelo computador.
				
			}else{
				JOptionPane.showMessageDialog(null, "Aperte o Botão Iniciar");
			}
			
			
		}
	}
	
}

Agradeço. :wink:

Bem, guarde as ações do usuario em uma lista por exemplo depois compare-a com o que o computador gerou.