### Godot version

4.2 1ba920f

### System information

Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1060 (NVIDIA; 30.0.15.1403) - Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz (8 Threads)

### Issue description

```GDScript
func _ready() -> void:
	$AnimationPlayer.play("new_animation")
	$AnimationPlayer.advance(0)
```
The animation has a single track with Update Mode set to discrete. It does not play, no matter the argument used.
Removing `advance()` will make it play.

Works correctly in rc1.

### Steps to reproduce

1. Run MRP on master
2. Run MRP in 4.2 rc1

### Minimal reproduction project

[brokedvance.zip](https://github.com/godotengine/godot/files/13460977/brokedvance.zip)

void clear_queue();
	void pause();
	void stop(bool p_keep_state = false);
	bool is_playing() const;
	String get_current_animation() const;
	void set_current_animation(const String &p_animation);
	String get_assigned_animation() const;
	void set_assigned_animation(const String &p_animation);
	bool is_valid() const;
	void set_speed_scale(float p_speed);
	float get_speed_scale() const;
	float get_playing_speed() const;
	void set_autoplay(const String &p_name);
	String get_autoplay() const;
	void set_movie_quit_on_finish_enabled(bool p_enabled);
	bool is_movie_quit_on_finish_enabled() const;
	void seek(double p_time, bool p_update = false, bool p_update_only = false);
	double get_current_animation_position() const;
	double get_current_animation_length() const;
	void get_argument_options(const StringName &p_function, int p_idx, List<String> *r_options) const override;
	virtual void advance(double p_time) override;
	AnimationPlayer();
	~AnimationPlayer();
};
#ifndef DISABLE_DEPRECATED
VARIANT_ENUM_CAST(AnimationPlayer::AnimationProcessCallback);
VARIANT_ENUM_CAST(AnimationPlayer::AnimationMethodCallMode);
#endif 
#endif