java雷霆战机代码判断死亡_用Java开发简单又好玩的——雷霆战机小游戏几行代码就搞定...

news/2024/11/29 7:52:36/

用Java开发简单又好玩的——雷霆战机小游戏几行代码就搞定

用Java开发简单又好玩的——雷霆战机小游戏,几行代码就搞定

资源加载

音乐播放

创建子弹类

创建爆炸和珍宝类

创建导弹和飞机类

鼠标键盘控制

新建项目:Java Project -> planewar

7f9d7752bcfb2cb6021d575eab733da7.png

将图片文件资源和音乐文件资源拷贝到项目中

016f70d204a5b4115954d85fa951a329.png

然后我们导入第三方的jar

我们将jar包存放的目录拷贝到项目中,防止找不到jar

dda90799123ac3986b2c52fc49476e18.png

选择项目属性

bf6557f9c15867c2d12feba8f4159d78.png

选择java build path,找到图示中jar的位置

500b660721d2df90ff7a16b32d470a8a.png

5dba249e85fb44dd641a596e7baac385.png

我们创建如下包结构

5593e276241e42d0ac75bfe2bc76e319.png

然后我们开始编写代码:

我们创建一个类constant

87b380d34f88eaa523aa66ed4449c732.png

我们再创建一个图片读取的工具类

9183ced78bbdd945c694e920357c9d98.png

我们创建一个窗体类,编写一个绘制图形的方法线程

c5264829786c3a8ecd26e53a8d14da4b.png

构造方法

f6574878285588f91dcda05d8b420fc0.png

创建主窗体系

50a51006e73489b09795328ba78bbf4f.png

补充一部分代码

5d453ff3f619f6342aab6592c88befac.png

主方法

075764d0b9286356ec68a3d28ed0c7be.png

8727fa3498c8c82f410c2fe7137a3fe1.png

此时可以加载出图片

b1e58b782ff60644ae4078c294c48a6b.png

我们创建一个播放音乐的类

098b754dbed912038f30e9e3238ca958.png

在主窗体中添加属性

98c32b45510cb3cdefcf254f3ce5b268.png

我们读取对应的音乐文件

bacfa29d6a3bbd90b5132bb9e7096ef4.png

此时音乐可以正常播放

73b1e037d51782f1048287cf46cb9ff8.png

此时画面图片刷新有明显的闪动,我们再加一段代码

dd09970b629911f7e3871d557c5fd26c.png

此时界面正常,没有闪烁现象

9267992085a9f88057229987efda643f.png

我们需要创建飞机、珍宝、导弹、爆炸、子弹等实体

我们先创建一个方向类

9034163aab2d5b2709818a9c1404db05.png

我们先创建子弹类Bullet

0f9b6644de1db03cac1389e66f5d8a5e.png

继续补充属性

6d3fca39124c5def58d5d908c1f3a8d5.png

初始化子弹的图片

b343cf9d7683d23e46d486ef2cae029b.png

初始化的代码

3c02edae27408a7cdc7c0b9005543c05.png

5246393c4263e9096441ca9c6b5d9337.png

构造方法

5672790edc137cde51fe047de4ef14cc.png

赋值属性

4addcdb3362ffd29f96bf10352c66b4a.png

条件语句中的代码 表示是不是"友好"的子弹

a45aabdcda9cc37a6086490a96439fdc.png

Else中包括一个if else 表示如果是敌方的子弹,那么是不是Boss发出来的

096d10146f8f52fd65b7891216336f29.png

不是boss的敌方子弹

c591372bc12efd9a3191fe2fcbfc6511.png

创建两个方法,子弹的移动和绘制,需要控制子弹是不是出界

b7aa6155d0d2932e2d5ea1eb189de15a.png

击中飞机的方法

393207ad71e4c907079a84531b837f8d.png

创建一个矩形

13ab94440f0eaf7203b3e6ac0379ad85.png

多个飞机击中判断

0f833823fd3b2ee01a23bc8eb3689ddc.png

在主窗体中创建对应的属性就可以了

f7ef76b03a5e067e226fbe8ee6563b35.png

我们需要创建飞机、珍宝、导弹、爆炸、子弹等实体

我们创建爆炸类

bddf7221a302ffbde9974d17df8df79c.png

我们在主窗体中创建集合类

860a383b804a2f0229474f87aa763980.png

设置属性和对应的资源

