Pause and Resume tweens Feature Request

Hello @slackmoehrle,

Most of the web engines out there give options to pause and resume their tweens. I don’t see that option in Cocos Creator.
When can we expect that feature?
Or is there a way already to pause other than to stop the tween?

Similar to the way we have Tween.stopAll() can a Tween.pauseAll() and Tween.resumeAll() be added.

This helps in pausing and resuming the game very easily.

Please help me out in this regard

1 Like

Sure. Let me ask engineering to have a look.

1 Like

Maybe you need this:

cc.game.pause();
cc.game.resume();
or
cc.director.pause(); cc.director.resume();
cc.director.startAnimation(); cc.director.stopAnimation();

@Koei,
This is not really it.
game.pause() and director.pause() will disable the UI. Thus making it impossible to resume the game using UI.

cc.director.startAnimation(); cc.director.stopAnimation();

I’m using v3.2.0 and I don’t find these methods.

@slackmoehrle, I request this feature because. The game logic can be paused using flags on the update method, but tweens on the other hand cannot be.

It’s very tricky and unpleasant to recreate tween like functionality in the update method. Hence it would be much appreciated to have a pause and resume functionality for the tweens.

Phaser3 really has a robust tween system which allows for this.
I know the alternative is to use AnimationClip, but they are not required in most cases for 2d game dev.

So please have your team look into this

1 Like
  • it is necessary feature

@slackmoehrle,

Can you please let us out here

I can ask engineering to have a look.

like this?
NewProject_22.zip (11.0 KB)

@Koei,

Thanks! This works. But I see that you are using ActionManager. Won’t it be deprecated in the future.

For quick reference: The methods used to achieve pause and resume functionality using ActionManager

    pauseAll(){
        this.pausedNodesArr = TweenSystem.instance.ActionManager.pauseAllRunningActions();
        // TweenSystem.instance.ActionManager.pauseTargets(nodearray);
    }
    resumeAll(){
        TweenSystem.instance.ActionManager.resumeTargets(this.pausedNodesArr);
    }
    pauseTarget(node:Node|null){
        TweenSystem.instance.ActionManager.pauseTarget(node as Node);
    }
    resumeTarget(node:Node|null){
        TweenSystem.instance.ActionManager.resumeTarget(node as Node);
    }

Also a resumeAllPausedActions method would make things simple


It can also be changed to this.
There are no plans to remove ActionManager.

1 Like

@Koei,

A great deal of thanks my friend.
Good to know that ActionManager is here to stay.
Helps the newbies trying out Cocos Creator

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.