扫雷是一款最经典的休闲益智小游戏之一,也许Windows最初包含它的目的是为了让用户练习鼠标操作。曾经
为了破记录,和几个朋友一起疯狂地玩扫雷,甚至总结出了像"一二一"这样实用的口诀。高级模式下,本人的最高记录可是120多秒阿。
做一款曾经非常喜欢的游戏,是一件很有成就感的事情,更有趣的是还做得几乎一模一样。
先看张图吧
很像吧?是用Java+SWT写的。所以不局限于Windows系统,再看一张Linux下的图片,也很漂亮,
Java Web Start地址
http://daoenpan.googlepages.com/minesweeper.jnlp
这个程序麻雀虽小,却也五脏俱全,在这款游戏里用到了Java的很多方面,包括I18N国际化,C11N个性化,自定义SWT控件,SWT的资源管理等等,是一个学习Java编程非常好的例子。
在程序开发过程中,使用了单元测试JUnit,程序发布方面使用了Ant脚本和Proguard混淆压缩器,特别值得一提的是,Windows下的
发布程序利用了JDK的pack200,使得整个程序包从2M多减到900多K。在第一次运行的时候启动程序会自动调用unpack200解开压缩的Jar
包,这时会出现几个DOS窗口,但是这只发生在第一次运行的时候。
虽然我做的这个扫雷有几个Windows自带的那个扫雷没有的功能,比如支持多种语言,作弊功能,但是我觉得,只提供可运行程序没有太大的意义。所
以我提供了所有的Java源代码,以供感兴趣的朋友下载。作为软件,错误是难免,请朋友们将发现的错误告之我,你可以通过点击帮
助菜单的About对话框里我的Email链接给我发Email,非常感谢。
作弊
下载
Windows下可执行程序包: Minesweeper.zip ,解压后,双击Minesweeper.exe运行程序,需要JRE 1.4+,如果你需要其他系统的可执行程序包,请来信联系,或者你可以编译下面的源代码。
Java源代码 minesweeper_src.zip ,不包括所用的SWT和log4j包。
如果你要运行源码包里的build.xml, 还需要把minesweeper_supports.zip里的supports目录拷到你的项目目录下。
最后要说是,加拿大心理学家PiersSteel在他的报告里, 对这款最平常的Windows小游戏感慨道,
“人们在扫雷游戏上花费的时间, 可以为这个社会创造数十亿美元的财富。” 自从做了这款游戏,特别是在加上作弊功能后,就再也没有兴趣长时间的玩了。
更多的截图 http://www.blogjava.net/xilaile/archive/2007/04/25/113648.html
扫雷相关的链接
Windows小游戏之扫雷世界纪录到底多快