240495af4742d2846c8f29f15acbb58d.png

设置构造方法和属性方法

c9e674048fa5fd7e92709eb4c9e86e13.png

我们绘制爆炸效果

bd6825d9aa85a93fdd971bdf55bf9048.png

我们继续创建珍宝类

19c7129e6a202893b09df8b10bcf747f.png

在主窗体中创建集合类

8ff0e0b5acdff26ad7ce96562cb0f00d.png

创建对应的属性类

ad4950170ea09a6808fc842e1cc87cc8.png

创建对应的构造方法和属性方法

3939fbf5b571ed01ca62176baa6acef9.png

创建绘制和移动方法

1039dda2decd1f5e15a7a9f91edbafed.png

我们继续创建导弹类

5d0ecd4c4f5e038f139c7039fcb9b38b.png

我们创建集合类

7469da0fa60db89d99db8799e4d55af9.png

我们编写对应的属性

42e59112ef4fc73626fc61ddf586d274.png

两个构造方法和矩形绘制

7f37b54990bb0cd8354e5ac6b1b4971c.png

编写绘制图形的代码

04c866a760611a81cf7b3ff6b2751911.png

我们需要创建飞机、珍宝、导弹、爆炸、子弹等实体

我们创建导弹类(其中会用到飞机类,我们先简单创建一个飞机类)

增加主窗体的集合类

75bb1b6a301bbff5ba7989bad18df191.png

我们继续创建导弹类

3a605aff302c2ae54ff3a78699da02c8.png

我们创建集合类

2db92acf3769f8364e7f4b65137efbd7.png

我们编写对应的属性

1a87a1260e5079e168360764b547edb6.png

两个构造方法和矩形绘制

cb2f25f350bbc1022d257d46fb057c3b.png

编写绘制图形的代码

abeaa27b279181b8f65d0a61c4ae7426.png

我们创建移动方法

ead7a03a136c207e8f4173f26da17a29.png

4aaaeee095e2c09b43f6cfcdeb6055a2.png

我们继续编写创建击中的方法

e9e3fe6365269fc6d8870cdeda5ca9a1.png

多个击中的方法

6c82bfffb171d238d729bd3a8a1a5c90.png

我们创建使用于boss敌机的导弹

25b6521c37c0a717518c66a10d90b138.png

对应的属性和构造方法

1b7822db88e6cf4e4548fc62b9d68cd1.png

绘制方法和简单计算

51404383f50163be46945936a8b5cb50.png

移动方法(这个比较长注意看)

b892a678ee663a51b105ff806a6317bb.png

移动方法(这个比较长注意看)

dfbaa4da1042d2ace081526ffbb64174.png

8c00325f19a32f32a06eedf44527307e.png

4eddf2e2f40967c6900e33a64d328aa8.png

0209a1de7239524105b9ea578447cff2.png

创建击中方法

010677227f813e57aedb4ed97367df0c.png

我们继续补充飞机类的内容

cd82f183464a4f1db5f129b75b9a2a97.png

图片资源加载(代码较长注意)

ac730a4fde3a4fb98350f671dd85da16.png

7917eb51162888bbbe42e4e867481766.png

75d2946bd278f11fedbbecd138149f5a.png

构造方法

23631da5e98be7bff73423bd3efed1e9.png

绘制方法和其它一些属性方法

1ccdeb26a290839255dba25c7f240da3.png

d6d8108e31dc2938a9fcf54a991c760e.png

控制按下的代码

f6a346b343c70912d69701cc8bf44b3f.png

释放的代码

18af245b473caddc47e546040d58e66c.png

开火的代码

a728fa889fb3b65460e16fc39028e953.png

BOSS

f6fce4f5bc04fe9be90ed3917fdf81f2.png

148114c5c8277668e48b0cd95cfe8f33.png

开火的代码

方向控制

8ee62da266a626f4e7dc4ec1ed57d4cc.png

移动方法

387c76ec324f73fc8de8fd2e044a954b.png

089982f5759148e0d61a45e69ca4b251.png

e8dc46aa05ce18a51ffc6fc1706545cb.png

暴走方法

631e5713c413d426d17c6b6d5267f742.png

控制键盘和鼠标,我们现在主窗体添加一些属性

30295f17c74a5dcefe1e2028b32a48ab.png

我们再创建一个线程类

