//Kollar om draget är tillåtet enligt reglerna public bool isLeagalMove(Move move, ChessPiece[,] currentBoard) { ChessPiece current = currentBoard[move.getfromX(), move.getfromY()]; if (current is Horse) { if (board.squareStatus(move, currentBoard) == 1)//En av spelarens egna pjäser står i vägen { return false; } return true; } else if (current is Farmer) { if ((move.getfromX() != move.gettoX() && board.squareStatus(move, currentBoard) == 2) || (move.gettoX() == move.getfromX() && board.squareStatus(move, currentBoard) == 3)) //bonden har tagit en enemy på sidan eller gått rak fram och inte träffat på ngn pjäs { return true; } return false; } else { if (move.isHorizontal() == true) { return checkHorizontal(move, currentBoard); } if (move.isVertical() == true) { return checkVertical(move, currentBoard); } if (move.isDiagonal() == true) { return checkDiagonal(move, currentBoard); } return false; } }