拼图游戏实现的思路

拼图游戏实现的思路

ID:9020974

大小:14.42 KB

页数:3页

时间:2018-04-15

拼图游戏实现的思路_第1页
拼图游戏实现的思路_第2页
拼图游戏实现的思路_第3页
资源描述:

《拼图游戏实现的思路》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、拼图游戏实现的思路正在学习JAVA,对JAVA有了一些基本的了解。需要多编程,通过一些具体实例来提高编程水平。网上有许多游戏的例子,如拼图、俄罗斯方块、24点等等,但人家是人家的,只能参考不要照搬,不然不能真正提高自身水平。编程最重要的是什么?每个人的认识可能不一,但我认为最重要是思路和方法。有了思路和方法才能通过语言来实现,进而不断优化。比如拼图游戏,我们都玩过,但如何实现的,我们能不能自己编一个?先不参考别人的(网上有许多,Baidu一下会有不少),自己先想一下解题思路。。。。1、图片的载入

2、先从简单的开始,最好是矩形图片如300X300的,以后再考虑长方形的,异性的;try{加载图片资源img=Image.createImage("/pic.png");}catch(Exceptione){System.out.println("Notfoundpic");}//画图g.drawImage(img,getWidth()/2,getHeight()/2,Graphics.HCENTER

3、Graphics.VCENTER);//或采用以下方式g.drawImage(img,x0,y0,

4、Graphics.LEFT

5、Graphics.TOP);2、图片的分割将载入的图片按要求分割,如3X3、4X4等;分割的图片放入图形数组;构造一个图片分割的方法,网上有不少,可以参考;  publicstaticImage[]splitImage(Imageimg,introws,intcols)  {  if(img==null)  {  returnnull;  }  Image[]result=newImage[rows*cols];  intw=img.getWidth()/cols; 

6、 inth=img.getHeight()/rows;  for(inti=0;i

7、Graphics.TOP);  }  returnresult;  }3、初始化以3X3九宫格

8、为例,按    123  456  780  载入,0为空白处;将图片打碎,随机化,如变为:  513  468  2074、完成状态的判断当图形达到初始状态时,拼图完成。载入图片时,同时也构造了一个数字矩阵a[i,j]如上例当矩阵中的值都满足:3*(i-1)+j时拼图完成。一般情况/**intm图片的行数  intn图片的列数*/  publicbooleanisFinish(){    for(inti=0;i

9、j]!=(i*m+j)){    returnfalse;    }    }    }    returntrue;    }  5、可移动块的判断分割的子图片,能否按上下左右移动,需要加以判断上下移动,改变图片位置的y值,数字矩阵的行值;左右移动,改变图片位置的x值,数字矩阵的列值;即经过变更后数字矩阵满足:a[i,j]=0,则移动有效;如上例,6向下,2向右,7向左都为有效移动。6、移动的实现键值响应,一个移动是有效的,需要重绘图形来实现。移动的过程是一个位置交换的过程。如上例,6向下,是

10、6与0位置互换,数字矩阵值和图片互换。构造一个方法swap()实现以下要求:(1)数字矩阵a[i,j]数值互换;(2)图片重绘,图片互换;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。