Book Image

GameMaker Cookbook

Book Image

GameMaker Cookbook

Overview of this book

GameMaker: Studio started off as a tool capable of creating simple games using a drag-and-drop interface. Since then, it has grown to become a powerful instrument to make release-ready games for PC, Mac, mobile devices, and even current-gen consoles. GameMaker is designed to allow its users to develop games without having to learn any of the complex programming languages such as C++ or Java. It also allows redistribution across multiple platforms. This book teaches you to harness GameMaker: Studio’s full potential and take your game development to new heights. It begins by covering the basics and lays a solid foundation for advanced GameMaker concepts. Moving on, it covers topics such as controls, physics, and advanced movement, employing a strategic approach to the learning curve. The book concludes by providing insights into complex concepts such as the GUI, menus, save system, lighting, particles, and VFX. By the end of the book, you will be able to design games using GameMaker: Studio and implement the same techniques in other games you intend to design.
Table of Contents (17 chapters)
GameMaker Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Using slow motion


John Woo had it right: slow motion makes things look way cooler. Well, as far as action goes, anyway. How many games since the late 90s have made use of slow motion in one way or another? It often comes in the form of some kind of power up or usage meter, but it's there and it's a lot of fun. Do you want to add slow motion to your game? Let's take a look at one way in which you can accomplish this using GameMaker.

Getting ready

To make things simpler, we'll continue to use the project file from the two previous recipes. In addition to this, who doesn't want to see explosions in slow motion? You won't need to create any new objects here, but we'll be working with obj_control.

How to do it...

  1. In the Create event of obj_control, add the following code:

    globalvar timeSpeed;
    globalvar slowMo;
    slowMo = false;
    timeSpeed = 1;
  2. In the Step event, add the following code before the first line of code:

    room_speed = round(60*timeSpeed);
  3. In the same code block, add the following code after the...