Made in Android Studio


TriqShot is a 2D Mobile Puzzle game. There are a variety of levels to unlock.
In each level the player has to throw a ball in the basket within an amount of tries in order to win each level.


I was in charge of all the audio and programming through this project.

I programmed:
-The Scene Handler (with Input, Visuals and Audio Integration)
-The Button classes (with Input, Visuals and Audio Integration)
-The Graphics Support (with Input, Visuals and Audio Integration)
-The Physics Calculator
-The Audio Controller

Scene Handler

Code Explaination:

The Scene Handler takes care of which scene has to be shown. The Scene Handler passes on the fundamental components necessary for each scene, like the graphics controller, audio support and input controller.

The Scene Handler also takes care of the external program environments, for example when the app has been closed or paused.

This piece of code also makes it possible to switch scenes by changing the focus. Which will be very useful for buttons and such.

Advanced Button Programming

Code Explaination:

The Buttons class makes it possible to easily create buttons through programming. It saves its size, position and image, which later on can be edited in runtime. Therefor it's also possible to have animated buttons.
The Buttons class has its own draw function, which can be called from out the scene.
The Buttons class is also able to return an indicator if it has been pressed or not through the input controller.

The LevelButton class is an extention of Buttons. More classes can be extended from Buttons in order to create more advanced buttons.

Graphics Programming (Animations)

Code Explaination:

The ImageObject class is programmed to view images on the application, which can be altered by size and position through programming.

The FrameObject class is an extention of the ImageObject class. The FrameObject class makes it possible to have animations in the application.

With the AddFrame() and SetCurrentFrame() functions it is possible to create extra frames or set a desired frame on the screen.

Audio Programming

Code Explaination:

The AudioManager manages all the background music of the app.
Through programming the audio can be paused, resumed and altered if desired.

The AudioManager runs on its own Thread to prevend audio lagg buggs.