O'Reilly logo

Haxe Game Development Essentials by Jeremy McCurdy

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Building the sound manager class

Now we're going to build the class we'll use to handle playback of all music and sound effects. This will keep the playback functionality centralized, which will be useful since so many things in the game need to play sounds.

To help with this, the class will implement the singleton pattern so that the class instance will be accessible everywhere.

Creating the class

To start, make a new class in the audio folder named SoundManager. The class doesn't extend anything.

Here's what it should look like to start:

package audio;


class SoundManager
{
  public function new() 
  {
  }
}

Adding imports

Next, let's add the imports:

import flixel.FlxG;
import flixel.system.FlxSound;
import flixel.tweens.FlxTween;

The only new class to note ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required