Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Learning Java by Building Android Games - Third Edition

You're reading from  Learning Java by Building Android Games - Third Edition

Product type Book
Published in Mar 2021
Publisher Packt
ISBN-13 9781800565869
Pages 686 pages
Edition 3rd Edition
Languages
Author (1):
John Horton John Horton
Profile icon John Horton

Table of Contents (24) Chapters

Preface 1. Chapter 1: Java, Android, and Game Development 2. Chapter 2: Java – First Contact 3. Chapter 3: Variables, Operators, and Expressions 4. Chapter 4: Structuring Code with Java Methods 5. Chapter 5: The Android Canvas Class – Drawing to the Screen 6. Chapter 6: Repeating Blocks of Code with Loops 7. Chapter 7: Making Decisions with Java If, Else, and Switch 8. Chapter 8: Object-Oriented Programming 9. Chapter 9: The Game Engine, Threads, and the Game Loop 10. Chapter 10: Coding the Bat and Ball 11. Chapter 11: Collisions, Sound Effects, and Supporting Different Versions of Android 12. Chapter 12: Handling Lots of Data with Arrays 13. Chapter 13: Bitmap Graphics and Measuring Time 14. Chapter 14: Java Collections, the Stack, the Heap, and the Garbage Collector 15. Chapter 15: Android Localization – Hola! 16. Chapter 16: Collections and Enumerations 17. Chapter 17: Manipulating Bitmaps and Coding the Snake Class 18. Chapter 18: Introduction to Design Patterns and Much More! 19. Chapter 19: Listening with the Observer Pattern, Multitouch, and Building a Particle System 20. Chapter 20: More Patterns, a Scrolling Background, and Building the Player's Ship 21. Chapter 21: Completing the Scrolling Shooter Game 22. Chapter 22: What Next? 23. Other Books You May Enjoy

Building a sound engine

This is a bit different from how we have previously handled the sound but still should seem familiar. We will be writing code that prepares a SoundPool instance and plays some sound. It will be nearly identical to the sound code we have written in the other projects with the exception that there will be a method that plays each sound effect.

This means that any part of our code that has an instance of SoundEngine will be able to play whatever sound effect it needs, yet at the same time, all the sound code will be encapsulated.

Important note

We have already seen in the GameState class that the loseLife method receives an instance of SoundEngine and calls the playPlayerExplode method.

Adding the sound files to the project

Before we get to the code, let's add the actual sound files to the project. You can find all the files in the assets folder of the Chapter 18 folder on the GitHub repo. Copy the entire assets folder, then using your operating...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime}