Fix initial value with delay in PropertyTweener

This commit is contained in:
kobewi 2023-08-17 10:28:26 +02:00
parent a278c1b98a
commit 1660575bd8

View File

@ -546,8 +546,9 @@ void PropertyTweener::start() {
return;
}
if (do_continue) {
if (do_continue && Math::is_zero_approx(delay)) {
initial_val = target_instance->get_indexed(property);
do_continue = false;
}
if (relative) {
@ -572,6 +573,10 @@ bool PropertyTweener::step(double &r_delta) {
if (elapsed_time < delay) {
r_delta = 0;
return true;
} else if (do_continue && !Math::is_zero_approx(delay)) {
initial_val = target_instance->get_indexed(property);
delta_val = Animation::subtract_variant(final_val, initial_val);
do_continue = false;
}
double time = MIN(elapsed_time - delay, duration);