Battle Scene
Generally, there have to be a couple of components which function is to create,
        register, and update different types of controllers and providers.The first one is the GameController that is
        responsible for loading scenes and creating the Player’s and Opponent’s energy controllers.
        The next one is the BattleController; 90% of actions are concentrated here. It is responsible for creating the
        majority of controllers and providers, updating their frames, setting their dependencies.
        After a character is created, the BattleController is notified, and it sets all dependencies of this character
        to the appropriate controller or provider.