summaryrefslogtreecommitdiff
path: root/scene
diff options
context:
space:
mode:
authorMax Hilbrunner <mhilbrunner@users.noreply.github.com>2018-05-25 16:17:55 +0200
committerGitHub <noreply@github.com>2018-05-25 16:17:55 +0200
commit47cfdfe2ee14418439afaf08644a194e8cf4193a (patch)
tree7d57ee7ba7373b287c65df3d3c7ae00dc0622383 /scene
parentc7ccb8abe1362a388b5f04c2c1aaad0f8b3115e3 (diff)
parentc518b96362f5a92a31b9b993f6f31cff3d397d2d (diff)
Merge pull request #19120 from Keetz/master
Take tween speed into account when calculating runtime
Diffstat (limited to 'scene')
-rw-r--r--scene/animation/tween.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/scene/animation/tween.cpp b/scene/animation/tween.cpp
index 49013b160a..4eefcc9ced 100644
--- a/scene/animation/tween.cpp
+++ b/scene/animation/tween.cpp
@@ -886,6 +886,10 @@ real_t Tween::tell() const {
real_t Tween::get_runtime() const {
+ if (speed_scale == 0) {
+ return INFINITY;
+ }
+
pending_update++;
real_t runtime = 0;
for (const List<InterpolateData>::Element *E = interpolates.front(); E; E = E->next()) {
@@ -896,7 +900,8 @@ real_t Tween::get_runtime() const {
runtime = t;
}
pending_update--;
- return runtime;
+
+ return runtime / speed_scale;
}
bool Tween::_calc_delta_val(const Variant &p_initial_val, const Variant &p_final_val, Variant &p_delta_val) {