package com.task1;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Rectangle;
import java.awt.Toolkit;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.util.ArrayList;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Backpanel extends JPanel{
public Image image,image2;
public Myframe myframe;
public int timer=0;
public int time=0;
public PlayerImg playerImg;
public DrawThread drawThread;
public Attack attack;
public BadPlanes badPlane;
public int width=50;
public int height=50;
public boolean rect;
public static int grade;
public int speed=3;
public JLabel label1;
public int x=0;
public String grades="0";
public ArrayList<BadPlanes> badPlanes=new ArrayList<BadPlanes>();
public ArrayList<Attack> arrayList=new ArrayList<Attack>();
public Backpanel() {
image=Toolkit.getDefaultToolkit().getImage("image/3.jpg");
label1=new JLabel();
add(label1);
playerImg=new PlayerImg(this);
drawThread=new DrawThread(this);
drawThread.start();
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(image,0,time,image.getHeight(this),image.getWidth(this),null);
g.drawImage(image,0,time-image.getHeight(this),image.getHeight(this),image.getWidth(this),null);
timer++;
if (timer==10000) {
timer=0;
}
if (timer%10==0) {
//图片流动
time++;
if(time==image.getHeight(this))
time=0;
}
//玩家添加
playerImg.drawself(g);
//添加子弹
if (timer%100==0) {
attack=new Attack(this);
attack.x=playerImg.x+35;
attack.y=playerImg.y-20;
arrayList.add(attack);
}
for (int i = 0; i <arrayList.size(); i++) {
arrayList.get(i).drawself(g);
}
//敌人添加
if (timer%100==0) {
badPlane=new BadPlanes();
badPlanes.add(badPlane);
}
for (int i = 0; i < badPlanes.size(); i++) {
Rectangle r1=new Rectangle(attack.x,attack.y,width,height);
Rectangle r2=new Rectangle(this.badPlanes.get(i).x,this.badPlanes.get(i).y,width,height);
rect=r1.intersects(r2);
if (rect==true) {
badPlanes.remove(badPlanes.get(i));
grade=x++;
}
else {
this.badPlanes.get(i).drawself(g);
}
}
}
public static int getGrade() {
return grade;
}
public class BadPlanes {
public int x=(int)(Math.random()*605);
public int y=-20;
public int width=50;
public int height=50;
public BadPlanes() {
image2=Toolkit.getDefaultToolkit().getImage("image/2.png");
}
public void drawself(Graphics g) {
if (timer%10==0) {
y+=speed;
}
g.drawImage(image2, x, y,width,height,null);
if (y==Myframe.frameheight) {
badPlanes.remove(this);
x=(int)(Math.random()*605);
}
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
一个利用java语言制作的简单飞机游戏.zip
共42个文件
class:14个
jpg:11个
java:10个
需积分: 5 0 下载量 59 浏览量
2023-08-05
22:49:49
上传
评论
收藏 2.47MB ZIP 举报
温馨提示
用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。
资源推荐
资源详情
资源评论
收起资源包目录
一个利用java语言制作的简单飞机游戏.zip (42个子文件)
0797
.classpath 429B
2.jpg 28KB
.settings
org.eclipse.jdt.core.prefs 767B
image
3.png 3KB
3.jpg 529KB
2.png 69KB
9.jpg 29KB
src
module-info.java 83B
com
task1
Text.java 871B
Action.java 568B
BadPlane.java 808B
PlayerImg.java 1KB
Attack.java 729B
Backpanel.java 3KB
Myframe.java 2KB
MainPanel.java 525B
DrawThread.java 664B
1.jpg 45KB
timg.jpg 323KB
bin
module-info.class 171B
3.png 3KB
3.jpg 529KB
2.png 69KB
9.jpg 29KB
com
task1
Text.class 921B
Myframe$1.class 1015B
Backpanel.class 3KB
Text$1.class 968B
Backpanel$BadPlanes.class 1KB
DrawThread.class 1KB
MainPanel.class 862B
PlayerImg.class 2KB
Action.class 731B
Myframe$2.class 1012B
Attack.class 1KB
Myframe.class 2KB
BadPlane.class 2KB
5.jpg 72KB
8.jpg 11KB
.project 367B
7.jpg 22KB
4.jpg 778KB
共 42 条
- 1
资源评论
c++服务器开发
- 粉丝: 3046
- 资源: 4462
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功