I have decided a while ago to build my own framework which fits my needs for my mobile development. For that I wanted to implement all important features for a mobile game like ads, touch, GooglePlayServices, etc. which helped me with the implementation without writing the code again and again.
First of all I started to think about the important stuff I needed the most.
So I started to write my own namespace called "cSystem". This namespace includes other namespaces. Here you can see all current namespaces:
1. TouchInput class
So first of all I applied a new TouchInput System into the cSystem namespace because I wanted to use the Touch call as fast as possible. I created a new class called "TouchInput" with a bool which returns true if a specific touch is called.
This allows me to call fast and easy the TouchInput and I didn't have to code the Input again and again for every game. I only have to call TouchInput.GetTouch() to get my touch input.
2. PlayServices class
My second step was to engage the GooglePlayServices. Here I always need to implement online highscore tables and achievements. iOS Services (Game Center) will follow in future. With this namespace I am able to call simply the functions which do the work for me. So if I want to post a score to the online highscores then I only have to call the implemented class "PlayServices" with the function "PostScore()".
3. Ads class
To use ad systems like admob as easy and as fast as possible I applied the class "Ads" into the namespace cSystem.Ads. The reason why I did this was because it was always a lot of work to implement admobs codes. I build an Editor where I am able to easily implement all ad ids and do fast changes if needed.
Furthermore this class allows me to controle simply my ad system with this functions:
4. Animation class
I'm a fan of smooth and fancy UI animation and this was the reason to build my own Animator Component for UI Elements. This UIAnimator works with the function from the cSystem.Animation namespace. This namespace has a class which called "Animf". Here I wrote some functions for fast animation process. Currently I build four different animation types which you can change fast in the component.
Additionally it allows you to decide if the animation should be awake or in sleep mode on start. If you change the animation type the component appears dynamically values for each animation type where you can customize it.
But if the current animation types are not fitting our needs we can use easily the function behind that animations. We have to implement only the cSystem.Animation namspace which provides us the "Animf" class. With this class we can call these functions:
This is the result we create our own UI animation with the Animf class:
5. Social and cNet class
The Social class allows you to call your facebook page or other social media accounts easily via Social.OpenFacebook(). Currently there is not more but I want to implement more to do my development faster in the future. Similar to the Social class the cNet class has only one function which checks the internet connection. There is more to come in the future.