Skip to content

Commit d0df20e

Browse files
authored
Uploaded
1 parent e647eec commit d0df20e

File tree

5 files changed

+530
-0
lines changed

5 files changed

+530
-0
lines changed

Frame.java

+139
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
package Project.Tic_Tac_Toa;
2+
3+
import javax.swing.*;
4+
import javax.swing.border.Border;
5+
import java.awt.*;
6+
7+
public class Frame extends JFrame {
8+
9+
private int score1 = 0;
10+
private int score2 = 0;
11+
12+
13+
GamePanel gamePanel;
14+
JPanel panel1;
15+
JPanel panel2;
16+
JPanel panel3;
17+
JPanel panel4;
18+
JPanel panel5;
19+
20+
Label label;
21+
JButton buttonNext;
22+
23+
Frame() {
24+
25+
Border border1 = BorderFactory.createDashedBorder(new Color(0xFDD900), 3,2,1,true);
26+
27+
gamePanel = new GamePanel();
28+
panel1 = new JPanel();
29+
panel2 = new JPanel();
30+
panel3 = new JPanel();
31+
panel4 = new JPanel();
32+
panel5 = new JPanel();
33+
34+
label = new Label();
35+
36+
buttonNext = new JButton("Next Round..??");
37+
// buttonNext.setBounds(500,200,200,60);
38+
buttonNext.setPreferredSize(new Dimension(230,90));
39+
buttonNext.setHorizontalTextPosition(JButton.CENTER);
40+
buttonNext.setVerticalTextPosition(JButton.CENTER);
41+
buttonNext.setFocusable(false);
42+
buttonNext.setFont(new Font("Algerian",Font.BOLD,25));
43+
buttonNext.setBackground(new Color(0xEC8E4C));
44+
buttonNext.setForeground(new Color(0xFFFFFF));
45+
buttonNext.setBorder(border1);
46+
47+
ImageIcon image = new ImageIcon("headphone.png");
48+
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
49+
//this.setBackground(new Color(0x000000));
50+
this.setTitle("Tic-Tac-Toa");
51+
//this.setSize(900,900);
52+
this.setBounds(500,100,900,900);
53+
this.setIconImage(image.getImage());
54+
this.setLayout(new BorderLayout(6,6));
55+
//this.setBackground(new Color(0x000000));
56+
this.setResizable(false);
57+
58+
59+
60+
panel3.setLayout(null);
61+
panel4.setLayout(null);
62+
panel5.setLayout(null);
63+
64+
65+
panel1.add(label.labelTop);
66+
67+
68+
panel2.add(label.label1);
69+
panel2.add(label.label2);
70+
71+
panel3.add(label.labelLeft1);
72+
panel3.add(label.labelLeft2);
73+
panel3.add(label.labelLeftScore);
74+
75+
panel4.add(label.labelRight1);
76+
panel4.add(label.labelRight2);
77+
panel4.add(label.labelRightScore);
78+
79+
panel5.add(label.labelWin1);
80+
panel5.add(label.labelWin2);
81+
panel5.add(label.labelWin3);
82+
83+
84+
85+
panel1.setBackground(new Color(0xFC5112));
86+
panel2.setBackground(new Color(0xE30F0F));
87+
panel3.setBackground(new Color(0xD0FDD20A, true));
88+
panel4.setBackground(new Color(0xD0FDD20A, true));
89+
90+
91+
92+
panel1.setPreferredSize(new Dimension(100,200));
93+
panel2.setPreferredSize(new Dimension(100,150));
94+
panel3.setPreferredSize(new Dimension(180,100));
95+
panel4.setPreferredSize(new Dimension(180,100));
96+
97+
98+
this.add(panel1,BorderLayout.NORTH);
99+
this.add(panel2,BorderLayout.SOUTH);
100+
this.add(panel3,BorderLayout.WEST);
101+
this.add(panel4,BorderLayout.EAST);
102+
this.add(gamePanel.panel1,BorderLayout.CENTER);
103+
104+
105+
this.setVisible(true);
106+
107+
//
108+
// while (true) {
109+
//
110+
// try {
111+
// label.labelTop.setVisible(true);
112+
// Thread.sleep(800);
113+
// label.labelTop.setVisible(false);
114+
// Thread.sleep(500);
115+
//
116+
// } catch (InterruptedException e) {
117+
// e.printStackTrace();
118+
// }
119+
// }
120+
121+
122+
}
123+
124+
public void setScore1(int score1) {
125+
this.score1 = score1;
126+
}
127+
public void setScore2(int score2) {
128+
this.score2 = score2;
129+
}
130+
131+
public int getScore1() {
132+
return score1;
133+
}
134+
public int getScore2() {
135+
return score2;
136+
}
137+
138+
139+
}

