public override void ExitState()
 {
     Debug.Log("Exit State: ColorState");
     if (_characterAnimator != null)
     {
         _characterAnimator.ChangeColor(false);
     }
 }
 //Methods
 public override void InitState <T>(T param)
 {
     Debug.Log("Init State: Color  State");
     _characterAnimator = param as CharacterAnimator;
     if (_characterAnimator != null)
     {
         _characterAnimator.ChangeColor(true);
     }
 }
 //Methods
 public override void InitState <T>(T param)
 {
     Debug.Log("Init State: IdleState");
     _characterAnimator = param as CharacterAnimator;
     if (_characterAnimator != null)
     {
         _characterAnimator.ChangeScale(false);
         _characterAnimator.ChangeColor(false);
     }
 }