rendered paste body
import java.awt.GridLayout;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JPanel;
public class Spillbrett extends JPanel {
private Felt[][]temp = new Felt[4][4];
private Brikkesamling samling = new Brikkesamling();
private Felt[] foo = new Felt[2];
public Spillbrett() {
this.setLayout(new GridLayout(4,4));
int index=0;
List foo = samling.test();
samling.test();
for (int rad = 0; rad<temp.length; rad++) {
for (int kolonne = 0; kolonne < temp[rad].length; kolonne++) {
temp[rad][kolonne] = new Felt((Brikke)foo.get(index));
temp[rad][kolonne].addMouseListener(new FeltLytter(this, temp[rad][kolonne]));
this.add(temp[rad][kolonne]);
index++;
}
}
this.setVisible(true);
}
/*
* Metode som tar inn to felter og sjekker om deres respektive brikker
* er like =)
*/
public void valgtFelt(Felt felt) {
if(foo[0]==null) {
foo[0] = felt;
}
else if(foo[1]==null) {
foo[1]=felt;
if(foo[0].getBrikke().equals(foo[1].getBrikke())) {
System.out.println("Like");
foo[1].getBrikke().gjemBrikke();
}
else {
// Gjør felt1 og felt2 usynlige igjen.
foo[0].getBrikke().gjemBrikke();
foo[1].getBrikke().gjemBrikke();
}
// "Tømmer" arrayen så den er klar for nytt input.
for(int i=0;i<foo.length;i++) {
foo[i]=null;
}
}
}
public class FeltLytter implements MouseListener{
private Spillbrett mittSpillbrett;
private Felt mittFelt;
private int klikkteller=0;
public FeltLytter(Spillbrett brett, Felt felt){
this.mittSpillbrett = brett;
this.mittFelt = felt;
}
public void mouseClicked(MouseEvent arg0) {
klikkteller++;
mittFelt.visFelt();
mittSpillbrett.valgtFelt(mittFelt);
}
public void mousePressed(MouseEvent arg0) {
// TODO Auto-generated method stub
}
public void mouseReleased(MouseEvent arg0) {
// TODO Auto-generated method stub
}
public void mouseEntered(MouseEvent arg0) {
// TODO Auto-generated method stub
}
public void mouseExited(MouseEvent arg0) {
// TODO Auto-generated method stub
}
public int getKlikkteller() {
return klikkteller;
}
public void setKlikkteller(int klikkteller) {
this.klikkteller = klikkteller;
}
}
}