本文整理汇总了C#中Piece.SendMessage方法的典型用法代码示例。如果您正苦于以下问题:C# Piece.SendMessage方法的具体用法?C# Piece.SendMessage怎么用?C# Piece.SendMessage使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Piece
的用法示例。
在下文中一共展示了Piece.SendMessage方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: MovePiece
void MovePiece(Piece piece)
{
if (!_start)
{
return;
}
int index = piece.index;
// 周りに空いているマスがあるか調べる
int y = piece.y;
int x = piece.x;
int k = y * Width + x;
Debug.Log(x.ToString() + ":" + y.ToString());
const float duration = 0.15f;
if (IsEmpty(x, y - 1))
{
// 上
grid[k - Width] = index;
// grid[k] = Empty;
piece.targetPosition = GetPosition(x, y - 1);
piece.pos = k;
piece.y = y - 1;
Debug.Log("up");
piece.SendMessage("Move", duration);
_count++;
}
else if (IsEmpty(x, y + 1))
{
// 下
grid[k + Width] = index;
// grid[k] = Empty;
piece.targetPosition = GetPosition(x, y + 1);
piece.y = y + 1;
piece.pos = k;
Debug.Log("down");
piece.SendMessage("Move", duration);
_count++;
}
else if (IsEmpty(x - 1, y))
{
// 左
grid[k - 1] = index;
// grid[k] = Empty;
piece.targetPosition = GetPosition(x - 1, y);
piece.x = x - 1;
piece.pos = k;
Debug.Log("left");
piece.SendMessage("Move", duration);
_count++;
}
else if (IsEmpty(x + 1, y))
{
grid[k + 1] = index;
// grid[k] = Empty;
piece.targetPosition = GetPosition(x + 1, y);
piece.x = x + 1;
piece.pos = k;
Debug.Log("right");
piece.SendMessage("Move", duration);
_count++;
}
}