GamePanel.java

+112
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
package Project.Tic_Tac_Toa;
2+
3+
import javax.swing.*;
4+
import java.awt.*;
5+
public class GamePanel {
6+
7+
private int win = 0;
8+
private int count = 0;
9+
10+
JPanel panel1 = new JPanel();
11+
JButton[] buttons = new JButton[9];
12+
13+
14+
GamePanel() {
15+
16+
panel1.setBackground(new Color(0x4F4D4D));
17+
panel1.setPreferredSize(new Dimension(400,400));
18+
panel1.setLayout(new GridLayout(3,3,10,10));
19+
20+
21+
for (int i=0; i<buttons.length; i++) {
22+
buttons[i] = new JButton();
23+
panel1.add(buttons[i]);
24+
buttons[i].setFocusable(false);
25+
buttons[i].setFont(new Font("Algerian",Font.BOLD,90));
26+
buttons[i].setForeground(new Color(0xFFFFFF));
27+
}
28+
29+
30+
31+
}
32+
33+
34+
35+
public int checkPlayer() {
36+
37+
if (getCount()==0)
38+
return 0;
39+
else if (getCount()%2!=0)
40+
return 1;
41+
else
42+
return 2;
43+
}
44+
45+
46+
47+
public void termCount() {
48+
count++;
49+
}
50+
51+
52+
53+
public void checkPlayerWin() {
54+
55+
if ( (this.buttons[0].getText().equals("X") && this.buttons[1].getText().equals("X") && this.buttons[2].getText().equals("X"))||
56+
(this.buttons[3].getText().equals("X") && this.buttons[4].getText().equals("X") && this.buttons[5].getText().equals("X"))||
57+
(this.buttons[6].getText().equals("X") && this.buttons[7].getText().equals("X") && this.buttons[8].getText().equals("X"))||
58+
(this.buttons[0].getText().equals("X") && this.buttons[3].getText().equals("X") && this.buttons[6].getText().equals("X"))||
59+
(this.buttons[1].getText().equals("X") && this.buttons[4].getText().equals("X") && this.buttons[7].getText().equals("X"))||
60+
(this.buttons[2].getText().equals("X") && this.buttons[5].getText().equals("X") && this.buttons[8].getText().equals("X"))||
61+
(this.buttons[0].getText().equals("X") && this.buttons[4].getText().equals("X") && this.buttons[8].getText().equals("X"))||
62+
(this.buttons[2].getText().equals("X") && this.buttons[4].getText().equals("X") && this.buttons[6].getText().equals("X"))
63+
) {
64+
65+
//System.out.println("Player 1 win");
66+
win = 1;
67+
68+
69+
70+
}
71+
72+
else if (
73+
(this.buttons[0].getText().equals("O") && this.buttons[1].getText().equals("O") && this.buttons[2].getText().equals("O"))||
74+
(this.buttons[3].getText().equals("O") && this.buttons[4].getText().equals("O") && this.buttons[5].getText().equals("O"))||
75+
(this.buttons[6].getText().equals("O") && this.buttons[7].getText().equals("O") && this.buttons[8].getText().equals("O"))||
76+
(this.buttons[0].getText().equals("O") && this.buttons[3].getText().equals("O") && this.buttons[6].getText().equals("O"))||
77+
(this.buttons[1].getText().equals("O") && this.buttons[4].getText().equals("O") && this.buttons[7].getText().equals("O"))||
78+
(this.buttons[2].getText().equals("O") && this.buttons[5].getText().equals("O") && this.buttons[8].getText().equals("O"))||
79+
(this.buttons[0].getText().equals("O") && this.buttons[4].getText().equals("O") && this.buttons[8].getText().equals("O"))||
80+
(this.buttons[2].getText().equals("O") && this.buttons[4].getText().equals("O") && this.buttons[6].getText().equals("O"))
81+
) {
82+
83+
//System.out.println("Player 2 win");
84+
win = 2;
85+
}
86+
87+
else if (win==0 && getCount()==9){
88+
// System.out.println("Draw");
89+
win = 3;
90+
}
91+
92+
93+
}
94+
95+
public void setCount(int count) {
96+
this.count = count;
97+
}
98+
99+
public int getCount() {
100+
return count;
101+
}
102+
103+
104+
public int getWin() {
105+
return win;
106+
}
107+
public void setWin(int win) {
108+
this.win = win;
109+
}
110+
111+
112+
}

