How to implement pause/resume in cocos2d game?

Forrest picture Forrest · Jun 21, 2010 · Viewed 9.5k times · Source

My question is to look for design solution for pause/resume states (including all data info, which need save ) during cocos2d game.

Including following cases, but not limited:

1). User choose quit, then pop out one dialog for user to choose " quit directly", " pause " ;

2). Someone call in , pop out dialog for user to choose "quit " or " pause " game.

If choose "pause", everything which deserve saving, should be saved. Just like PC games do.

I know Director provides "pause" , "resume " , is that okay for this task ?

Thanks for anyone clues or comments.

Welcome for further discussing via email : [email protected]

Answer

Mark7777G picture Mark7777G · Nov 21, 2010

Here is a good example:

To pause:

- (void) applicationDidEnterBackground:(UIApplication *)application
{
    [[CCDirector sharedDirector] stopAnimation];
    [[CCDirector sharedDirector] pause];
}
- (void)applicationWillResignActive:(UIApplication *)application
{
    [[CCDirector sharedDirector] stopAnimation];
    [[CCDirector sharedDirector] pause];
}

When resuming:

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    [[CCDirector sharedDirector] stopAnimation]; // call this to make sure you don't start a second display link!
    [[CCDirector sharedDirector] resume];
    [[CCDirector sharedDirector] startAnimation];
}