dda35d6b980b71d7b8f6cfb8ec36d6ed.png

对应的构造方法和属性

deed8809474ec13e807f2f0862416fb6.png

线程运行类

2da59f3e27dec421ba50d4a6b37c35b0.png

8870614cba495c0248d6be040458616a.png

26f7502068a0683ee786ee1dc6ad637c.png

2617e05591221b9f2ade8932242b77b0.png

主窗体中我们添加新的内容

9fff09da68030f9bf03903a503d72325.png

585b64e4ca10b5cbb14097af0384ecfb.png

6fffcb8830862aea0180fbc6f78b631f.png

ac14b66deff0b906d5e71adc3f669127.png

bf829995195a4c8cfb76a124c79078fe.png

我们添加两个事件监听的方法

e7f1a01d27e4311e8c42d922cee4b771.png

2cd3dbe5b69f74556c634f89ee729c35.png

键盘监听

85343ace1ed06144337d4aad3933484f.png

主方法执行

a10b56b1c496ba0cb0bd1c7c2b9f2cf9.png

用Java开发简单又好玩的——雷霆战机小游戏几行代码就搞定相关教程


http://www.ppmy.cn/news/857359.html

相关文章

python numpy数组动态写入csv文件_关于python:将NumPy数组转储到csv文件中

有没有办法将一个numpy数组转储到csv文件中?我有一个2d numpy数组,需要以人类可读的格式转储它。 numpy.savetxt将数组保存到文本文件中。 import numpy a = numpy.asarray([ [1,2,3], [4,5,6], [7,8,9] ]) numpy.savetxt("foo.csv", a, delimiter=",") …

FunCode太空战机C++实现

仅供交流学习使用,因博主水平有限,有错误欢迎批评指正 作者(即博主本人): Akame Qixisi / Excel Bloonow IDE:Code::Blocks 17.12 编译器需要支持C14或以上标准(Code::Blocks如何设置见附录Ⅰ&…

python写出雷霆战机_利用Python自制雷霆战机小游戏,娱乐编程,快乐学习!

开发工具 Python版本:3.6.4 相关模块: pygame模块; 以及一些Python自带的模块。 环境搭建 安装Python并添加到环境变量,pip安装需要的相关模块即可。 先睹为快 在cmd窗口运行"Game10.py"文件即可。 效果如下&#xff1a…

太空战机c语言实验报告,c语言课程设计_太空战机提高篇.doc

c语言课程设计_太空战机提高篇 C语言课程设计--太空战机 一、游戏介绍 太空战机是玩家用键盘控制战机移动并发射子弹,消灭敌方的战机。敌方战机从右到左移动,同时上下浮动。同时隔一定的时间发射子弹,我方战机在受到敌方战机子弹攻击时&#…

java雷霆战机图片_JAVA开发《雷霆战机》雷电类游戏效果演示

原标题:JAVA开发《雷霆战机》雷电类游戏效果演示 JAVA开发《雷霆战机》 雷电类游戏 效果演示 | 附源码 hello,伙伴们! 人见人爱,花见花开的小编又来给各位小伙伴! 分享福利了! 掌声鲜花何在 话说最近给大家…

雷霆战机的java代码_JavaSwing雷霆战机(飞机大战)源代码

【实例简介】 JavaSwing界面的飞机大战,实现了开始,暂停,结束游戏界面,还实现了界面自己循环滚动。英雄机的键盘控制等。 【实例截图】 【核心代码】 PlaneWars └── PlaneWars ├── bin │ ├── bgmusic.wav │ ├──…

java雷霆战机豪华版代码_Java 打飞机 雷霆战机 游戏 源代码

Java 打飞机 雷霆战机 游戏 源代码 小学期做了一个类似打飞机的游戏 IDE为 IntelliJ IDEA 小学期做了一个类似打飞机的游戏 IDE为 IntelliJ IDEA 通过操作键盘上下左右和空格键来控制飞机移动和发射子弹,没有写什么背景音乐,源码附上,希望能帮…

x战机java_java战机游戏源码(含设计报告)

【实例简介】这是一个基于java开发的战机小游戏 【游戏说明】 ↑↓←→:控制方向,可实现8个方向 Q: 开火 W: 大决 F2:复活 注:游戏一段时间后可以看到“礼品状”物体飞过,“吃”掉它可以增加大决数量 【实例截图】 【核心代码】 p…