开发工具:
文件大小: 1mb
下载次数: 0
上传时间: 2013-03-08
详细说明: 曾听说你会玩“连连看”,游戏,刚刚碰上我们班做项目小组比赛,突发奇想,想做一个试试,经过我小组十来天的奋战,终于完成了差不多,想让你开心开心。 哎,可我郁闷的是尽管我使出了浑身解数纵是削尖了头也没能实现现在的效果,最后还是找了很多学才解决了问题,哎有时候就纳闷了,为什么我做不到啊... 在我的开发过程中,你可以发现我是这么做的: a. 使用数组实现算法的核心 b. 使用布局和按钮来实现操作 c. 使用布局实现用户界面 d. 使用线程在同一时间做更多的事情 e. 使用静态变量来减少内存的开销,并且保持信息的一致性 f. 使用文件来保存用户的配置信息 g. 使用声音让程序更有生气 动手前的准备 看看别人现成的游戏 在盖房子之前,我们都会先打好地基,然后搭起框架,最后再就是一点一点添砖加瓦,做软件也是一样的道理,都是从大体的框加向细节部分设计实现,现在,我们开始吧。 其实不管是做软件也好,做游戏也好,只要是写程序,在动手之前是一定会存在需求和分析的,如果不经过一定的分析就开始动手写程序,那么,这个程序一定会很难写下去的,最后的结果可能会导致放弃。 那么,在我们动手之前,让我们先简单的分析一下吧。由于“连连看”并不是一个我们凭空开发的游戏,并且 网上也已经有很多别人已经开发好的版本,因此,对于我们来说,我们已经拥有了一个很好的原型(比如说 QQ 游戏中的“连连看”),分析起来也应该是轻松得多。由于 QQ 中的“连连看”是网络版,为了开发上的简便,我们先放弃网络功能,做一个简单的单机版就行了。现在,让我们现在来看一看 QQ 中的连连看吧。说白了可以直接用的就能直接在网上找别人的代码直接Ctrl+C+V 分析游戏规则找出算法 通过上面的分析,我们已经知道了游戏规则,可是,我们怎么样去实现呢? 其实所谓的实现也就是算法,那我们怎么样找出算法呢,或者自己动手玩一玩别人做好的。 通过观察,发现,可以将游戏中的地图看作是一个二维数组,其中的所有图片(以下称“点”)可以看作是数组中的一个具体的元素。那么,游戏中相同的图片可以看作是数组中不同位置两个值相同的元素。至于直线,让我们给组数中的每一个元素赋一个特殊的值如 0 ,以表示地图上空白的位置。并且同时规定:当连续的具有该特殊值的点的横向索引或纵向索引相同时,可以认为这是一条直线,当数组中两点的值相同并且两点间只需要不超过 3 根直线能连接起来的时候,就让这两点的值变为 0 ,如果数组中全是 0 值的点,就认为游戏已经结束:) 用代码来描述程序的结构 : 假设用户开始了游戏: 准备地图 while ( 等待用户选择点 ) { 当前点 = 用户选择的点 if ( 存在上次选择的点 ) { if ( 当前点与上次选择的点可消除 ) { 消除两点; 上次选择的点 = null ; if ( 地图上已没有可消除的点 ) { 游戏结束; } } else { 上次选择的点 = 当前点; } } else { 上次选择的点 = 当前点; } } 游戏结束; ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.