A simple but effective pause engine, which integrates easily into any game.
Features: - Works for both 2D and 3D games. - Works both with and without the application surface. - Works with any number of views - also works without views. - Works with different window scales (black bars are not a problem). - Deactivated objects stay deactivated after un-pausing. - Works with backgrounds - both moving, tiled and foregrounds! - Works when using the GUI draw events just as well. - Easy to customize.
How does it work? Simply call the script game_pause() and the script will create a pause object, which will handle the rest!
The engine works by deactivating all instances, like many pause systems do - but usually these will just activate ALL objects again after the pause event (which we do not want). Rarely they will leave the deactivated ones be - but this engine does!
Any objects created after triggering the pause will automatically be deleted after the pause ends, so you can create a couple of objects with the pause screen to make a custom pause menu. Super easy stuff!