..\CSC120\Java\lec32_f22\src\MUPanel.java |
1
2
3
4
5
6
7
8 import java.awt.*;
9 import javax.swing.*;
10 import java.util.*;
11
12 public class MUPanel extends JPanel {
13
14 private Mouse[] vermin;
15
16 private Random randGen;
17
18
19
20 public MUPanel() {
21 setLayout(null);
22 setPreferredSize(new Dimension(760, 640));
23 setName("Mount Union Java Program");
24 setUp();
25 setBackground(new Color(0xe8, 0xe8, 0xcc));
26
27
28 randGen = new Random();
29
30
31 vermin = new Mouse[40];
32
33 for (Integer m = 0; m < vermin.length; m++) {
34 Integer over = randGen.nextInt(501) + 100;
35 Integer down = randGen.nextInt(401) + 50;
36
37 Integer red = randGen.nextInt(140) + 100;
38 Integer green = randGen.nextInt(140) + 100;
39 Integer blue = randGen.nextInt(140) + 100;
40
41 Double pct;
42
43
44
45
46
47
48
49
50
51
52
53
54 vermin[m] = new Mouse(over, down, new Color(red, green, blue));
55
56 if (randGen.nextBoolean() == true) {
57 vermin[m].turnAround();
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 @Override
101 public void paintComponent(Graphics g) {
102 super.paintComponent(g);
103
104
105 for (Integer x = 0; x < vermin.length; x++) {
106 vermin[x].draw(g);
107 }
108
109 }
110
111
112 public void moveMiceForward() {
113
114 for (Integer index=0; index < vermin.length; index++) {
115 vermin[index].moveForward(1);
116 }
117
118 }
119
120 public void moveLowerMiceForward() {
121
122 for (Integer index=0; index < vermin.length; index++) {
123 if (vermin[index].getDown() > 250) {
124 vermin[index].moveForward(1);
125 }
126 }
127
128 }
129
130
131
132 public void turnMiceAround() {
133
134 for (Integer x = 0; x < vermin.length; x++) {
135 vermin[x].turnAround();
136 }
137
138 }
139
140 public void turnOuterMiceAround() {
141
142 for (Integer x = 0; x < vermin.length; x++) {
143 if (vermin[x].getOver() < 150 || vermin[x].getOver() > 500) {
144 vermin[x].turnAround();
145 }
146 }
147
148 }
149
150
151
152
153
154
155
156 public void setUp() {
157 for (Component c: getComponents())
158 c.setSize(c.getPreferredSize());
159 JFrame f = new JFrame(getName());
160 f.setContentPane(this);
161 f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
162 f.pack();
163 f.setVisible(false);
164 }
165
166 public static void main(String args[]){new MUPanel();}
167
168 }
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223