- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
?
?
基于Java的飞行棋的设计与实现
?
?
郑艳
摘要
随着科技的不断发展,越来越多的人们将玩游戏作为主要的休闲方式。飞行棋作为一款经典的小游戏,一直都很受大家的喜欢。该文章用JAVA来编写一个简单的飞行棋游戏。
【关键词】飞行棋JAVA界面设计游戏地图
随着科技的不断发展,人们越来越喜欢电脑游戏或者手机游戏。作为经典游戏之一的飞行棋一直深受人们的喜欢。
相传飞行棋是中国人的发明的,是中国玩具公司生產的,据说是为了纪念二战时飞虎队的卓越功勋,是pachisi游戏的变种。飞行棋棋盘上这种转圈式的路程设计来自于空战中的“拉弗伯雷圆圈”。参加编队的飞机不但保持在一个水平面上飞行,而且可绕圆圈盘旋爬高。这样就可以利用防御队形进行盘旋以取得高度优势,伺机进行攻击。
飞行棋游戏开发是为了方便玩家在电脑上和其他玩家联网下棋,这样更加方便快捷。让更多的人参与进来。
1飞行棋规则
棋盘上有红黄蓝绿四个颜色,表示可以有四个人进行游戏。每个玩家有4架飞机,哪个玩家的4架飞机全部飞进目的地,谁就臝得了这场游戏。
在游戏地图上一共有四个状态:1、正常状态;2、碰见地雷,后退6格;3、暂停,原地停止一回合;4、营运轮盘,有6种幸运设置:前进、后退、交换位置、转移、暂停一次、奖励一次、设置地雷、轰炸(将对方飞机炸退6格)。
4个玩家按照事先约定好的顺序扔骰子,刚开始时,玩家可以连扔三次骰子,只有扔到6点,才能启动一架飞机。之后玩家按顺序扔骰子,扔到几点就顺时针走几步。在游戏过程中,只要飞机的最后落脚点落在了其他玩家的飞机上,就可以把该玩家的飞机请回停机场。在游戏进行过程中,扔得骰子点数为6的玩家可以继续扔骰子,直至骰子点数不是6或者游戏结束。飞行棋在地图上行走时,如果落在了是和自己颜色相同的格子里,可以跳到前一个和自己颜色相同的格子里。
在游戏过程中会出现“迭子”现象,所谓“迭子”现象就是一方玩家的两架及以上的飞机飞在了同一个格内,这时几架飞机会重叠式的落在一起。这时的对方玩家的飞机不能从此飞过,如果对方玩家的飞机正好落在了此格中,则对方飞机和“迭子”飞机一起请回停机场。如果所仍的骰子点数大于到达“迭子”处所需的步数,则多余步数从“迭子”处往回走剩下的格数。如果其他玩家所仍得点数为6并且他的飞机与“迭子”处的步数小于6时,此时其他玩家的飞机会停留在“迭子”处的上方,按照游戏规则,该玩家可以继续扔骰子,然后按照扔得的点数继续往前前进。如果棋子在准备通过虚线时有其他棋子停留在虚线和通往终点线路的交叉点时:A、如果对方是一个棋子,则将该棋子逐回基地,本方棋子继续行进到对岸;B、如果对方是两个棋子重叠则该棋子不能穿越虚线、必须绕行。
2飞行棋设计思路
2.1棋盘设计
参照纸质版地图来进行电子版地图设计。游戏界面设计尽量和纸质版相似,这样玩家不会觉得陌生。停机场:对应颜色的大方格就是停机场,每个玩家有4架飞机。终点:棋盘正中间的位置。每个玩家的4架飞机都飞入相应颜色的终点就赢得了游戏。骰子:正方体,六个面分别对应一个点、两个点、三个点、四个点、五个点、六个点。扔骰子面朝上的点数就是玩家走的步数。
2.2游戏设计
此游戏所使用的软件开发工具是Eclipse,所用编程语言是JAVA。主要用的是JAVA的基础图形用户界面Swing。通过Swing可以设计游戏界面,导入绘制好的图片,或者加入文字信息或者声音信息等等,并且可以结合JDBC和I/O操作进行相关的数据保存。
该游戏设计采用模块化设计方式。由实现功能来进行模块划分,把系统的主要功能划分成几个关键模块,分别加以实现。由顶层模块调用它的各个子模块来实现整个功能,而每个下层模块再调用它的子模块,以此类推。
该飞行棋程序要实现四大功能:飞机起飞,迭子情况,幸运轮盘,重新开始,游戏结束。
游戏玩家主要通过鼠标来操作,所以设置了16个对象,骰子和16架飞机,由这17个对象引发相关的操作。
该游戏主要由玩家操作鼠标完成,所以要调用MouseEvent类。MouseEvent类是公共类。这个类里封装了有关鼠标操作的相关事件,包括单击鼠标事件、拖动鼠标事件等等。首先要对17个对象添加事件监视器this.addMouseListener(this),一旦受监视的对象有相关的操作,就会引发相关的事件响应,发送MouseEvent类的实例给鼠标监视器事件用来帮助处理鼠标事件首先判断是否该玩家飞机己停止前进以及游戏是否是结束或开始状态。如果轮到玩家的飞机要落下,则首先要的到飞机落下的坐标(即鼠标单击的坐标),然后将此坐标转换成窗口坐标并调用相应的方法让飞机停在该格子当中。
JAVA编写的程序可以在网络环境下运行,主要是因为JAVA提供了两种功能强大的网络支持机制来满足不同的要求,访问网络资源的类URL和用于通讯的类Soc
文档评论(0)