public bool CheckBetweenPiece(int targetRow, int targetCol)
{
int startX = -1;
int startY = -1;
bool result = false;
for (int i = 0; i <= 2; i++)
{
for (int j = 0; j <= 2; j++)
{
if (aroundPosition[i][j, 0] == targetRow && aroundPosition[i][j, 1] == targetCol)
{
if (mainBoard[selectedPieceX + startX, selectedPieceY + startY] == '|')
{
result = true;
}
else
{
startY += 1;
}
}
else
{
startY += 1;
}
}
startX += 1;
startY = -1; // รีเซ็ต startY ใหม่ทุกครั้งที่ย้ายไป row ใหม่
}
// เพิ่มเส้นทางเพิ่มเติมที่ต้องการเช็ค
int[] additionalPaths = { -2, 0, 2 }; // ค่าของเส้นทางเพิ่มเติมในแนวดิ่ง
foreach (int additionalPath in additionalPaths)
{
int additionalRow = selectedPieceX + additionalPath;
int additionalCol = selectedPieceY;
if (additionalRow >= 0 && additionalRow < mainBoard.GetLength(0) &&
additionalCol >= 0 && additionalCol < mainBoard.GetLength(1))
{
if (mainBoard[additionalRow, additionalCol] == '|')
{
result = true;
}
}
}
return result;
}