Skip to content

Fix and make Tween node less confusing

Răzvan C. Rădulescu requested to merge github/fork/razcore-art/fix-tween into master

I've made the following changes:

  • make is_active the main way of keeping track of tween processing/activity, meaning that is_active will now return false if all tween actions have finished or if it isn't started or if it was stopped via set_active(false) or any other mode
  • removed is_stopped because is redundant now
  • tell() now reports correct values

The above meant that we don't have to keep track of yet another variable available since everything is based on *processing_internal so I removed it, likewise it's own local processing variable was removed, as well as the "double" _set_process which it feels more like a hack.

What wasn't changed: - tell() still returns max value (i.e. == get_runtime() when all tweens finish)

More testing is needed. So far I've tested repeat on/off, delay, is_active() working corretly, set_active(true), set_active(false), but probably more tests are necessary, all the resets, stops, resume etc.

Bugsquad edit: fixes #19779 (closed)

Merge request reports