### Godot version

v4.2.rc.custom_build [d6a1db2b0]

### System information

Godot v4.2.rc (d6a1db2b0) - Windows 10.0.22621 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3090 Ti (NVIDIA; 31.0.15.4592) - AMD Ryzen 9 7950X 16-Core Processor (32 Threads)

### Issue description

`AnimatedValuesBackup::get_data()` can crash as the internal data map can have nullptr values if any of the tracks were METHOD or ANIMATION types, as `AnimatedValuesBackup::get_cache_copy()` defines that these types of tracks do not get valid copies.

The resulting crash is therefore a null pointer exception.

### Steps to reproduce

1. Open a project with these type of animation tracks.
2. Save the project.

### Minimal reproduction project

https://github.com/godotengine/godot-demo-projects/tree/master/3d/platformer
ERR_PRINT("Animation corrupted (invalid track type).");
						continue;
					}
				}
				track_cache[path] = track;
			} else if (track_cache_type == Animation::TYPE_POSITION_3D) {
				TrackCacheTransform *track_xform = static_cast<TrackCacheTransform *>(track);
				if (track->setup_pass != setup_pass) {
					track_xform->loc_used = false;
					track_xform->rot_used = false;
					track_xform->scale_used = false;
				}
				switch (track_type) {
					case Animation::TYPE_POSITION_3D: {
						track_xform->loc_used = true;
					} break;
					case Animation::TYPE_ROTATION_3D: {
						track_xform->rot_used = true;
					} break;
					case Animation::TYPE_SCALE_3D: {
						track_xform->scale_used = true;
					} break;
					default: {
					}
				}
			} else if (track_cache_type == Animation::TYPE_VALUE) {
				
				TrackCacheValue *track_value = static_cast<TrackCacheValue *>(track);
				bool was_continuous = track_value->is_continuous;
				bool was_using_angle = track_value->is_using_angle;