做三消项目需要做一个提示用户哪个格子可以消除的功能,需要对整个棋盘进行遍历。
原来没用协程的代码
public void GetTip()
{
GameObject go1, go2;
int[] way = { 1, -1, -10, 10 };
int max = (xl - 1) * 10 + yl - 1;
for (int x = 0; x < xl; x += 2)
{
for (int y = 0; y < yl; y++)
{
int gid = GetGridID(x, y);
for (int i = 0; i <= 3; i++)
{
int newGid = gid + way[i];
if (newGid <= max && newGid >= 0 && newGid % 10 < yl)
{
Swap(ref DicGrid[newGid].GridType, ref DicGrid[gid].GridType);
if (ComparatorTip(newGid))
{
go1 = DicGrid[gid].gameObject;
go2 = DicGrid[newGid].gameObject;