public void SetAnimation(AniSwitch parameter)
 {
     if (this.gameObject.activeInHierarchy && _animStateMachines != null && _animator != null)
     {
         StartCoroutine(SetAnimationThread(parameter));
     }
 }
 public override void Enter(AniSwitch parameter)
 {
     _fireActivity   = 0;
     _weaponActivity = 0;
     _switchActivity = 0;
     _animator.SetInteger("state", 80 + parameter._parameter);
 }
 IEnumerator SetAnimationThread(AniSwitch parameter)
 {
     _timeCountForNewAni = 0;
     _isWaitingForPlay   = true;
     while (_animator.IsInTransition(0))
     {
         yield return(null);
     }
     _isWaitingForPlay = false;
     _animStateMachines[(int)parameter._type].Enter(parameter);
     _currentAnimStateMachine = parameter._type;
     _resetStateCounter       = FCConst.MAX_BLEND_FRAMECOUNT;
     _preAniPlayTime          = 0;
     _preAniOverCount         = 0;
     //_showAnimationIdx = false;
 }
 public virtual void Enter(AniSwitch parameter)
 {
 }
 public override void Enter(AniSwitch parameter)
 {
     _animator.SetInteger("state", 10 + parameter._parameter);
 }