Merge pull request #77500 from KoBeWi/pretty_funny_bug_if_you_ask_me

Fix AnimationPlayer cumulative `speed_scale`
This commit is contained in:
Rémi Verschelde 2023-05-26 11:02:06 +02:00
commit c9241e31da
No known key found for this signature in database
GPG key ID: C3336907360768E1

View file

@ -1766,7 +1766,7 @@ void AnimationPlayer::set_current_animation(const String &p_anim) {
} else if (!is_playing()) {
play(p_anim);
} else if (playback.assigned != p_anim) {
float speed = get_playing_speed();
float speed = playback.current.speed_scale;
play(p_anim, -1.0, speed, signbit(speed));
} else {
// Same animation, do not replay from start
@ -1779,7 +1779,7 @@ String AnimationPlayer::get_current_animation() const {
void AnimationPlayer::set_assigned_animation(const String &p_anim) {
if (is_playing()) {
float speed = get_playing_speed();
float speed = playback.current.speed_scale;
play(p_anim, -1.0, speed, signbit(speed));
} else {
ERR_FAIL_COND_MSG(!animation_set.has(p_anim), vformat("Animation not found: %s.", p_anim));