我正在制作folt克隆以获得乐趣,而我在探索功能方面遇到了麻烦。基本上我想在连接的瓷砖时重置网格位置> 3.这是游戏中可能发生的事情的一个例子......
current_position=[3,4]
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 2 2 0
0 0 0 1 0 0
0 0 0 1 2 3
move(down)
current_position=[4,4]
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 2 2 0
0 0 0 1 2 0
0 0 0 1 2 3
resetGridLocations(explore([4,4]))
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 1 2 0
0 0 0 1 0 3
score += 3
Here是我游戏源代码的JS bin。您可以通过在控制台中调用move(keyCode)
来播放半功能版本。目前,explore()函数在位置周围搜索2个层以获得重复值。它适用于上面的示例,但不适用于下面的较大组。递归解决方案似乎很有吸引力。
0 0 0 0 0 0
0 0 0 0 2 0
0 0 1 1 2 0
0 0 0 2 2 0
0 0 0 1 2 0
0 0 0 1 2 3