private boolean CanMove(int oldX, int oldY, int newX, int newY){
		if(!newBoard[oldY][oldX].IsPieceKing()){	//if the piece is not a king
			
			if(newBoard[oldY][oldX].GetPiecePlayer() == 1){	//if the piece belongs to player 1
				if(CanJump(oldX, oldY, newX, newY)){	//test if the move is a valid jump of the opposite player's piece
					return true;
				}
				//test if the move is valid for a player 1 piece (can move one square diagonally up as long as it is unoccupied
				else if((newX == oldX + 1 || newX == oldX - 1) && (newY == oldY - 1) ){	 
					if(newBoard[newY][newX].IsAvail()){	//if the space if available it is a valid move
						
						return true;
					}
					else{	//space is occupied - invallid move
						return false;
					}
				}
				else{	//invalid move
					return false;
				}
			}
			else if (newBoard[oldY][oldX].GetPiecePlayer() == 2){	//if the piece belongs to player 2
				if(CanJump(oldX, oldY, newX, newY)){	//check if the move is a valid jump
					return true;
				}
				//test if the move is valid for a player 2 piece (can move one square diagonally down as long as it is unoccupied
				if((newX == oldX + 1 || newX == oldX - 1) && (newY == oldY + 1) ){
					if(newBoard[newY][newX].IsAvail()){	//test if the space is unoccupied - valid move
						return true;
					}
					else{	//if the space is occupied - invalid move
						return false;
					}
				}
				else{	//invalid move
					return false;
				}
			}
		}
		else{	//if the piece is a king belonging to either player 
			if(CanJump(oldX, oldY, newX, newY)){	//check if the move is a valid jump
				return true;
			}
			//test if the move is valid for a king belonging to either player
			//((can move one space diagonally in any direction as long as it is unoccupied)
			if((newX == oldX + 1 || newX == oldX - 1) && (newY == oldY + 1 || newY == oldY - 1)){
				if(newBoard[newY][newX].IsAvail()){	//if the space is unoccupied - vali move
					return true;
				}
				else{	//if the space is occupied - invalid move
					return false;
				}
			}
			else{	//invalid move
				return false;
			}
		}
		return false;	//invalid move
	}