最近闲得慌,我琢磨着搞个小游戏玩玩。看着手机上那些消消乐,心想自己也试试呗。开始整《消消星星乐》了。
先学点皮毛,省得一头雾水
我一上来就去网上翻教程,找了些免费的工具试试水。看人家用的那些小软件,我下载了一个图形编辑器,捣鼓着画星星图标。画星星挺简单,就是个圆圈加几个尖角,但颜色得五颜六色的才行。我用了蓝色、红色、黄色,省得太单调了。画完存下来,一堆图片就在桌面上摆着了。
- 弄星星图像:打开编辑器,拿鼠标瞎拖拖,颜色一个个挑,试了好几遍,总算看着顺眼了。
- 琢磨规则:消消乐不就是点一样的凑一堆嘛我掰着手指头算,三五个星星一排就清掉,加分数,别整太复杂了。
接着开动写代码。我找了个编程软件,从头敲键位。先摆个空白屏幕,把星星一个个往里放。试运行一次,星星全挤一块儿了,乱糟糟的,根本没法玩。
我挠挠头,得加个随机生成呗。重新写函数,让星星自动散开点位置。跑起来看,星星是整齐排开了,但点起来没反应,分数不动弹。这不白折腾了嘛我查查教程,原来少了碰撞检测,赶紧添上代码。这一下子搞通顺了,点对星星就消失,分数往上窜。
慢慢修修补补,真够磨人
兴冲冲给老婆试玩,她说界面丑死了。颜色太亮了,晃得眼睛疼。我立马换颜色,调成柔和的调调,星星也压扁一点看着可爱。还加了点音效——消除时“biu”一声响,算小惊喜。
- 调界面:颜色换了个遍,选了淡蓝底加彩星,清爽点。
- 加音效:找个免费的声音文件,插进去代码里,听个响儿。
以为大功告成,结果儿子一玩就卡住了。他是手速贼快的那种人,点点点,游戏就闪退了。这明显优化没搞我打开日志看,原来是内存吃太满了。加了点释放资源的代码,删掉多余的东西,这下总算跑得流畅。
难度太低也不行,玩久了没劲儿。我琢磨着加关卡呗。开始设计难度梯度:第一关简单星少点,后面星多了还得限时搞时间差。写计时代码,限时60秒消多少分过关。加了个失败动画,星星碎掉,挺带感的。
收尾时,心里美滋滋
前后捣鼓了一周多,天天吃完饭就坐电脑前。成品是个小apk文件,在手机上装好跑跑。全家人都抢着玩,分数上去了还尖叫。看着那些星星一闪一闪消掉,分数猛涨,成就感蹭蹭的。
为啥整这玩意儿?去年老家封控时,闷得发慌想找点事干。学过点编程皮毛,就拿游戏来练手呗。现在能当家庭聚会小道具了,挺乐呵。