一款Android拼图游戏

  关于拼图的作品,网上有很多了,此次是自己拿以前自己用java写的拼图算法,做的一款小游戏。

  游戏核心算法:确保每次初始化的图片数组有解,0表示空块。

  如下: 

    /*
	 * function: check the map array and make sure it is validity. input:length,
	 * map output:boolean;
	 */
	public boolean parityCheck(int length, int[] a) {
		// 返回数组的排列的逆序数加上0元素行号和列号的奇偶性,true为偶,false为奇。
		int v = 0;
		int zeroIndex = 0;
		for (int i = 0; i < length; i++) {
			for (int j = i + 1; j < length; j++) {
				if (a[i] > a[j]) {
					v++;
				}
			}
			if (a[i] == 0) {
				zeroIndex = i;
			}
		}
		int lineIndex = zeroIndex / COLS + 1;
		int colIndex = zeroIndex % ROWS + 1;
		return ((lineIndex + colIndex + v) % 2 == 0);
	}
  游戏界面动作:每点击一次图块,计算相邻的空位,移动内存数组,根据内存数组在界面Canvas画图块即可

  完成后,运行的界面大概如下 (下面一次为初始第2张图片界面,拼成后界面,菜单界面):

  

  菜单解释:

  看原图:可以快速显示(停留时间可以设置)一下原图是什么样的,方便预览原图,当然高手可以不看原图去拼。

  上张图/下张图:这个简单了,直接调出系统自带的相对当前的上一张/下一张图片,进行拼图。

图片来源:可以选择系统自带的,可以从自己手机的相册里面选取,也可以用相机现场拍照,获取图片。

  难度:可以选择容易模式(2x2,2x3),普通模式(3x3,3x4),困难模式(4x4,4x5,5x5,5x6),地狱模式(6x6,6x7....)。。。。根据手机/平板的大小。越多难度越大。

  音乐:可以选择是否播放系统自带的音乐,或者自己从手机选择音乐,作为背景音乐播放。

  空块:设置空位的占位图片,系统自带的有,也可以自定义。

  关于:软件的作者,版本等信息。

看一个困难模式的(依次是困难模式的一张图界面,选择图片来源界面, 看原图界面):

  

  后续再加上积分和等级功能,再连接上云数据库,就更加有趣了,待更新。

  

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值