Skip to content

Commit 664df08

Browse files
author
sinohiro
committed
School submission
1 parent 5392312 commit 664df08

10 files changed

+47
-65
lines changed

Enemy.java

100644100755
File mode changed.

MyApplet.java

100644100755
+42-28
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ public class MyApplet extends JApplet implements KeyListener, ActionListener {
2929
private Title title;
3030
private Image player;
3131
private Timer timer;
32-
private ImageIcon apple_icon = new ImageIcon("image/apple_logo.png");
33-
private ImageIcon linux_icon = new ImageIcon("image/linux_logo.png");
34-
private ImageIcon windows_icon = new ImageIcon("image/windows_logo.png");
32+
private ImageIcon apple_icon;
33+
private ImageIcon linux_icon;
34+
private ImageIcon windows_icon;
3535
private int px, py;
3636
private int[] ex;
3737
private int[] ey;
@@ -55,15 +55,46 @@ public class MyApplet extends JApplet implements KeyListener, ActionListener {
5555
private Image apple_logo;
5656
private Image linux_logo;
5757
private Image windows_logo;
58-
private URL urlplayerimage;
59-
private URL urlenemyimage;
60-
private URL urlexplosionimage;
61-
private URL urltitleimage;
62-
private URL urlapple_logo;
63-
private URL urllinux_logo;
64-
private URL urlwindows_logo;
58+
private MediaTracker tracker;
6559

6660
public void init() {
61+
this.tracker = new MediaTracker(this);
62+
this.title = new Title();
63+
URL urlplayerimage = MyApplet.class.getResource("image/linux_logo.png");
64+
URL urlenemyimage = MyApplet.class.getResource("image/windows_logo.png");
65+
URL urlexplosionimage = MyApplet.class.getResource("image/explosion.png");
66+
URL urltitleimage = MyApplet.class.getResource("image/title/OSBustersTitleImage3.png");
67+
URL urlapple_logo = MyApplet.class.getResource("image/apple_logo.png");
68+
URL urllinux_logo = MyApplet.class.getResource("image/linux_logo.png");
69+
URL urlwindows_logo = MyApplet.class.getResource("image/windows_logo.png");
70+
71+
this.playerimage = super.getImage(urlplayerimage);
72+
System.out.println(playerimage);
73+
this.enemyimage = super.getImage(urlenemyimage);
74+
this.explosionimage = super.getImage(urlexplosionimage);
75+
this.titleimage = super.getImage(urltitleimage);
76+
this.apple_logo = super.getImage(urlapple_logo);
77+
this.linux_logo = super.getImage(urllinux_logo);
78+
this.windows_logo = super.getImage(urlwindows_logo);
79+
80+
this.tracker.addImage(playerimage, 0);
81+
this.tracker.addImage(enemyimage, 0);
82+
this.tracker.addImage(explosionimage, 0);
83+
this.tracker.addImage(titleimage, 0);
84+
this.tracker.addImage(apple_logo, 0);
85+
this.tracker.addImage(linux_logo, 0);
86+
this.tracker.addImage(windows_logo, 0);
87+
88+
try{
89+
this.tracker.waitForAll();
90+
System.out.println("MediaTracker is ok");
91+
} catch (InterruptedException e){}
92+
93+
this.apple_icon = new ImageIcon(apple_logo);
94+
this.linux_icon = new ImageIcon(linux_logo);
95+
this.windows_icon = new ImageIcon(windows_logo);
96+
this.title.setTitleImage(titleimage);
97+
6798
this.selplayerbutton0 = new JButton(apple_icon);
6899
this.selplayerbutton1 = new JButton(linux_icon);
69100
this.selplayerbutton2 = new JButton(windows_icon);
@@ -80,6 +111,7 @@ public void init() {
80111
this.selmenuplayerlabel.setFont(new Font("MS ゴシック", Font.BOLD, 40));
81112
this.selmenuenemylabel = new JLabel("Select Enemy");
82113
this.selmenuenemylabel.setFont(new Font("MS ゴシック", Font.BOLD, 40));
114+
83115
px = 640;
84116
py = 600;
85117
point = 0;
@@ -94,22 +126,6 @@ public void init() {
94126
timer = new Timer(40, this);
95127
this.timer.stop();
96128

97-
urlplayerimage = MyApplet.class.getResource("image/linux_logo.png");
98-
urlenemyimage = MyApplet.class.getResource("image/windows_logo.png");
99-
urlexplosionimage = MyApplet.class.getResource("image/explosion.png");
100-
urltitleimage = MyApplet.class.getResource("image/title/OSBustersTitleImage3.png");
101-
urlapple_logo = MyApplet.class.getResource("image/apple_logo.png");
102-
urllinux_logo = MyApplet.class.getResource("image/linux_logo.png");
103-
urlwindows_logo = MyApplet.class.getResource("image/windows_logo.png");
104-
105-
this.playerimage = super.getImage(urlplayerimage);
106-
this.enemyimage = super.getImage(urlenemyimage);
107-
this.explosionimage = super.getImage(urlexplosionimage);
108-
this.titleimage = super.getImage(urltitleimage);
109-
this.apple_logo = super.getImage(urlapple_logo);
110-
this.linux_logo = super.getImage(urllinux_logo);
111-
this.windows_logo = super.getImage(urlwindows_logo);
112-
113129
this.mm = new MyModel();
114130
this.mp = new MyPanel(px, py);
115131
this.pb = new PlayerBullet[NUM_BULLET];
@@ -125,7 +141,6 @@ public void init() {
125141
enemy[i].setEnemyImage(enemyimage);
126142
enemy[i].setExplosionImage(explosionimage);
127143
}
128-
this.title = new Title();
129144

130145
//set_image
131146
mp.setPlayerImage(playerimage);
@@ -136,7 +151,6 @@ public void init() {
136151
mp.setNUM_BULLET(NUM_BULLET);
137152
mp.setNUM_ENEMY(NUM_ENEMY);
138153
mp.setMyModel(this.mm);
139-
title.setMyModel(this.mm);
140154

141155
mp.addKeyListener(this);
142156

MyModel.java

100644100755
-30
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,6 @@ public class MyModel {
2121
private Image windows_logo;
2222

2323
public MyModel(){
24-
super();
25-
Toolkit tk = Toolkit.getDefaultToolkit();
26-
apple_logo = tk.getImage("image/apple_logo.png");
27-
linux_logo = tk.getImage("image/linux_logo.png");
28-
windows_logo = tk.getImage("image/windows_logo.png");
29-
bullet = tk.getImage("man2.png");
30-
explosion = tk.getImage("image/explosion.png");
31-
title = tk.getImage("image/title/OSBustersTitleImage3.png");
3224
ELeft = false;
3325
ERight = true;
3426
enemykill = false;
@@ -89,27 +81,5 @@ public int getPoint(int point){
8981
point += 1;
9082
return point;
9183
}
92-
93-
public Image getAppleLogo(){
94-
return this.apple_logo;
95-
}
96-
public Image getLinuxLogo(){
97-
return this.linux_logo;
98-
}
99-
public Image getWindowsLogo(){
100-
return this.windows_logo;
101-
}
102-
103-
public Image getPlayerBullet(){
104-
return this.bullet;
105-
}
106-
107-
public Image getExplosion(){
108-
return this.explosion;
109-
}
110-
111-
public Image getTitleImage(){
112-
return this.title;
113-
}
11484
}
11585

MyPanel.java

100644100755
-2
Original file line numberDiff line numberDiff line change
@@ -73,13 +73,11 @@ public boolean getIsExplosion(){
7373
}
7474

7575
public MyPanel(int px, int py) {
76-
//super();
7776
this.px = px;
7877
this.py = py;
7978
this.ex = ex;
8079
this.ey = ey;
8180
setBackground(Color.black);
82-
//setBackground(Color.white);
8381
setPreferredSize(new Dimension(1280, 720));
8482
}
8583

OSBusters.jar

-2.51 MB
Binary file not shown.

PlayerBullet.java

100644100755
File mode changed.

Release/p160101.jar

-2.51 MB
Binary file not shown.

Title.java

100644100755
+4-4
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
import javax.swing.*;
33

44
public class Title extends JPanel {
5-
private MyModel mm;
5+
private Image titleimage;
66

7-
public void setMyModel(MyModel mm){
8-
this.mm = mm;
7+
public void setTitleImage(Image titleimage){
8+
this.titleimage = titleimage;
99
}
1010

1111
public Title() {
@@ -18,7 +18,7 @@ public void paintComponent(Graphics g) {
1818
super.paintComponent(g);
1919
Toolkit.getDefaultToolkit().sync();
2020

21-
g.drawImage(mm.getTitleImage(), 0, 0, this);
21+
g.drawImage(this.titleimage, 0, 0, this);
2222

2323
requestFocusInWindow();
2424
}

applet_test.html

100644100755
File mode changed.

jartest.html

100644100755
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<applet code="MyApplet.class" archive="OSBustars.jar" width="1280" height="720"></applet>
1+
<applet code="MyApplet.class" archive="p160101.jar" width="1280" height="720"></applet>

0 commit comments

Comments
 (0)