rendered paste bodyimport java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class WordSearch extends JFrame implements ActionListener {
private JMenuBar menuBar;
private JButton menuItemNG,menuItemE,menuItemS;
private JPanel grid;
private JButton[][] b;
private JOptionPane scorex;
private int counter,p1s = 0,p2s = 0,stopGame = 0;
// The Frame
public WordSearch(){
super("Word Search");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
b = new JButton[15][15];
this.setJMenuBar(theMenuBar());
drawTheGridPanel();
setTheLetters();
setLocationRelativeTo(null);
setSize(800, 800);
setVisible(true);
//setResizable(false);
}
// The Menu
public JMenuBar theMenuBar() {
menuBar = new JMenuBar();
menuItemNG = new JButton("New Game");
menuItemNG.setFont(new Font("Tahoma",Font.BOLD,12));
menuItemNG.setBackground(new Color(225,225,225));
menuBar.add(menuItemNG);
menuItemNG.addActionListener(this);
menuItemE = new JButton("Quit");
menuItemE.setFont(new Font("Tahoma",Font.BOLD,12));
menuItemE.setBackground(new Color(225,225,225));
menuBar.add(menuItemE);
menuItemE.addActionListener(this);
return menuBar;
}
// The Grid
public void drawTheGridPanel() {
grid = new JPanel(new GridLayout(15,15));
for (int i = 0; i < 15; i++){
for (int j = 0; j < 15; j++){
b[i][j] = new JButton("");
b[i][j].setFont(new Font("Comic Sans MS",Font.BOLD,14));
b[i][j].setForeground(new Color(105,35,97));
b[i][j].setBackground(new Color(255,255,255));
grid.add(b[i][j]);
b[i][j].addActionListener(this);
}
}
this.add(grid);
}
public void setTheLetters(){
b[0][0].setText("G");
b[0][1].setText("N");
b[0][2].setText("I");
b[0][3].setText("W");
b[0][4].setText("S");
b[0][5].setText("C");
b[0][6].setText("L");
b[0][7].setText("A");
b[0][8].setText("S");
b[0][9].setText("S");
b[0][10].setText("T");
b[0][11].setText("R");
b[0][12].setText("I");
b[0][13].setText("N");
b[0][14].setText("G");
b[1][0].setText("A");
b[1][1].setText("J");
b[1][2].setText("E");
b[1][3].setText("V");
b[1][4].setText("A");
b[1][5].setText("V");
b[1][6].setText("N");
b[1][7].setText("T");
b[1][8].setText("U");
b[1][9].setText("C");
b[1][10].setText("F");
b[1][11].setText("I");
b[1][12].setText("N");
b[1][13].setText("A");
b[1][14].setText("L");
b[2][0].setText("P");
b[2][1].setText("V");
b[2][2].setText("R");
b[2][3].setText("U");
b[2][4].setText("O");
b[2][5].setText("O");
b[2][6].setText("I");
b[2][7].setText("O");
b[2][8].setText("W");
b[2][9].setText("T");
b[2][10].setText("H");
b[2][11].setText("R");
b[2][12].setText("E");
b[2][13].setText("A");
b[2][14].setText("D");
b[3][0].setText("A");
b[3][1].setText("T");
b[3][2].setText("A");
b[3][3].setText("I");
b[3][4].setText("N");
b[3][5].setText("B");
b[3][6].setText("E");
b[3][7].setText("M");
b[3][8].setText("I");
b[3][9].setText("O");
b[3][10].setText("G");
b[3][11].setText("G");
b[3][12].setText("C");
b[3][13].setText("T");
b[3][14].setText("L");
b[4][0].setText("C");
b[4][1].setText("C");
b[4][2].setText("D");
b[4][3].setText("J");
b[4][4].setText("J");
b[4][5].setText("I");
b[4][6].setText("A");
b[4][7].setText("L");
b[4][8].setText("Y");
b[4][9].setText("T");
b[4][10].setText("R");
b[4][11].setText("I");
b[4][12].setText("C");
b[4][13].setText("N");
b[4][14].setText("T");
b[5][0].setText("K");
b[5][1].setText("E");
b[5][2].setText("D");
b[5][3].setText("O");
b[5][4].setText("C");
b[5][5].setText("E");
b[5][6].setText("T");
b[5][7].setText("Y");
b[5][8].setText("B");
b[5][9].setText("E");
b[5][10].setText("P");
b[5][11].setText("H");
b[5][12].setText("A");
b[5][13].setText("E");
b[5][14].setText("B");
b[6][0].setText("A");
b[6][1].setText("J");
b[6][2].setText("I");
b[6][3].setText("S");
b[6][4].setText("R");
b[6][5].setText("D");
b[6][6].setText("Q");
b[6][7].setText("N");
b[6][8].setText("C");
b[6][9].setText("A");
b[6][10].setText("L");
b[6][11].setText("E");
b[6][12].setText("T");
b[6][13].setText("V");
b[6][14].setText("O");
b[7][0].setText("G");
b[7][1].setText("B");
b[7][2].setText("U");
b[7][3].setText("T");
b[7][4].setText("Y");
b[7][5].setText("O");
b[7][6].setText("A");
b[7][7].setText("I");
b[7][8].setText("O");
b[7][9].setText("R");
b[7][10].setText("I");
b[7][11].setText("I");
b[7][12].setText("C");
b[7][13].setText("E");
b[7][14].setText("O");
b[8][0].setText("E");
b[8][1].setText("O");
b[8][2].setText("S");
b[8][3].setText("L");
b[8][4].setText("U");
b[8][5].setText("S");
b[8][6].setText("R");
b[8][7].setText("R");
b[8][8].setText("N");
b[8][9].setText("C");
b[8][10].setText("W");
b[8][11].setText("R");
b[8][12].setText("H");
b[8][13].setText("X");
b[8][14].setText("L");
b[9][0].setText("C");
b[9][1].setText("H");
b[9][2].setText("A");
b[9][3].setText("R");
b[9][4].setText("A");
b[9][5].setText("C");
b[9][6].setText("T");
b[9][7].setText("E");
b[9][8].setText("R");
b[9][9].setText("T");
b[9][10].setText("I");
b[9][11].setText("S");
b[9][12].setText("A");
b[9][13].setText("W");
b[9][14].setText("E");
b[10][0].setText("M");
b[10][1].setText("P");
b[10][2].setText("S");
b[10][3].setText("E");
b[10][4].setText("R");
b[10][5].setText("V");
b[10][6].setText("L");
b[10][7].setText("E");
b[10][8].setText("T");
b[10][9].setText("A");
b[10][10].setText("E");
b[10][11].setText("T");
b[10][12].setText("K");
b[10][13].setText("V");
b[10][14].setText("A");
b[11][0].setText("S");
b[11][1].setText("W");
b[11][2].setText("I");
b[11][3].setText("T");
b[11][4].setText("C");
b[11][5].setText("H");
b[11][6].setText("G");
b[11][7].setText("W");
b[11][8].setText("M");
b[11][9].setText("Q");
b[11][10].setText("Y");
b[11][11].setText("G");
b[11][12].setText("A");
b[11][13].setText("F");
b[11][14].setText("N");
b[12][0].setText("A");
b[12][1].setText("P");
b[12][2].setText("P");
b[12][3].setText("L");
b[12][4].setText("E");
b[12][5].setText("T");
b[12][6].setText("D");
b[12][7].setText("O");
b[12][8].setText("H");
b[12][9].setText("T");
b[12][10].setText("E");
b[12][11].setText("M");
b[12][12].setText("E");
b[12][13].setText("T");
b[12][14].setText("U");
b[13][0].setText("A");
b[13][1].setText("W");
b[13][2].setText("T");
b[13][3].setText("B");
b[13][4].setText("E");
b[13][5].setText("A");
b[13][6].setText("N");
b[13][7].setText("S");
b[13][8].setText("R");
b[13][9].setText("O");
b[13][10].setText("F");
b[13][11].setText("E");
b[13][12].setText("R");
b[13][13].setText("R");
b[13][14].setText("S");
b[14][0].setText("O");
b[14][1].setText("V");
b[14][2].setText("E");
b[14][3].setText("R");
b[14][4].setText("L");
b[14][5].setText("O");
b[14][6].setText("A");
b[14][7].setText("D");
b[14][8].setText("I");
b[14][9].setText("N");
b[14][10].setText("G");
b[14][11].setText("G");
b[14][12].setText("B");
b[14][13].setText("T");
b[14][14].setText("L");
}
// Checking if button is filled
public boolean isX(JButton btt){
return (btt.getText().equalsIgnoreCase("X"));
}
public boolean isO(JButton btt){
return (btt.getText().equalsIgnoreCase("O"));
}
public char isWin(){
if ((isX(b[0][0]) && isX(b[0][1]) && isX(b[0][2])) ||
(isX(b[1][0]) && isX(b[1][1]) && isX(b[1][2])) ||
(isX(b[2][0]) && isX(b[2][1]) && isX(b[2][2])) ||
(isX(b[0][0]) && isX(b[1][0]) && isX(b[2][0])) ||
(isX(b[0][1]) && isX(b[1][1]) && isX(b[2][1])) ||
(isX(b[0][2]) && isX(b[1][2]) && isX(b[2][2])) ||
(isX(b[0][0]) && isX(b[1][1]) && isX(b[2][2])) ||
(isX(b[0][2]) && isX(b[1][1]) && isX(b[2][0]))) return 'x';
if ((isO(b[0][0]) && isO(b[0][1]) && isO(b[0][2])) ||
(isO(b[1][0]) && isO(b[1][1]) && isO(b[1][2])) ||
(isO(b[2][0]) && isO(b[2][1]) && isO(b[2][2])) ||
(isO(b[0][0]) && isO(b[1][0]) && isO(b[2][0])) ||
(isO(b[0][1]) && isO(b[1][1]) && isO(b[2][1])) ||
(isO(b[0][2]) && isO(b[1][2]) && isO(b[2][2])) ||
(isO(b[0][0]) && isO(b[1][1]) && isO(b[2][2])) ||
(isO(b[0][2]) && isO(b[1][1]) && isO(b[2][0]))) return 'o';
return 'a';
}
// Event Handling
public void actionPerformed(ActionEvent e) {
// Menu Items
if (e.getSource() == menuItemNG ) {
stopGame = 0;
for (int i = 0; i < 15; i++){
for (int j = 0; j < 15; j++){
b[i][j].setBackground(new Color(255,255,255));;
}
}
}
if (e.getSource() == menuItemE ) System.exit(0);
// Grid Buttons
for (int i = 0; i < 15; i++){
for (int j = 0; j < 15; j++){
if (e.getSource().equals(b[i][j]) && (stopGame != 1) && (counter != 2)){
b[i][j].setBackground(new Color(200,150,50));
counter++;
} else if (isWord){
}
if (isWin() == 'x'){
JOptionPane.showMessageDialog(this,"X wins");
stopGame = 1;
p1s++;
} else if (isWin() == 'o'){
JOptionPane.showMessageDialog(this,"O wins");
stopGame = 1;
p2s++;
}
}
}
}
}