### 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)

double delta = p_delta * speed_scale * cd.speed_scale;
	double next_pos = cd.pos + delta;
	bool backwards = signbit(delta); 
	real_t len = cd.from->animation->get_length();
	Animation::LoopedFlag looped_flag = Animation::LOOPED_FLAG_NONE;
	switch (cd.from->animation->get_loop_mode()) {
		case Animation::LOOP_NONE: {
			if (next_pos < 0) {
				next_pos = 0;
			} else if (next_pos > len) {
				next_pos = len;
			}
			delta = next_pos - cd.pos; 
		} break;
		case Animation::LOOP_LINEAR: {
			if (next_pos < 0 && cd.pos >= 0) {
				looped_flag = Animation::LOOPED_FLAG_START;
			}
			if (next_pos > len && cd.pos <= len) {
				looped_flag = Animation::LOOPED_FLAG_END;
			}
			next_pos = Math::fposmod(next_pos, (double)len);
		} break;
		case Animation::LOOP_PINGPONG: {
			if (next_pos < 0 && cd.pos >= 0) {
				cd.speed_scale *= -1.0;
				looped_flag = Animation::LOOPED_FLAG_START;
			}
			if (next_pos > len && cd.pos <= len) {