FlappyBird和2D迷宫,用JAVA怎么编写?

yumo6668个月前 (03-10)技术文章114

今天外面的阳光好大好大,虽然温度很低,但是看着午后的阳光就让人想起小时候的和煦、悠闲。

既然如此,那就周末跟大家分享几个回忆中的游戏吧,不过当然不是原版本,而是用JAVA实现的模仿复刻版本~

MazeBattles

一款用Node.js 和 Socket.io编写的迷宫小游戏,看着像是小时候玩的最最原始的2D迷宫。

没有3D建模,没有怪物追赶,只有最简单的黑色平面和白色线条组成,但是TJ君一直觉得,最简单的才是最好玩的。看看现在那些动不动就吹嘘自己华丽效果的3A大作,有几个能让人找到小时候的那份初心和快乐?扯远了,我们继续说这个MazeBattles,它采用了 Prim's MST 算法来实时生成迷宫,又使用了Breadth-First Search (BFS) 算法来求得迷宫走出的解决方案。

迷宫一共有个难度,分别是easy、medium、hard、expert,逐步上升,这个从迷宫的大小就可以看的出:

除了单人模式,MazeBattles还提供了多人对战模式,是不是比小时候记忆中一个个小伙伴轮流玩更有意思呢?

最近我还整理了一批包括C++、java、Python、JavaScript等各种语言,还有操作系统、数据结构、设计、网络等各方面的学习资料,大家可以关注公众号TJ君,回复武功秘籍领取。

FlappyBird

FlappyBird,严格来说并不是很小时候的回忆,但是TJ君没想到的是,已经离它当年火爆全球的时候有了8年之久了,时光就是如此在不知不觉中远去,回头一看,彷佛停在原地的只有那个懵懂的自己。

FlappyBird,可能年纪轻轻的小伙伴不是很了解,它是一款操作及其简单但是难度极高极易上头的闯关游戏,只需要控制小鸟躲过不断出现的水管,但是由于小鸟只有一个动作,跳动,所以极难操作。

TJ君这次介绍的是一款开源基于Java基础类库编写的FlappyBird,具备原版的所有功能,相较原版优化了游戏难度(毕竟原版实在太难了会劝退不少心智还未成熟的年轻人),还加入了移动型水管,丰富了游戏的维度及可玩性。

FlappyBird只需要通过 java -jar FlappyBird.jar就可以直接运行,也可以运行源码中的 App:main 方法。

因为全全程只有一个动作,所以也就只有一个按键,空格键。

周末在家,玩玩小游戏回忆下当年,学习下JAVA编写游戏,感觉也是棒棒的,喜欢的小伙伴赶紧来吧。

项目地址:

https://github.com/kingyuluk/FlappyBird

https://github.com/HenryDavidZhu/MazeBattles.com

相关文章

程序员用Java实现扫雷小游戏,引来广大网友狂点赞,直呼炸天

扫雷游戏想必大家都玩过,但有没有想过自己开发呢?Java开发过许多小游戏,其中扫雷给小白来练手非常适合不过了。话不多说,首先展示一下游戏界面:实现过程如下:首先设计一个二维数组,用于存放雷和周围八个格...

用 Java 语言,写一个植物大战僵尸简易版

作者 | 林Lychee来源 | 程序员小灰前言有谁没玩过植物大战僵尸吗?小灰的一位读者,用Java语言开发了自己的植物大战僵尸游戏。虽然系统相对简单,但是麻雀虽小五脏俱全,对游戏开发感兴趣的小伙伴可...

Java实现斗地主游戏:从扑克牌到游戏逻辑的完整实现

Java斗地主:游戏逻辑与实现概要介绍:斗地主是一款广受欢迎的纸牌游戏,现在我们将使用Java编程语言来实现这个经典游戏。本教程将引导你从创建扑克牌到实现游戏逻辑的完整过程。让我们开始吧!扑克牌的表示...

手把手教你制作俄罗斯方块小游戏

俄罗斯方块游戏规则:完整的横条会随即消失。 由小方块组成的不同形状的板块陆续从屏幕上方落下来,玩家通过调整板块的位置和方向,使它们在屏幕底部拼出完整的一条或几条。这些完整的横条会随即消失,给新落下来的...