飞机大战项目
刚学Java时用Frame写的一个飞机子弹的小游戏项目,难度不大,学了frame的小伙伴可以试试手
核心包:
背景和飞机
游戏窗口的实现,包含整个窗体的监听
package GamePlane;
import java.awt.Color;
import java.awt.Font;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.print.attribute.standard.SheetCollate;
public class MyGameFrame extends Frame{
Image planeImg = GameUtil.getImage("Image/plane.png");
Image bg = GameUtil.getImage("Image/bg.jpg");
Plane plane = new Plane(planeImg, 250, Constant.GAME_HEIGHT-150);
Shell[] shell = new Shell[20];
Explode bao ;
@Override
public void paint(Graphics g) {
g.drawImage(bg, 0, 0, null);
plane.drawSelf(g);
for(int i = 0;i<shell.length;i++)
{
Color c = g.getColor();
shell[i].drawSelf(g);
boolean boom = shell[i].getRect().intersects(plane.getRect());
for(int j=0;j<plane.all.size();j++) {
boolean coll = shell[i].getRect().intersects(plane.all.get(j).getRect());
if(coll)
{
shell[i].live = false;
plane.all.get(j).islive = false;
}
}
if(boom) {
plane.live = false;
for(i = 0;i<shell.length;i++) {
shell[i].live = false;
}
if(bao == null)
{
bao = new