### Godot version

v4.1.dev.custom_build.a7276f1ce

### System information

Win10, AMD 2600, GeForce GTX 1060, Vulkan API 1.3.205

### Issue description

I can't get correct color data from an array of source_color type.
The color data is saved as **Color** in the file:
`shader_parameter/palette = [Color (1, 0, 0, 1), Color (0, 1, 0, 1), Color (0, 0, 1, 1)]`
Shouldn't it be saved as PackedColorArray?


### Steps to reproduce

1.Declare an array of source_color type.
2.Set colors.

### Minimal reproduction project

[shadertest.zip](https://github.com/godotengine/godot/files/11246504/shadertest.zip)

switch (p_what) {
		case Node3D::NOTIFICATION_ENTER_TREE: {
			add_to_group(SceneStringNames::get_singleton()->shader_overrides_group);
			_activate();
		} break;
		case Node3D::NOTIFICATION_EXIT_TREE: {
			if (active) {
				
				for (const KeyValue<StringName, Override> &E : overrides) {
					const Override *o = &E.value;
					if (o->in_use) {
						RS::get_singleton()->global_shader_parameter_set_override(E.key, Variant());
					}
				}
			}
			remove_from_group(SceneStringNames::get_singleton()->shader_overrides_group_active);
			remove_from_group(SceneStringNames::get_singleton()->shader_overrides_group);
			get_tree()->call_group_flags(SceneTree::GROUP_CALL_DEFERRED, SceneStringNames::get_singleton()->shader_overrides_group, "_activate"); 
			active = false;
		} break;
	}
}
PackedStringArray ShaderGlobalsOverride::get_configuration_warnings() const {