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

Adjusting the listener orientation


Let's say you're making a top-down shooter and you want the player to really get into the role of the characters they're controlling. You would want them to experience the environment in the same way and this includes the sounds he/she will hear. Since we already have our emitter and listener, let's take a look at how we can affect the audio based on the orientation of the player (the listener).

Getting ready

You can use the code and setup from the previous recipe; we're just going to adjust some of the code here and there.

How to do it

  1. Open obj_player and delete the Create event.

  2. In the Step event, add the following code to the bottom of your code block:

    image_angle = point_direction(x, y, mouse_x, mouse_y);
    audio_listener_orientation(lengthdir_x(1, image_angle), lengthdir_y(1, image_angle), 5, 0, 0, -1);

Once this is done you can test the new code. Move the player around the room but move the mouse as well. The player will rotate around based on the mouse's...