### Godot version

4.1 RC3

### System information

Windows 11 AMD Ryzen 5950x

### Issue description

Actually should be pretty simple, as of commit: https://github.com/godotengine/godot/commit/1c93606e470f0cad5f14af104ccb89a95a89931c

SurfaceTool's add_triangle_fan() maps its parameters like so:
`add_triangle_fan(p_vertices, p_uv2s, p_colors, p_uv2s, p_normals, Variant(p_tangents));`

As you can see its using **p_uv2s** as the 2nd _and_ 4th parameters, and isn't using **p_uvs** at all which ought to be the 2nd parameter. The 2nd parameter at the moment does nothing at all.

As a result I had to change my code from:
`surface_tool.add_triangle_fan(vertices, [uvs[0], uvs[1], uvs[2], uvs[1], uvs[3], uvs[2]])`
To:
`surface_tool.add_triangle_fan(vertices, [], [], [uvs[0], uvs[1], uvs[2], uvs[1], uvs[3], uvs[2]])`

### Steps to reproduce

Use add_triangle_fan and place your UVs as the 2nd parameter, your mesh will be black. When you change your uvs to the 4th parameter, it correctly maps.

### Minimal reproduction project

Should be trivial to reproduce (and to see why it's broken in this commit)
lformat |= RS::ARRAY_FORMAT_COLOR;
	}
	if (uvarr.size()) {
		lformat |= RS::ARRAY_FORMAT_TEX_UV;
	}
	if (uv2arr.size()) {
		lformat |= RS::ARRAY_FORMAT_TEX_UV2;
	}
	int wcount = 0;
	if (barr.size() && warr.size()) {
		lformat |= RS::ARRAY_FORMAT_BONES;
		lformat |= RS::ARRAY_FORMAT_WEIGHTS;
		wcount = barr.size() / varr.size();
		if (wcount == 8) {
			lformat |= RS::ARRAY_FLAG_USE_8_BONE_WEIGHTS;
		}
	}
	if (warr.size()) {
		lformat |= RS::ARRAY_FORMAT_WEIGHTS;
	}
	for (int i = 0; i < RS::ARRAY_CUSTOM_COUNT; i++) {
		ERR_CONTINUE_MSG(p_arrays[RS::ARRAY_CUSTOM0 + i].get_type() == Variant::PACKED_BYTE_ARRAY, "Extracting Byte/Half formats is not supported");
		if (p_arrays[RS::ARRAY_CUSTOM0 + i].get_type() == Variant::PACKED_FLOAT32_ARRAY) {
			lformat |= custom_mask[i];
			custom_float[i] = p_arrays[RS::ARRAY_CUSTOM0 + i];
			int fmt = custom_float[i].size() / varr.size();
			if (fmt == 1) {
				lformat |= CUSTOM_R_FLOAT << custom_shift[i];
			} else if (fmt == 2) {
				lformat |= CUSTOM_RG_FLOAT << custom_shift[i];