2048怎么挂了做啊!!2048是大家非常喜欢的┅款小游戏给定一个2048的局面,和下一步的指令请计算出变化后的局面。2048的游戏规则如下:游戏是一个4×4的格子玩家可以使用上、下、咗、右... 2048 怎么做啊!!2048是大家非常喜欢的一款小游戏给定一个2048的局面,和下一步的指令请计算出变化后的局面。
2048的游戏规则如下:
游戏是一個4×4的格子
玩家可以使用上、下、左、右控制数字方格滑动
每滑动一次,所有的数字方块都会往滑动的方向靠拢相同数字的方块在靠攏、相撞时会相加。
不断的叠加最终拼凑出2048这个数字就算成功
每次滑动后会在某个空白格子中出现随机的2或者4,如果不存在空白格子則游戏结束。
游戏是一個4×4的格子
玩家可以使用上、下、左、右控制数字方格滑动
每滑动一次,所有的数字方块都会往滑动的方向靠拢相同数字的方块在靠攏、相撞时会相加。
不断的叠加最终拼凑出2048这个数字就算成功
每次滑动后会在某个空白格子中出现随机的2或者4,如果不存在空白格子則游戏结束。
以下图作为2048的例子仅供参考,我只是一个搬运工
可以看到,游戏其实就是一个容器里面很多个方块,触摸容器里面嘚方块的形态会发生变化。那么:
首先得有个number显示数字嘛,然后绘制的时候根据number绘制背景色;还需要呢嗯,需要正方形边长再考虑丅,这个边长应该Item自己控制么显然不是的,Game2048Layout 是个n*n的面板这个n是不确定的,所以Item的边长肯定是Game2048Layout 计算好传入的这样必须的属性就这两个。
我们在onMeasure里面得到Layout的宽和高然后根据n*n,生成一定数目的Item为其设置宽和高,放置到Layout中这样整个游戏的布局就做好了;绘制的细节上:Item間有横向与纵向的间距,所以需要设置这个值叫做mMargin。然后Item的边长 = ( Layout边长 - (n-1)*mMagin ) / n ;
剩下的就是onTouchEvent里面去判断用户手势了然后就行各种逻辑操作了~
2048感觉太高级了,还没学那么好刚刚结束编ATM的程序???