Gore Core is a shoot em up game inspired by the game ALLTYNEX second. It was created in 9 weeks using The Game Assemblies in house 2D engine
I was tasked with implementing the second boss of the game. The encounter consists of 3 phases.
During the fight smaller enemies will spawn repeatedly.
In the first phase the boss will charge up a large projectile attack and release it before teleporting to a new position and repeat the same attack. After taking x amount of damage the boss will enter its next phase.
During the second phase the boss will teleport to the center position and start firing in a cone pattern towards it front. The boss is immune to ranged damage during this phase so the player has to close in and attack one of mandibles on the boss. When one of these are destroyed the boss will return to phase one. When both mandibles are destroyed the boss enters the final phase
The final phase is similar to the second one but he is no longer immune to ranged damage.
The engine we used had functionality for audio but I had to create a wrapper to make it more useable. The system I created cached all the sound data on startup and placed them in different vectors depending on what kind of audio it was i.e SFX, Music, UI.
When the user wants to play a sound they call the Play function and send in an enum to describe which audio they want to play, if it shall loop and the volume. As im writing this I wish I knew what a map was when I wrote that piece of code. All the audio data pointers had to be in a specific order to link them with the enums.