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

Utilizing analogue joystick acceleration


Anyone who's used a modern gamepad controller knows that most games incorporate the joysticks for camera control and player movement, the latter being more common. Given this fact, it would be helpful to know how this works with GameMaker. Now, this can be handled by allowing GameMaker to check, in absolutes, whether one of the sticks is moving in a specific direction. This is fine for menus and the like, but what if you want to handle acceleration? Let's take a look at this.

Getting ready

Of course, you'll need to have at least one gamepad connected to your PC. It's not necessary to have the face buttons mapped, as seen in the previous recipe. You'll also need an object with a sprite to move with the gamepad, but this can simply be a box or any other sprite you have.

How to do it...

  1. In your object, add a Create event to a code block.

  2. In the code block, add the following code:

    ///set variables
    max_spd = 12;
  3. Now, add a Step event and drag a code block to...