仅900行的Java简易《炸弹人》(无AI,适合初学者源码剖析)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/winx_coder/article/details/52232947

        一直想了解下十分流行的小游戏《炸弹人》后端大致的代码结构和程序逻辑是怎么样的,但又苦于大型游戏项目代码行数太多,没时间阅读。终于在GitHub上找到一个代码量仅900行的Java《炸弹人》游戏HAW-PO-LA-Bomberman




1.项目下载

(1)Github项目首页

(2)CSDN资源下载

2.项目简介

HAW-PO-LA-Bomberman是一个非常简单的《炸弹人》Demo,是HAW-PO-LA-Bomberman-TeamLKT的子项目。(HAW-PO-LA-Bomberman-TeamLKT主要用于研究强化学习(reinforced learning)AI算法。)

这个游戏不包含AI,也没有注重游戏的美观和可玩性,所以代码非常精炼,适合初学者进行源码剖析

 

代码量:878行 (前端:237行,后端:641行)

(包含注释:1353行)


前端GUI:使用JDK中的AWT和Swing库绘制GUI(未调用第三方游戏引擎)


3.项目要点

(1)后端与前端代码分离,耦合性低

(2)通过递归,巧妙地实现了Bomb爆炸后链式引爆相邻的Bomb(代码位于Game.java/chainExplosions()函数中)

(3)有多个参数是可配置的(配置参数须在GuiMain.java中修改)

(4)细节:可同时放置多个Bomb,定时器互不影响;防止Bomb的冲击波穿透墙壁……


4.代码简要分析

4.1 后端UML类图


4.2 类-简要说明

(1)后端:




(2)前端:





猜你喜欢

转载自blog.csdn.net/winx_coder/article/details/52232947