-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMainPage.java
More file actions
132 lines (102 loc) · 3.83 KB
/
Copy pathMainPage.java
File metadata and controls
132 lines (102 loc) · 3.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
import java.lang.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.util.*;
public class MainPage extends JFrame implements ActionListener
{
private JPanel panelMain;
private JLabel labelTscore,labelEnd;
private Color clrBackG = new Color(36, 64, 109);
private Color clrButton1 = new Color(23, 210, 239);
private Color clrButton2 = new Color(54, 249, 132);
private Color clrTemp,clrTemp1;
Button[] buttons = new Button[50];
Button button1,button2;
int btnCounter = 0;
Random rnd = new Random();
int counter=0;
int level,score;
int Tscore=1000;
String ValueKeeperSt1,ValueKeeperSt2;
Boolean checked=false;
MainPage(int level,int score)
{
super("Puzzle Game");
this.setSize(1000,800);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//////////////////////////////////// MAIN //////////////////////////////////////
panelMain = new JPanel();
panelMain.setBackground(clrBackG);
panelMain.setLayout(null);
//////////////////////////////////// Score Board ///////////////////////////////
labelTscore = new JLabel();
labelTscore.setBounds(60,30,100,20);
labelTscore.setText("Score: "+Tscore);
labelTscore.setForeground(Color.WHITE);
panelMain.add(labelTscore);
this.level=level;
this.score=score;
///////////////////////////////// Create Buttons////////////////////////////////
for(int i=0;i<level;i++)
{
int Values = rnd.nextInt(49)+10;
String values;
values = Integer.toString(Values);
buttons[counter] =new Button(values);
buttons[counter].setBackground(clrButton1);
buttons[counter].setForeground(clrButton1);
buttons[counter].addActionListener(this);
panelMain.add(buttons[counter]);
buttons[counter+1]=new Button(values);
buttons[counter+1].setBackground(clrButton2);
buttons[counter+1].setForeground(clrButton2);
buttons[counter+1].addActionListener(this);
panelMain.add(buttons[counter+1]);
counter = counter + 2;
btnCounter = btnCounter + 2;
}//Create Button
////////////////////////////////////// END /////////////////////////////////////
this.add(panelMain);
this.setVisible(true);
}//Constroctor
/////////////////////////////////// Action Performed////////////////////////////
public void actionPerformed(ActionEvent mpae)
{
if(checked == false)
{
button1 = (Button)mpae.getSource();
button1.setForeground(Color.BLACK);
ValueKeeperSt1 = button1.getLabel();
clrTemp = button1.getBackground();
checked = true;
}//Checked Flase
else if(checked == true)
{
button2 = (Button)mpae.getSource();
button2.setForeground(Color.BLACK);
ValueKeeperSt2 = button2.getLabel();
clrTemp1 = button2.getBackground();
if(ValueKeeperSt1.equals(ValueKeeperSt2))
{
button1.setVisible(false);
button2.setVisible(false);
btnCounter = btnCounter -2;
checked = false;
if(btnCounter <= 0)
{
WinPage wp = new WinPage(Tscore);
this.setVisible(false);
}//Empty
}//Right
else
{
button1.setForeground(clrTemp);
button2.setForeground(clrTemp1);
Tscore= Tscore-score;
labelTscore.setText("Score: "+Tscore);
checked = false;
}//Wrong
}//Checked True
}//Action Performed
}//class