- if (moveAnimation && !moveAnimation->Finished()) return;
- if (targetAnimation && !targetAnimation->Finished()) return;
- if (moveAnimation || targetAnimation) {
- moveAnimation = 0;
- targetAnimation = 0;
+ if (moveAnimation.Valid() && !moveAnimation.Finished()) return;
+ if (targetAnimation.Valid() && !targetAnimation.Finished()) return;
+ if (moveAnimation.Valid() || targetAnimation.Valid()) {
+ moveAnimation.Clear();
+ targetAnimation.Clear();