Label.java

+101
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
package Project.Tic_Tac_Toa;
2+
3+
import javax.swing.*;
4+
import java.awt.*;
5+
6+
public class Label extends JLabel {
7+
8+
JLabel label1 = new JLabel();
9+
JLabel label2 = new JLabel();
10+
JLabel labelTop = new JLabel();
11+
JLabel labelRight1 = new JLabel();
12+
JLabel labelRight2 = new JLabel();
13+
JLabel labelRightScore = new JLabel();
14+
JLabel labelLeft1 = new JLabel();
15+
JLabel labelLeft2 = new JLabel();
16+
JLabel labelLeftScore = new JLabel();
17+
JLabel labelWin1 = new JLabel();
18+
JLabel labelWin2 = new JLabel();
19+
JLabel labelWin3 = new JLabel();
20+
21+
22+
Label() {
23+
24+
25+
label1.setText("Player 1 turn");
26+
label1.setFont(new Font("Algerian",Font.BOLD,50));
27+
label1.setOpaque(false);
28+
label1.setVisible(true);
29+
label1.setPreferredSize(new Dimension(400,150));
30+
31+
label2.setText("Player 2 turn");
32+
label2.setFont(new Font("Algerian",Font.BOLD,50));
33+
label2.setOpaque(false);
34+
label2.setVisible(false);
35+
label2.setPreferredSize(new Dimension(400,150));
36+
37+
labelTop.setText("Tic-Tac-Toa");
38+
labelTop.setFont(new Font("Algerian",Font.BOLD,80));
39+
labelTop.setOpaque(false);
40+
labelTop.setVisible(true);
41+
labelTop.setPreferredSize(new Dimension(520,150));
42+
43+
44+
labelLeft1.setText("Player 1");
45+
labelLeft1.setFont(new Font("Algerian",Font.BOLD,30));
46+
labelLeft1.setOpaque(false);
47+
labelLeft1.setVisible(true);
48+
labelLeft1.setBounds(15,50,150,50);
49+
50+
labelLeft2.setText(">>> Score <<<");
51+
labelLeft2.setFont(new Font("Algerian",Font.BOLD,20));
52+
labelLeft2.setOpaque(false);
53+
labelLeft2.setVisible(true);
54+
labelLeft2.setBounds(20,150,150,50);
55+
56+
labelLeftScore.setText("00");
57+
labelLeftScore.setFont(new Font("Algerian",Font.BOLD,100));
58+
labelLeftScore.setOpaque(false);
59+
labelLeftScore.setVisible(true);
60+
labelLeftScore.setBounds(30,250,150,150);
61+
62+
63+
labelRight1.setText("Player 2");
64+
labelRight1.setFont(new Font("Algerian",Font.BOLD,30));
65+
labelRight1.setOpaque(false);
66+
labelRight1.setVisible(true);
67+
labelRight1.setBounds(15,50,150,50);
68+
69+
labelRight2.setText(">>> Score <<<");
70+
labelRight2.setFont(new Font("Algerian",Font.BOLD,20));
71+
labelRight2.setOpaque(false);
72+
labelRight2.setVisible(true);
73+
labelRight2.setBounds(20,150,150,50);
74+
75+
labelRightScore.setText("00");
76+
labelRightScore.setFont(new Font("Algerian",Font.BOLD,100));
77+
labelRightScore.setOpaque(false);
78+
labelRightScore.setVisible(true);
79+
labelRightScore.setBounds(30,250,150,150);
80+
81+
82+
labelWin1.setText("!!...Player 1 Win...!!");
83+
labelWin1.setFont(new Font("Algerian",Font.BOLD,40));
84+
labelWin1.setOpaque(false);
85+
labelWin1.setVisible(false);
86+
labelWin1.setBounds(60,150,500,150);
87+
88+
labelWin2.setText("!!...Player 2 Win...!!");
89+
labelWin2.setFont(new Font("Algerian",Font.BOLD,40));
90+
labelWin2.setOpaque(false);
91+
labelWin2.setVisible(false);
92+
labelWin2.setBounds(60,150,500,150);
93+
94+
labelWin3.setText("!!...Draw...!!");
95+
labelWin3.setFont(new Font("Algerian",Font.BOLD,40));
96+
labelWin3.setOpaque(false);
97+
labelWin3.setVisible(false);
98+
labelWin3.setBounds(130,150,250,150);
99+
100+
}
101+
}

0 commit comments

Comments
 (0)