### Godot version

4.0.beta13

### System information

Windows 10

### Issue description

When you call the `seek()` function without a current animation it outputs `Condition "!playback.current.from" is true.` to the debugger.

I was getting the error above whenever I would call `stop()` on an AnimationPlayer when it didn't have a playing animation. I realized that `stop()` also calls the `seek()` function.

I would expect the `seek()` and `stop()` functions to just do nothing, instead of throwing errors, if there isn't a current animation, or at least show an error that says that there is no animation to seek/stop.

This is the same issue that was described here: [#6122](https://github.com/godotengine/godot/issues/6122)

### Steps to reproduce

- Create an AnimationPlayer node.
- Don't have it play any animations.
- Call the `seek()` function.

### Minimal reproduction project

[seek_issue.zip](https://github.com/godotengine/godot/files/10442071/seek_issue.zip)

_clear_audio_streams();
	_stop_playing_caches(p_reset);
	Playback &c = playback;
	c.blend.clear();
	if (p_reset) {
		if (p_keep_state) {
			c.current.pos = 0;
		} else {
			is_stopping = true;
			seek(0, true);
			is_stopping = false;
		}
		c.current.from = nullptr;
		c.current.speed_scale = 1;
	}
	_set_process(false);
	queued.clear();
	playing = false;
}
void AnimationPlayer::animation_set_next(const StringName &p_animation, const StringName &p_next) {
	ERR_FAIL_COND_MSG(!animation_set.has(p_animation), vformat("Animation not found: %s.", p_animation));
	animation_set[p_animation].next = p_next;
}
StringName AnimationPlayer::animation_get_next(const StringName &p_animation) const {
	if (!animation_set.has(p_animation)) {
		return StringName();
	}
	return animation_set[p_animation].next;
}
void AnimationPlayer::set_default_blend_time(double p_default) {