今天放假第二天,一个人在家很无聊,跟着b站写了一个飞机游戏的小项目。

1.画一个窗体继承Frame类,因为JFrame闪烁特别严重,加一段双缓冲技术,解决闪烁问题

2.加入背景和飞机的图片,写一个GameUitl类使用

URL u=GameUitl.class.getClassLoader().getResource(path);
  bi=ImageIO.read(u);方法显示图片

3.写一个GameObject父类,飞机Plane炮弹Shell都继承此类,在类中右击-Source-Generate getters and setters to create 来写构造器。

4.在飞机类中增加两个获得和减少键盘的方法,在方法中使用getKeyCode()方法获得键盘数据。并重写一个改变飞机位置的方法。

5.在弹药类中用Graphics g画笔自己画炮弹g.fillOval((int)x, (int)y, width, height);画实体椭圆。并用数学方法实现任意角度飞及碰撞反弹。

//任意角度去飞
  x+=speed*Math.cos(degree);
  y+=speed*Math.sin(degree);
  
  //碰撞反弹
  if(x<0||x>Constant.Game_width-width){
   degree=Math.PI-degree;

}
  if(y<30||y>Constant.Game_heigth-height){
   degree=-degree;

}

6.写一个爆炸类,实现飞机爆炸时图片的轮流播放

public class Explore {
 double x,y;
 static Image[] imgs=new Image[16];
 static{
 for(int i=0;i<16;i++){
  
  
  imgs[i]=GameUitl.getImages("images/explode/e"+(i+1)+".gif");
  imgs[i].getWidth(null);
 
 }
  
 }
 int count;
 //轮播实现爆炸图片
 public void draw(Graphics g){
  if(count<16){
   g.drawImage(imgs[count], (int)x,(int) y, null);
   count++;
  }
 }
 public Explore(double x,double y){
  this.x=x;
  this.y=y;
 }
}

7.检验碰撞时使用获得图片矩形相撞的方法getRect().intersects(plane.getRect())

8.碰撞时实现一个计时功能

转载于:https://www.cnblogs.com/stt-ac/p/10284868.html

Java-飞机小游戏相关推荐

  1. Java飞机小游戏制作简单实现详细小结

    567881@ftJava小游戏开发 Java飞机小游戏制作简单实现小结 本人原来是个技术小白,寒假我跟着高淇老师的Java300集开始自学Java,跟着做了一个飞机大战小游戏,已经实现了飞机的自由移 ...

  2. 用JAVA制作小游戏——飞机大战(三)

    本篇博客是对飞机大战游戏项目完整代码的展示 详细代码讲解: 用JAVA制作小游戏--飞机大战(一) 用JAVA制作小游戏--飞机大战(二) 最下方附整个程序的文件下载链接 代码展示 主界面 impor ...

  3. 用JAVA制作小游戏——飞机大战(二)

    本篇博客是对飞机大战游戏使用代码的展示 重难点: 首先需要鼠标能够控制战机,使鼠标在窗口内时始终能够使战机的位置与鼠标相同,实现鼠标控制战斗机移动. 其次需要能够以一定的速度产生子弹和敌机,并且以一定 ...

  4. 用JAVA写个飞机小游戏玩玩吧

    闲来无事写了个飞机小游戏. 设定很简单,子弹打到飞机就结束游戏. 实现步骤如下,有问题可以评论区讨论: 首先建立一个PlayGame项目和它之下的包: MyGameFrame(游戏实现)类: pack ...

  5. Java版打飞机小游戏

    放假写的一个Java端打飞机小游戏. 复习到的知识点有:java图形界面,多线程,集合框架等. 主要的收获是知道了处理图层的方式,即JLayeredPane层次面板,主要思路 如下: 1.       ...

  6. java打飞机小游戏(跟着网上视频写到)

    package 飞机小游戏; //如果觉得好的话,给一点积分哦,太痛苦了,平时下一点资料都得需要 import java.awt.Color; import java.awt.Font; import ...

  7. 编程语言用 Java 开发一个打飞机小游戏(附完整源码)

    编程语言用 Java 开发一个打飞机小游戏(附完整源码) 上图 写在前面 技术源于分享,所以今天抽空把自己之前用java做过的小游戏整理贴出来给大家参考学习.java确实不适合写桌面应用,这里只是通过 ...

  8. Java窗体小游戏开发飞机大作战Java小游戏开发源码

    Java窗体小游戏开发飞机大作战Java小游戏开发源码

  9. java游戏暂停弹出字体_小白写了个java的小游戏 想加个暂停的功能 无从下手 求大佬们帮...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 第一次写java的小游戏 想实现点击右下角的暂停 实现游戏的暂停和继续 不知道该怎么加,自己找了线程的内容但试了还是成功不了,求大佬们帮一下小白.代码有点 ...

  10. 用JAVA制作小游戏——推箱子(三)

    本篇博客主要是对推箱子地图编辑器功能的代码讲解. 首先给出这段代码的部分运行截图: 重难点: 地图编辑器主要有三个重难点: 需要有一个绘制地图的界面 能够实现地图绘制的功能 地图绘制完成后需要将地图内 ...

最新文章

  1. iOS APP提交上架最新流程
  2. gdb 不能显示变量_linux下gdb调试常用命令汇总
  3. android 8.0 3D锁屏,Android 8.0 锁屏滑动无法解锁
  4. print 和 printf 和 println
  5. php mysql随机记录,php – 从MySQL中选择可变数量的随机记录
  6. 前端学习(1355) 子模板
  7. 华为epg-sms 多cp_Linux桌面上的SMS,Linux 25岁生日以及更多开源新闻
  8. 计算机系统 cpu课程,计算机操作系统
  9. Hive thrift服务(将Hive作为一个服务器,其他机器可以作为客户端进行访问)
  10. 阿里最新分享Redis全套学习笔记PDF版,图文并茂,太详细了
  11. STM32驱动直流电机的程序与电路设计(IR2110S自举电路+H桥+高级定时器和死区PWM)
  12. 深入理解JVM - 类文件的结构
  13. 组态王 6.55 启停plc_PLC编程进料PLC编程项目
  14. python培训总结报告
  15. ubuntu看不了bilibili视频
  16. axios (get,post,put,delete),常用配置,全局配置,axios.create(config)配置一个新的axios
  17. linux版本的xmind怎么安装教程,linux安装xmind
  18. MySQL索引原理和引擎
  19. Android updater-scripts(Edify Script)各函数详细说明【转】
  20. 数学实验matlab 韩明,数学实验(MATLAB版)[韩明,王家宝,李林 编著] 2012年版

热门文章

  1. 学校头歌作业2_2计算弓形的表面积与体积(头歌作业[Python])
  2. Java数据结构——图-邻接表
  3. JAVA设计模式------Iterator模式(迭代器模式)
  4. 发包人能否以承包人未开发票而拒付工程款
  5. New Concept English 2 -- lesson 5,6
  6. 行车记录仪什么牌子质量好?行车记录仪十大品牌推荐2023
  7. 安徽java平均薪资_安徽java工资怎么样,安徽java工资最多到多少,安徽java工资水平能到多少...
  8. 笔记--×××招投标法
  9. 我所经历的大数据平台发展史(一):非互联网时代 • 上篇
  10. jquery多个类选择,字符串转数值