
很简单的,先这样再这样,最后再这样就可以了
照俄罗斯方块逻辑做呗
不是移动方块 是类似接水管的游戏
每个图块标记一下进的方向和出的方向,然后程序挨个算
照拼图的思路做呗
显示和数据分开,显示就正常显示,点击后旋转就行。
数据定义一个二维数组,每个元素代表一个格子,然后每个二维数组中的元素放一个对象包含属性上/下/左/右/类型/是否贯通
上下左右属性用0/1表示0代表不通1代表有管道
旋转后更改当前元素的上下左右数值顺序,看你是逆时针还是顺时针更改就行
数值变换完毕后按照扫雷的理念递归判断周围四个元素的内容,用当前的和周围的判断是否贯通,然后更改当前的和周围的管道属性,然后再判断周围贯通的管道周围是否贯通。
我的思路大概就这样,不过这种游戏百度应该有算法的
看看这个想法呢:大致看了ui,一个格子 ,最多有五个点,上下左右中心。然后每个格子上管道的位置,设置这五个点哪些点是可以经过,哪些不能经过。这些点就构成要给二维数组,直接寻路
二维数组 记录一下正确旋转角度 每次操作完对比就ok
参考这个呀
每个方块都有四个端口,旋转操作就是改变端口开闭状态,每操作一次,从起点开始深度搜索,判断是否到达终点。很简单。
简单啊,每个格子有个旋转角度,配置是连接格子的旋转角度,对比连接格子的角度都相同就完事了
格子4个旋转角度 0,90,180,270
记录正确角度,的确诶很简单 
这种是和策划有仇才这么干,哈哈。
还有种方法,记录格子的连通方向
每个格子有上下左右4个变量的bool值
如:
{ up = false, down = false, left = true, right = true } --不转弯格子 旋转的时候改变bool值
{ up = false, down = true, left = true, right = true } --三叉格子
{ up = false, down = true, left = false, right = true } --转弯格子
比如:
从起始点向上找,上面的格子 down=false 就跳过,down=true 看其它3个方向,比如 right=true 就向右递归找下去,找到终点就通关
