一边吃着火锅还唱着歌,一边玩着新鲜出炉的拼图游戏,别说这拼图游戏还真有点儿难,好一会了还没有拼成功呢。我就不信了,还能被自己捣鼓的游戏给难住。哎呀,点错了,不应该呀,这图片怎么还跳对面去了呢?
游戏过程中发现了一个问题,点击造型为5的图片时,图片直接跳到对面的空白位置去了,从逻辑上看,空白位于3号格子,图片位于4号格子,符合差值等于1的要求。显然单纯判断差值还是不够严谨,在完成一个作品之后,还需要进行多次测试,以避免产生类似博主这样的错误。
再来回顾一下我们判断图片能否移动的部分,由于用判断差值是否相差1来确定是否移动不够严谨,实际游戏中出现了积木跨行运动的奇怪现象。我们另外增加一个判断,检测一下差值为1的两个位置,是否处于同一行。判断是否同行,只需要对比一下空白位置与当前被点击的积木的y方向上的坐标,就可以了。
我们在差值为1的基础上,增加了一项坐标检测,以避免产生意料之外的结果。像这类意料之外的动作,我们称之为程序的BUG,在一个游戏中,BUG的存在可能会影响游戏的正常进程,而在实际生产工作中,一个程序错误甚至会导致经济上的损失。所以在一个作品完成之后,我们还需要对它进行测试并完善,以保证它的质量。