import java.awt.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.ArrayList;
import java.util.List;
public class PlaneWarFrame extends Frame {
public static final int GAME_WIDTH = 400;
public static final int GAME_HEIGHT = 500;
private Image offScreanImage = null;
BackGround b = new BackGround();
MyPlane myPlane = new MyPlane(180, 460, null, this);
Blood bl = new Blood(200,32,Direction.D);
Boss bo = new Boss(150,-76,Direction.STOP,this);
public int score = 0;
// BloodBar bb = new BloodBar();
// EnemyPlane enemyplane = new EnemyPlane(50,50,Direction.STOP,this);
List<Missile> missiles = new ArrayList<Missile>();
// List<Blood> bloods = new ArrayList<Blood>();
List<BossMissile> bossmissiles = new ArrayList<BossMissile>();
List<EnemyMissile> enemymissiles = new ArrayList<EnemyMissile>();
//List<EnemyPlane2> enemyplanes2 = new ArrayList<EnemyPlane2>();
List<EnemyPlane> enemyplanes = new ArrayList<EnemyPlane>();
public void paint(Graphics g) {
b.drawBackGround(g);
myPlane.draw(g);
myPlane.eat(bl);
myPlane.collidesWithEnemyPlane(enemyplanes);
myPlane.collidesWithBoss(bo);
// bb.draw(g);
// enemyplane.draw(g);
g.drawString("missiles count:" + missiles.size(), 5, 50);
g.drawString("planes count:" + enemyplanes.size(), 5, 70);
g.drawString("myPlane life:" + myPlane.getLife(), 5, 90);
g.drawString("score :"+score, 5,110);
for(int i=0; i<missiles.size(); i++) {
Missile m = missiles.get(i);
m.hitEnemys(enemyplanes);
//m.hitEnemys2(enemyplanes2);
m.hitBoss(bo);
m.draw(g);
}
for(int i=0; i<enemymissiles.size(); i++) {
EnemyMissile m = enemymissiles.get(i);
m.hitMyPlane(myPlane);
m.draw(g);
}
for(int i=0; i<bossmissiles.size(); i++) {
BossMissile m = bossmissiles.get(i);
m.hitMyPlane(myPlane);
m.draw(g);
}
for(int i=0; i<enemyplanes.size(); i++) {
EnemyPlane e = enemyplanes.get(i);
e.draw(g);
}
/*for(int i=0; i<enemyplanes2.size(); i++) {
EnemyPlane2 e = enemyplanes2.get(i);
e.draw(g);
}*/
/*if(enemyplanes.size()<4&&enemyplanes2.size()<5){
for(int i=0;i<=4;i++){
enemyplanes2.add(new EnemyPlane2(60*(i+1),30,Direction.D,this));
}
}*/
if(enemyplanes.size()<4&&score<120){
for(int i=0;i<=4;i++){
enemyplanes.add(new EnemyPlane(70*(i+1),30,Direction.D,this));
}
}
if(myPlane.life<50) {
bl.draw(g);
}
if(score>=120){
bo.draw(g);
g.drawString("Boss life:" + bo.getLife(), 5, 120);
}
if(bo.getLife()==0){
Font f=new Font("宋体",Font.BOLD+Font.ITALIC,40);
g.setFont(f);
g.drawString("YOU WIN !", 120, 250);
}
if(myPlane.getLife()==0){
Font f=new Font("宋体",Font.BOLD+Font.ITALIC,40);
g.setFont(f);
g.drawString("YOU LOSE !", 120, 250);
}
}
public void update(Graphics g) {
if(offScreanImage == null){
offScreanImage = this.createImage(GAME_WIDTH, GAME_HEIGHT) ;
}
Graphics goffScrean = offScreanImage.getGraphics();
Color c = goffScrean.getColor();
goffScrean.setColor(Color.white);
goffScrean.fillRect(0, 0, GAME_WIDTH, GAME_HEIGHT);
paint(goffScrean);
g.drawImage(offScreanImage, 0, 0, null);
}
public static void main(String[] args) {
PlaneWarFrame tc = new PlaneWarFrame();
tc.lauchFrame();
}
public void lauchFrame(){
this.setLocation(220,220);
this.setSize(GAME_WIDTH,GAME_HEIGHT);
this.setTitle("PlaneWar");
this.setBackground(Color.green);
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e) {
System.exit(0);
}});
setVisible(true);
this.addKeyListener(new KeyMonitor());
this.setResizable(false);
new Thread(new PaintThread()).start();
/* for(int i=0;i<=5;i++){
enemyplanes.add(new EnemyPlane(60*(i+1),30,Direction.D,this));
}*/
}
private class PaintThread implements Runnable{
public void run() {
while(true){
repaint();
try {
Thread.sleep(50);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
public class KeyMonitor extends KeyAdapter{
public void keyReleased(KeyEvent e) {
myPlane.keyReleased(e);
}
public void keyPressed(KeyEvent e) {
myPlane.keyPressed(e);
}
}
/* public class BloodBar {
public void draw(Graphics g) {
Color c = g.getColor();
g.setColor(Color.RED);
g.drawRect(300, 10, 50, 10);
int w = 50* myPlane.life/100 ;
g.fillRect(300, 10, w, 10);
g.setColor(c);
}
}*/
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![jar](https://img-home.csdnimg.cn/images/20210720083455.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
收起资源包目录
![package](https://csdnimg.cn/release/downloadcmsfe/public/img/package.f3fc750b.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GIF.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
共 73 条
- 1
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/e908d3f559a440a89ffab26bc7ee7a71_weixin_38343072.jpg!1)
马coder
- 粉丝: 1214
- 资源: 6602
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
- Python学习资料&项目源码-天气应用程序
- PostgreSQL JDBC 驱动包,最新的基于 jdk 1.6 的 jdbc 驱动包
- s,p,j,spj建表.sql
- 资源专区-课程设计-编程作业-计算机网络基础资源-计算机网络、现代通信组网相关的教程&案例&相关项目
- ST3007SRG-VB一款SOT23封装P-Channel场效应MOS管
- 资源专区-课程设计-编程作业-【docker配置使用】资源&&详细讲解使用
- 基于microPython开发单片机实现utf-8转gb2312
- kmp算法的C语言实现项目源代码课设.zip
- dbeaver-ce-24.1.0
- 资源专区-小白必看-通信仿真资源-傅里叶变换、滤波器、FFT等经典算法
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)