大家今天跟大家唠唠我最近搞的一个小玩意儿——iOS 上的消除游戏。别看这东西好像挺简单,真做起来还挺有意思的,我这过程可没少折腾。
捣鼓的开端
我就琢磨着,市面上消除游戏这么多,我做个啥样的《开心消消乐》?太经典,我这小胳膊小腿的肯定拼不过人家。《糖果传奇》?画风挺可爱,但玩法好像也差不多。想来想去,我决定还是先从最基本的做起,就那种最简单的,三个一样的就能消掉的。
开始动手
我先是在纸上画画,大概想想这游戏得有得有个游戏界面?得有各种各样的小方块?还得能让玩家点来点去,然后“砰”的一下消掉,想想就带劲!
然后我就开始在 Xcode 里折腾。我记得我先是弄个底板,用的是那个...那个叫啥来着,对,UIView
,就当是游戏的“地基”。然后往上“盖房子”,也就是那些五颜六色的小方块。我用UIButton
,因为这玩意儿能点,点一下就能触发个啥事件,正合适。
小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
我弄一堆颜色不一样的方块,乱七八糟地堆在上头,那叫一个丑!不过好歹是能显示出来,我这心里也算有点底。
让方块“活”起来
就得让这些方块能动起来。我得让玩家能选中一个方块,然后跟旁边或者上下的方块换个位置。这可把我给难住,我这脑子转好几个弯,才想明白该咋弄。
我记得我当时是这么干的:先给每个方块都加个“监听器”,就跟安个小雷达似的,玩家一点,我就知道点的是哪个。然后,我再判断一下,这个方块旁边有没有别的方块,能不能换位置。能换,就“嗖”的一下,俩方块交换位置;不能换,就啥也不干。
这中间我还遇到个小麻烦,就是有时候玩家手速太快,点得我这程序都反应不过来。后来我加个..“防抖”?对,就是这玩意儿,让玩家点一下之后,稍微等一会儿才能点下一次,这才算解决。
实现消除
方块能动,接下来就是最重要的——消除!我得让三个或者更多一样的方块连在一起的时候,能“砰”的一下消失掉,还得给玩家加分,这才有成就感嘛
这块我琢磨好久,用一个笨办法:每次玩家交换完方块,我就检查一下整个游戏界面,看看有没有横着或者竖着连在一起的三个一样的方块。有的话,就把它标记一下,然后“嗖”的一下,从界面上移除掉。这还不算完,我还得把上面的方块“掉”下来,填补空位,就跟俄罗斯方块似的。
- 先检查横着的
- 再检查竖着的
- 把一样的方块“干掉”
- 让上面的方块掉下来
- 给玩家加分!
这一套流程下来,还真像那么回事儿!看着屏幕上五颜六色的方块“砰砰砰”地消失,我这心里别提多美。
修修补补
这中间我还修补好多小问题。比如说,有时候方块消掉之后,上面的方块掉不下来,卡在那里;有时候玩家明明没点到方块,结果方块自己动...这些小 bug,我都是一点一点调试,一点一点改过来的。
我还加点音效,就是那种“叮叮当当”的声音,感觉这样玩起来更有感觉。我还弄个计分板,让玩家能看到自己得多少分,更有动力玩下去。
最终成果
我这小游戏也算是有点样子。虽然跟那些大厂做的没法比,但好歹是我自己一点一点做出来的,也算是小有成就!现在我没事儿的时候,还会拿出来玩两把,感觉还挺有意思的。
这回的分享就到这里。以后我要是又做啥好玩的东西,再来跟大家唠唠!